How to Fix JSON-LD in Shopify (Schema Output, Apps, Validation)
Shopify themes output Product, BreadcrumbList, Organization, WebSite JSON-LD by default. When you add schema apps (JSON-LD for SEO, Smart SEO, Schema Plus), they layer on more. The combination sometimes produces duplicates or conflicts. This guide covers Shopify-specific JSON-LD debugging. Pair with JSON Checker guide.
Step-by-step: How to fix Shopify JSON-LD output
- Audit JSON-LD output. View source on product page. Search 'application/ld+json'. Count blocks. Most Shopify stores output 2-4 blocks: theme default + 1-2 app additions.
- Run Rich Results Test. Each page type: homepage, collection, product, blog post. Note detected schemas, errors, warnings.
- Resolve theme + app duplicates. If theme outputs Product and an app also outputs Product, you have duplicates. Pick authority: usually app (more flexible). Disable theme's product schema by editing product template (remove existing JSON-LD block from product.liquid) or disable in app settings.
- Fix missing required fields. Shopify theme Product schema sometimes misses brand (theme reads vendor field for brand — empty for some products). Audit and populate vendor field on all products. Or edit theme to use product type as fallback.
- Fix Organization schema. Theme outputs Organization but often without sameAs (social profile links) or logo. Edit theme.liquid: add complete Organization JSON-LD in head with required fields.
- Validate after every plugin update. Apps that modify schema update frequently. Each update can introduce errors. After any schema-affecting app update, re-run Rich Results Test on representative pages.
- Monitor Search Console. Enhancements → Product, FAQPage, etc. Errors appear within days of schema regressions.
📐 Validate Shopify JSON-LD
Find duplicate schemas, missing fields and syntax errors.
Run JSON-LD Validator →Frequently Asked Questions
Why does my Shopify store output two Product schemas?
Theme outputs one (built into product.liquid template), app outputs another (JSON-LD for SEO, Smart SEO, etc.). Resolution: disable one. Most stores keep app's schema (more customisable) and remove theme's. Editing product.liquid to remove the JSON-LD block accomplishes this.
Best Shopify schema apps?
JSON-LD for SEO ($14.99/mo) — most comprehensive, replaces theme schema cleanly. Smart SEO ($9.99/mo) — broader SEO including schema. Schema Plus ($14.99/mo) — schema-focused. For most stores, one of these is enough; don't run multiple.
How do I fix 'missing field brand' on Shopify Product schema?
Edit product to populate Vendor field with brand name (Shopify uses Vendor as Brand in schema). If you don't track brand separately, use the product type or set a default brand in the schema app settings.
Why does Search Console show schema errors after a Shopify theme update?
Theme updates sometimes modify product.liquid in ways that break schema output (missing fields, malformed JSON, wrong @type). After every theme update: re-run Rich Results Test on 5 representative URLs. Fix any new errors in the updated theme.
Can I write custom JSON-LD on a Shopify page?
Yes via the Pages section (admin → Online Store → Pages → edit page → show HTML). Add <script type='application/ld+json'>...</script> block. Useful for one-off schemas (Event for a launch event, JobPosting for a careers page). Don't try to manage site-wide schema this way — use theme code or apps.