Free Shopify Audit Scan AI, SEO, CRO, and storefront signals before the next build or migration.

Run Free Audit
StoreBuilt Team SEO Jun 2, 2026 Updated Jun 2, 2026 6 min read

Shopify Product JSON-LD Schema Template: Fields, Liquid Variables and Validation

A practical Shopify Product JSON-LD template guide covering Offer fields, Liquid variables, variants, availability, review data, and validation after implementation.

Written by StoreBuilt Team

StoreBuilt ecommerce specialists helping ecommerce teams implement maintainable technical SEO and structured data in Shopify themes.

Reviewed by StoreBuilt SEO Review

Reviewed against Google's Product schema guidance, Shopify Liquid implementation patterns, and StoreBuilt technical SEO QA.

Close-up laptop view representing Shopify Product JSON-LD template implementation.

A Shopify Product JSON-LD template should be boring in the best possible way: predictable, accurate, and easy to validate after every theme change.

What we have seen in StoreBuilt schema audits is this: product structured data usually breaks when a store treats it as a one-time paste rather than a maintained template. Price, currency, image, availability, variant, review, and description fields all depend on real storefront data. If that data moves, the markup has to keep up.

Use the free Shopify schema generator to create a template starting point. If your product pages already output multiple Product entities or inconsistent Offer data, Contact StoreBuilt before adding another snippet.

Table of contents

What Product JSON-LD should represent

Product JSON-LD tells search engines what a product page is about. It should match the visible product page closely.

The page should focus on a specific product or a product variant relationship that can be explained clearly. Google’s Product guidance is especially careful about product pages, offer data, variants, and markup accuracy.

For Shopify teams, the practical rule is this: if a shopper cannot see or experience the data on the page, be cautious about marking it up.

That includes:

  • price
  • availability
  • product name
  • product image
  • SKU
  • brand
  • ratings
  • review count

Structured data should clarify the page, not decorate it.

Core fields for a Shopify product template

Most Shopify Product JSON-LD templates need these core pieces:

Schema fieldShopify source to considerQA question
@type: Productproduct templateis this page a product page?
nameproduct.titledoes it match visible product title?
descriptionproduct description or SEO-safe excerptis it useful and not broken HTML?
imagefeatured image or selected variant imageis the URL valid and current?
brandvendor, metafield, or brand settingis brand naming consistent?
skuselected variant SKUis SKU maintained?
offers.priceselected variant pricedoes it match visible price?
offers.priceCurrencyshop or market currencyis currency correct for the URL?
offers.availabilityselected variant availabilitydoes it update correctly?

The StoreBuilt schema generator provides both static and Liquid-style examples so the team can see how these pieces fit together.

Liquid variables and maintenance risk

Liquid variables make schema maintainable, but they need careful handling.

Watch for:

  • empty fields
  • unescaped text
  • HTML inside descriptions
  • missing images
  • products without SKUs
  • variant data that changes after selection
  • market-specific pricing
  • review app data injected separately

The template should handle missing fields gracefully. A blank SKU may be acceptable if SKU data is not maintained. A broken JSON string caused by unescaped copy is not.

This is why schema work belongs in theme QA, not just content entry.

Variant, price, and availability decisions

Variants create real implementation decisions.

Some stores use one product URL for multiple variants. Some create variant-specific URLs. Some have market-specific pricing or availability. The schema strategy should match the storefront experience.

Ask:

  • which variant is selected by default?
  • does the visible price change by variant?
  • does the JSON-LD update or represent the default variant?
  • do variants have distinct SKUs?
  • are variant images represented correctly?
  • does availability match what shoppers can buy?

For many Shopify themes, a simple Product with Offer for the selected or first available variant is a practical baseline. More complex variant markup may be needed for stores where variant-specific search visibility matters.

Review data and AggregateRating caution

Review data should not be invented, estimated, or hidden.

Add AggregateRating only when:

  • reviews are genuine
  • the rating is visible on the product page
  • review count is accurate
  • the review app or data source is maintained
  • there is no duplicate conflicting review markup

If a review app already outputs review schema, the theme should not blindly add another AggregateRating layer. Duplicate or conflicting schema can make validation harder and reduce trust in the implementation.

For stores with review-app complexity, schema review often overlaps with Apps, Integrations & Automation and Shopify SEO & AI Search Readiness.

StoreBuilt example from a Product schema rebuild

One store had Product JSON-LD in the theme, review markup from an app, and a second Product entity from a legacy SEO snippet. Each layer looked understandable on its own. Together, they created inconsistent signals.

The rebuild started by removing duplication, choosing one Product schema owner, and making Offer fields dynamic from Shopify product data. Review markup stayed with the review system because that was the source of truth.

The final template was less dramatic than the old setup, but it was easier to validate and maintain.

Validation workflow for Shopify teams

Use this workflow after implementation:

  1. Generate or draft the schema.
  2. Add it to a duplicate theme or development branch.
  3. Render a real product page.
  4. Validate the rendered URL.
  5. Compare markup with visible page content.
  6. Test products with different prices, stock states, images, and missing fields.
  7. Check whether apps add duplicate markup.
  8. Document ownership.

Do not validate only the code snippet before Liquid renders. The live page is what matters.

Product schema QA table

Test productWhy test it
standard in-stock productconfirms baseline schema
out-of-stock producttests availability
discounted productchecks price output
multi-variant productchecks selected variant logic
product without SKUchecks graceful fallback
product with reviewschecks rating ownership
product without reviewsprevents fake rating markup

This mix catches issues that one perfect sample product will miss.

Final StoreBuilt point of view

Product JSON-LD is not a trophy snippet. It is part of the product template.

StoreBuilt’s view is that Shopify schema should be owned like any other technical component. Use a generator to understand the structure, but implement with real product data, test edge cases, and keep the markup aligned with the shopper-facing page.

For help turning a generated snippet into a maintainable theme pattern, use the free schema generator, then Contact StoreBuilt.

StoreBuilt perspective

This article is part of a wider Shopify agency content system built around commercial next steps.
LondonShopify agency
11service areas
150+ecommerce projects
5.0client feedback

Commercial next steps

Connect this Shopify guide to a StoreBuilt service route.

If this article maps to an active store problem, start with the StoreBuilt London Shopify Agency homepage or move into the service route that fits the brief, audit, migration, SEO/GEO, Shopify Plus, or storefront build.

Keep exploring

Follow the next route that fits this topic.

Continue into a closely related Shopify guide or move straight to the service page that matches the problem this article is addressing.

Ready to build your next Shopify success?

Want StoreBuilt to review this problem against your live store?

Share the store URL and the issue you are trying to solve. We will recommend the right Shopify service path.

Contact StoreBuilt
  • Free discovery call
  • Tailored to your store goals
  • No obligation

Free AI Shopify Audit

Get a free Shopify audit focused on the signals AI shoppers and buyers can read.

Share the store URL, the blockers, and what needs attention most. StoreBuilt will review AI-readiness, UX, CRO, merchandising, speed, and retention opportunities before replying.

What you get

A senior review with the priority issues most likely to improve performance.

Best for

Brands planning a redesign, migration, CRO sprint, or retention cleanup.

Reply route

Every request is routed to info@storebuilt.co.uk.

We use these details to review your store and reply with the next best steps.