Skip to main content
All CollectionsIntegration
JSON-LD and Its Importance for E-commerce SEO
JSON-LD and Its Importance for E-commerce SEO

Learn how Discount Ninja communicates offers to Google and other parties that crawl your shop

Bart C avatar
Written by Bart C
Updated over a week ago

Understanding JSON-LD and Its Importance for E-commerce SEO

JSON-LD (JavaScript Object Notation for Linked Data) is a lightweight format used to structure data in a way that is easily understandable by search engines. For e-commerce stores, JSON-LD is a critical component of their SEO strategy because it enables search engine crawlers to identify and display structured data, such as product information and offers, in search results. This rich, structured data can significantly enhance a store's visibility and increase click-through rates by enabling features like rich snippets.

JSON-LD for Product and Offer Data

In the context of e-commerce, JSON-LD is often used to embed structured data following the Schema.org vocabulary. For product pages, this includes details such as:

  • Product name

  • Price

  • Availability

  • Offers (e.g., discounts, special promotions)

By providing search engines with this data in a structured format, merchants can ensure their products and offers appear prominently in search results, enticing potential customers to click through.

Discount Ninja's Role in Rendering JSON-LD

Discount Ninja integrates with JSON-LD by updating the structured data on e-commerce stores to reflect the discounts provided using Discount Ninja offers. Instead of replacing the existing JSON-LD on the page, Discount Ninja merges additional offer-related data into the JSON-LD structure—ensuring the store's SEO foundation remains intact while augmenting it with promotional information managed by the app.

Discount Ninja only updates JSON-LD on product pages. Here’s how Discount Ninja handles this:

  1. Deterministic product discounts only
    Discount Ninja identifies promotional offers that meet the following criteria:

    • Must be a product discount: Order discounts and shipping discounts are not included.

    • Must have an automatic trigger: Only offers that automatically apply without requiring additional customer actions (e.g., entering a promo code or following a discount link) are considered.

    • Cannot have visitor behavior filters: Offers dependent on visitor behavior (e.g., offers triggered only for new customers or based on browsing patterns) are excluded to ensure the data remains universally valid and comprehensible for crawlers.

  2. Filters
    Offers that have Audience, Geo-targeting or Referrer based filters may not be reflected in JSON-LD if the crawler does not meet the requirements to unlock the filters of the promotion.

  3. Merging, not replacing
    The static JSON-LD already present on the store is preserved. Discount Ninja appends the structured offer data, ensuring the original schema remains intact while adding relevant promotional details.

  4. Best offer per variant
    The app evaluates the best offer per variant.

Schema.org properties added

When a qualifying promotion is identified, Discount Ninja dynamically adds the following properties, as documented in the Schema.org Offer specification:

  1. Core offer properties:

    • price: The promotional price of the product.

    • priceCurrency: The currency of the promotional price (e.g., USD, EUR). This is set to the base currency of the store.

    • validThrough: The scheduled end date of the promotion.

    • priceValidUntil: The last date the promotional price is valid. This is the same value as validThrough.

    • eligibleQuantity: The prerequisite number of products that must be added to the cart to be eligible for the offer.

    • eligibleTransactionVolume: The minimum purchase volume required to qualify for the offer.

  2. Tiered promotions with PriceSpecification
    For tiered promotions (e.g., "Buy 1 for $10, buy 3 for $25"), Discount Ninja adds a PriceSpecification object for each tier. This object includes:

    • price: The price for the tier.

    • priceCurrency: The currency of the tier price.

    • eligibleQuantity: The quantity required for the tier.

    • eligibleTransactionVolume: The minimum purchase volume required to qualify for this tier of the offer.

By including this granular data, Discount Ninja ensures that all aspects of tiered promotions are captured accurately and comprehensively in the JSON-LD.

Disable support

The support for JSON-LD can be disabled in the app. This can be done in the Settings > Integrations > Structured data menu:

Benefits of Dynamic JSON-LD Updates with Discount Ninja

  1. Enhanced Search Engine Visibility
    By providing up-to-date and structured information about active promotions, Discount Ninja ensures search engines can index and display your offers prominently in search results.

  2. Improved Accuracy of Rich Snippets
    Promotions are dynamic and frequently change. Discount Ninja ensures that the structured data reflects the latest offers, reducing discrepancies between the website content and search engine results.

  3. Seamless Integration
    Discount Ninja's merging approach preserves the existing JSON-LD structure, maintaining the integrity of the store’s SEO setup while enhancing it with promotional data.

  4. Optimized for E-commerce Needs
    By focusing on product discounts with automatic triggers and excluding visitor behavior filters, Discount Ninja ensures that the JSON-LD data added is relevant, valid, and effective.

Conclusion

JSON-LD is a powerful tool for e-commerce stores looking to maximize their search engine visibility and attract more customers. Discount Ninja enhances this capability by dynamically updating the JSON-LD to reflect the latest offers, ensuring promotions are always represented accurately in search engine results. By merging offer data instead of replacing existing JSON-LD, Discount Ninja provides a seamless and reliable solution tailored to the dynamic nature of e-commerce.

Did this answer your question?