What the Rich Results Test does
The Rich Results Test fetches a URL (or accepts a code snippet), parses every application/ld+json block on the page, identifies the Schema.org types declared, validates each against Google's rich-result rules, and reports detected types, errors per type, warnings per type, and rich-result eligibility per type. The tool is built into Search Console and is the deciding factor for whether a structured-data install on a Shopify store will trigger the SERP enhancement Google associates with that schema type.
Running it against a Shopify store
Submit a representative URL per template — one PDP, one collection, one blog post, the homepage. Each test takes 10–30 seconds. The result page shows detected types in a left rail, the full parsed JSON-LD in the middle, and rich-result eligibility per detected type on the right. For each template, audit the field set against the recommended schema fields documented on the matching leaf in this pillar.
Expected output per Shopify template
Per template, the clean pass looks like this. Homepage: Organization detected, WebSite detected, zero errors, possibly one or two warnings on logo dimensions or sameAs absence. PDP: Product detected, Offer detected, BreadcrumbList detected, AggregateRating detected if you've authored it, zero errors, warnings only on Merchant Center fields you haven't aligned yet (gtin if barcode empty, hasMerchantReturnPolicy if not authored, shippingDetails if not authored). Collection: BreadcrumbList detected, zero errors. Blog post: Article detected, BreadcrumbList detected, zero errors, possibly warnings on author.url or image dimensions.
Warnings to ignore (or at least deprioritise)
Three warnings appear frequently on Shopify storefronts and are safe to deprioritise. (1) 'priceValidUntil is recommended' on products without an active sale — adding a far-future date to silence the warning is dishonest; leave it. (2) 'gtin is recommended' on handmade or vintage products that legitimately don't have a GTIN — leave it; do not fabricate. (3) 'sameAs is recommended' on Organization when the brand hasn't built out its profile footprint yet — work on the sameAs over time, don't fake URLs.
Errors that block a clean pass
Five errors appear most often on Shopify and must be fixed before the install is complete. (1) 'price' parsed as a string instead of a number — Shopify stores prices in cents; the Liquid block must divide by 100.0. (2) JSON parse error from unescaped strings — Shopify's product titles or vendor names contain apostrophes; pass through | escape. (3) Duplicate top-level Product entity — Shopify's auto-emitted Product and your complementary Product don't share an @id; align them. (4) 'Either offers, review or aggregateRating must be present on Product' — your complementary block dropped offers; reinclude or rely on Shopify's auto-emission. (5) Missing required field in ListItem (BreadcrumbList) — usually position is missing or non-sequential.
When to fall back to validator.schema.org
The Rich Results Test only tests schema types Google supports rich results for. For everything else, fall back to Schema.org's Markup Validator at validator.schema.org. Use it for: FAQPage (after the Rich Results Test FAQ support ends June 2026), MerchantReturnPolicy (no Google rich result), OfferShippingDetails (no dedicated rich result), and any custom @graph composition combining types Google doesn't specifically rich-result-test together.