Schema Markup for Shopify: Structured Data That Earns Rich Results
The right schema markup can earn rich results — star ratings, opening hours, FAQ boxes, and product panels — that dramatically increase click-through rates. This guide shows exactly which schema types shopify stores need and how to implement them.
Rich Results Available to Shopify Stores
Schema Types for Shopify Stores
Product (via theme)
Shopify themes typically auto-generate Product schema. Verify it's correct and includes all required fields.
- name
- offers
- description
- image
- brand
- aggregateRating
- sku
AggregateRating (via review app)
Apps like Judge.me and Yotpo inject AggregateRating schema. Verify the schema is valid using Google's Rich Results Test.
- ratingValue
- reviewCount
- bestRating
BreadcrumbList
Not always auto-generated by Shopify themes. May need manual addition for collection → product hierarchy.
- itemListElement
Shopify Product Schema (verify theme output)
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Lavender Honey Soy Candle",
"description": "Hand-poured soy wax candle with lavender and honey fragrance. 8oz amber glass jar. 60-hour burn time.",
"image": "https://yourstore.myshopify.com/cdn/shop/products/lavender-candle.jpg",
"sku": "CANDLE-LAV-8OZ",
"brand": {"@type": "Brand", "name": "Ember & Glow"},
"offers": {
"@type": "Offer",
"price": "28.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://yourstore.com/products/lavender-honey-candle"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.9",
"reviewCount": "412"
}
}Test your schema at: search.google.com/test/rich-results before publishing.
Schema Markup Mistakes Shopify Stores Make
Assuming Shopify auto-generates valid schema (always verify with Rich Results Test)
Installing multiple review apps that both inject conflicting schema
Not checking if your theme's canonical tag conflicts with collection product URLs
Using a free theme with minimal schema support for a high-volume store
Not validating schema after a theme update (updates can break schema output)
Leaving product variant pages uncanonicalised, causing dozens of near-duplicate URLs to compete against each other
Missing Organization and WebSite schema on the homepage, which leaves brand entity signals unclear to Google
Failing to add Article and Person schema to Shopify blog posts, reducing E-E-A-T signals for informational content
Shopify Schema Implementation Notes
Shopify themes inject Product schema automatically, but the output quality varies widely by theme. Always run your product pages through Google's Rich Results Test (search.google.com/test/rich-results) and fix any missing required properties before going live.
If you use a review app such as Judge.me, Yotpo, Okendo, or Loox, check whether your theme also injects AggregateRating schema. Two AggregateRating blocks on the same page create validation conflicts and Google may discard both. Disable the duplicate source.
Shopify generates separate URLs for each product variant (via the ?variant= parameter). Add canonical tags on all variant pages pointing to the main product URL. Without canonicals, Google sees dozens of near-duplicate pages and may index none of them well.
Add Organization and WebSite schema to your theme.liquid file inside the head tag. These are global schemas rarely included by default themes. Organization schema establishes your brand entity; WebSite schema enables a sitelinks search box for branded searches.
Shopify's default breadcrumb schema may not match your actual collection hierarchy. Check the itemListElement positions and labels against your navigation menu. Incorrect breadcrumbs reduce the click-through value of breadcrumb rich results.
Collection pages should carry CollectionPage or ItemList schema. Most Shopify themes output generic WebPage or no schema at all for collections. Adding CollectionPage schema with itemListElement entries for featured products gives Google clear signals about page purpose.
Shopify blog posts support Article and Author (Person) schema, which are E-E-A-T signals Google weighs for informational content. Most themes omit these entirely. Adding them via a blog.article.liquid snippet is straightforward and can improve ranking of educational posts.
After installing or removing any app from your Shopify store, re-validate all your schema. Apps often inject or modify structured data, and a previously clean implementation can develop conflicts after a routine app update.
Organization + WebSite Schema for Shopify Stores
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"name": "Ember and Glow",
"url": "https://yourstore.com",
"logo": {
"@type": "ImageObject",
"url": "https://yourstore.com/logo.png",
"width": 200,
"height": 60
},
"sameAs": [
"https://instagram.com/emberandglow",
"https://facebook.com/emberandglow",
"https://pinterest.com/emberandglow"
],
"contactPoint": {
"@type": "ContactPoint",
"contactType": "customer service",
"email": "hello@yourstore.com"
}
},
{
"@type": "WebSite",
"url": "https://yourstore.com",
"name": "Ember and Glow",
"potentialAction": {
"@type": "SearchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://yourstore.com/search?type=product&q={search_term_string}"
},
"query-input": "required name=search_term_string"
}
}
]
}Add this to your theme.liquid file inside the <head> tag. Test at: search.google.com/test/rich-results
More Shopify SEO Guides
Schema Markup FAQs for Shopify
Verify Your Schema Implementation
Run a free audit to find schema errors before Google penalizes them.
Free SEO Audit