Review schema markup for Shopify in 2026: complete guide with code

Review schema markup for Shopify with valid JSON-LD code, the 3 schemas you need (Review, AggregateRating, Product), and how to test rich results.

Nicolas Provost, founder of Reviewz.ai

Nicolas Provost

Updated on May 27, 2026·9 min read

Review schema markup for Shopify in 2026: complete guide with code
Quick answer

Three schemas drive review rich results on Shopify: Product (the parent), AggregateRating (the star summary), and Review (the individual review bodies). All three should live inside one JSON-LD block on each product page, nested correctly. Common mistakes that break rich results: invalid AggregateRating with zero reviewCount, mismatched visible reviews, missing required Product properties (name, image, offers). Test every product page with Google's Rich Results Test before shipping.

Reviewed by Nicolas Provost, founder of Reviewz.ai. Insights based on auditing 500+ Shopify review setups and analyzing public pricing, schema, and conversion data across the leading review platforms. LinkedIn

Why review schema markup matters in 2026

Schema markup is the only technical SEO change in the review space that produces a clean, measurable lift, which is one more reason reviews are worth collecting in the first place. Add valid JSON-LD with AggregateRating to a Shopify product page, wait 2 to 6 weeks for re-indexing, and yellow stars appear next to your product in Google's search results. The CTR lift on listings with stars versus identical listings without is 10 to 35 percent depending on what competing listings show.

That is the entire mechanism. There is no secret schema trick that boosts rankings. AggregateRating gets you the visual badge in SERP, that badge steals more clicks, and it compounds with the broader ways reviews influence your SEO. The only thing you need to get right is the technical implementation. Get it wrong and Google either ignores the markup or (worse) hits you with a manual action for misleading structured data.

The schema.org/Review specification is the authoritative reference. Google's documentation overlays its own requirements on top of schema.org's spec. When the two conflict, Google's requirements win for rich result eligibility.

The 3 schemas you need (and how they nest)

A complete Shopify product page schema implementation uses three connected types in one JSON-LD block:

  1. Product as the root, describing the item (name, image, brand, offers).
  2. AggregateRating nested inside Product, giving Google the star rating summary.
  3. Review (one or more) nested inside Product, giving Google individual review content.

Here is a complete, validated JSON-LD block for a Shopify product page:

That block ships rich result eligibility for one product. If you do not want to write this by hand, the review schema generator outputs validated JSON-LD you can paste into your Shopify theme.

How Shopify themes handle review schema (and where it goes wrong)

Most Shopify themes ship with basic Product schema baked into the product template. But out-of-the-box themes almost never include AggregateRating or Review nesting, because they do not know what review app you are using.

Three common patterns:

SetupWhat happens
Default theme, no review appProduct schema only, no stars in SERP
Default theme + review app injecting separate schemaOften duplicate or conflicting schema, Google picks one
Custom theme with unified Product + AggregateRatingClean rich results, full stars in SERP

The middle pattern is by far the most common in real-world audits. Themes inject one schema block, review apps inject another, and you end up with two competing JSON-LD scripts on the same page. Google picks whichever it parses first and ignores the rest.

The fix is either: configure your review app to merge into the theme's Product schema (most apps support this in their integration settings), or hand-edit the product template to inject AggregateRating from your app's Liquid variables. The first option works for 90 percent of stores. The second is for stores with custom themes that need fine-grained control.

Turn every purchase into a 5-star review with Reviewz on Shopify
Reviewz · Shopify

Route happy customers to Trustpilot & Google, capture negatives privately.

Install Reviewz on Shopify

Common validation errors that break rich results

These are the errors that show up most often in Google's Rich Results Test when auditing Shopify stores:

  • "AggregateRating reviewCount must be a positive integer": shipping a product with reviewCount of 0 breaks the schema. Suppress AggregateRating entirely until the product has at least one review.
  • "Mismatch between visible reviews and structured data": schema lists 127 reviews, page shows none. Google's policy requires visibility parity. The fix is to render at least the star widget visibly on the page.
  • "Missing required property: offers": Product schema without offers (price, currency, availability) loses rich result eligibility. Add the offers block even if you have to pull pricing from a Liquid variable.
  • "Invalid Review without itemReviewed": if you use Review at the top level (not nested inside Product), each Review needs an itemReviewed property pointing back to the Product. Nesting inside Product avoids this.
  • "Brand must be a Brand or Organization": passing a plain string for brand fails validation. Use the typed object form: { "@type": "Brand", "name": "Acme" }.

Run every product page through the Rich Results Test before assuming your schema works. The tool tells you both errors (blockers) and warnings (won't block but reduce eligibility). Fix errors first, then triage warnings.

What changed in 2024-2026 for review schema

Three meaningful changes since 2024:

1. Google removed third-party review snippets for self-serving entities. In 2019 Google stopped showing reviews about your own business on your own site (Organization or LocalBusiness self-reviews). This was clarified again in 2024. Reviews about your products are still fine. Reviews about your brand on your own homepage are not.

2. AggregateRating requires actual reviews now. Pre-2023 you could ship AggregateRating with no nested Review objects. Google now expects at least 5 corresponding Review entries (or links to them) before granting rich results, which is part of how many reviews a product actually needs to perform.

3. FTC compliance is baked into Google's quality bar. Following the FTC final rule banning fake reviews in October 2024, Google increased its detection sensitivity for suspicious review patterns (sudden review bursts, identical text, suspicious authoring entities) and strips rich results from sites flagged. We cover this in buy Trustpilot reviews.

How to test and monitor your schema in production

A working schema setup has three checkpoints:

  1. Pre-ship validation: paste your product URL into Google's Rich Results Test. You want zero errors and product star eligibility.
  2. Post-index check: 2 to 6 weeks after publishing, search for your product in Google. Stars should appear on the SERP listing. If not, check Search Console for structured data errors.
  3. Ongoing monitoring: Search Console's "Enhancements > Products" report flags any product page that loses rich result eligibility. Review it weekly.

Clean structured data also helps the AI engines that increasingly answer shopping questions, which is the whole premise of answer engine optimization for ecommerce reviews. For brand-level setup outside product pages, the Trustpilot widget generator ships valid schema for Trustpilot reviews on your homepage. For star rendering inside the widget, use the CSS star rating generator for pure-CSS stars that work even when JavaScript fails.

FAQ

Do I need both AggregateRating and individual Review schema?

Yes for full rich result eligibility. AggregateRating alone produces stars but Google now expects at least a few Review objects nested in the Product to validate the aggregate. Ship 5 to 10 of your most recent reviews inside the JSON-LD. More than 20 makes the JSON-LD bloated without added value. Most review apps handle this nesting automatically when configured correctly.

Can I use schema for Trustpilot or Google reviews displayed on my site?

Yes for product-level reviews if you embed Trustpilot's product review widget and the reviews are specific to that product. No for general brand reviews displayed on your homepage (Google's 2019 self-serving review policy excludes these from rich results). The cleanest approach is to collect product reviews through a Shopify-native app for schema purposes and use Trustpilot for branded SERP authority separately. See Trustpilot vs Judge.me Shopify for the tradeoffs.

Google Business Profile dashboard showing the reviews tab where brand-level Google reviews are managed, separate from product-page review schema
Brand reviews collected through a Google Business Profile build SERP authority but, unlike product-page reviews, are excluded from your own site's rich-result schema.

How long does it take for stars to appear in Google after adding schema?

2 to 6 weeks for most product pages, assuming Google re-indexes the page and there are no validation errors. You can speed up indexing by requesting recrawl in Search Console for your top products. New products usually appear in rich results within 2 weeks. Old, established pages can take longer because Google's recrawl frequency varies. If 8 weeks have passed and no stars, investigate Search Console errors or use the Rich Results Test to diagnose.

Is microdata (the old itemscope/itemtype) still valid in 2026?

Valid yes, recommended no. Google parses microdata, RDFa, and JSON-LD equally. But JSON-LD is what Google publicly recommends and what almost every modern Shopify theme and review app uses by default. Mixing formats on the same page (microdata in the HTML, JSON-LD separately) leads to conflicting signals and reduced rich result reliability. Standardize on JSON-LD.

What if I have hundreds of product pages without reviews yet?

Configure your schema to suppress AggregateRating entirely when reviewCount is zero. Shipping Product schema without rating data is fine. Shipping invalid AggregateRating with zero reviews is a manual action risk. As reviews accumulate, the AggregateRating block populates automatically on subsequent crawls. Most review apps handle this conditional rendering by default. Verify in the Rich Results Test that your zero-review pages do not include an empty AggregateRating block.

Turn every purchase into a 5-star review with Reviewz on Shopify
Reviewz · Shopify

Route happy customers to Trustpilot & Google, capture negatives privately.

Install Reviewz on Shopify
Nicolas Provost, founder of Reviewz.ai

About the author

Nicolas Provost · Founder of Reviewz.ai

Nicolas built Reviewz.ai after auditing 500+ Shopify review setups while running Kanal (WhatsApp marketing for Shopify). He has spent four years inside the Shopify ecosystem and writes about review collection, brand trust SEO, and the actual economics of running customer-feedback flows on ecommerce sites.

LinkedIn · Reviewz.ai · Kanal (WhatsApp for Shopify)

Trusted by 350+ Shopify stores

Start generating revenue with reviews.

Turn every purchase into a 5-star review with WhatsApp, SMS, E-mail, and every reviewer into a repeat customer.

5x more reviews+300,000 reviews collected1-click setup