Shopify Product Schema Markup: The Complete Guide for AI Commerce
Shopify product schema markup is the structured JSON-LD code that tells search engines and AI agents exactly what your product is, what it costs, whether it is in stock, and what customers think of it. In 2026, schema markup is not just an SEO tactic -- it is the primary mechanism by which AI shopping agents parse product eligibility for recommendations. Stores without complete, accurate schema are invisible to agentic queries regardless of how well-written their product descriptions are.
This guide covers what Shopify outputs by default, what it does not, and how to fill the gaps.
Key Takeaways
- Shopify's default themes output basic product schema (name, price, availability, image) but omit review schema, offer schema, and category-specific properties unless explicitly configured
- Review schema is the most commonly missing element -- AI agents weight social proof heavily in recommendation decisions
- The
@type: Productschema should include at minimum: name, description, image, offers (price, availability, currency, seller), aggregateRating, and brand
- Breadcrumb schema helps AI agents understand product category hierarchy and improves featured snippet eligibility
- Testing your schema with Google's Rich Results Test before and after any theme change is the fastest way to catch regressions
What Schema Markup Is and Why It Matters for AI Commerce
Schema markup is structured data embedded in your page's HTML as JSON-LD (JavaScript Object Notation for Linked Data). It tells machine readers -- search engines, AI agents, price comparison tools -- the specific attributes of what your page represents.
A product page without schema markup presents prose to machine readers:
"Our premium stainless steel water bottle keeps drinks cold for 24 hours and hot for 12 hours. Available in matte black, brushed silver, and arctic white. 750ml capacity. BPA-free."
A product page with complete schema markup presents structured attributes:
`json
{
"@type": "Product",
"name": "Summit Pro Water Bottle 750ml",
"description": "Stainless steel vacuum-insulated...",
"brand": {"@type": "Brand", "name": "Summit"},
"material": "Stainless steel, BPA-free",
"color": "Matte black",
"offers": {
"@type": "Offer",
"price": "34.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"seller": {"@type": "Organization", "name": "Your Store"}
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "247"
}
}
`
The second version is what AI shopping agents can reliably query. The first requires interpretation.
What Shopify Outputs by Default
Most of Shopify's default themes (Dawn, Sense, Refresh) output a basic product schema. The standard output includes:
@type: Productname(product title)image(first product image)description(product description)offers(price, availability, URL)
What is typically missing from default Shopify schema:
aggregateRatingandReview(requires a review app that outputs schema)brandskugtin/mpn(important for Google Shopping and product feed matching)material,color,size(product variant attributes)- Category-specific properties (nutritionInformation for food, wearableSize for apparel)
breadcrumbschema
How to Audit Your Current Schema Output
Step 1: Open your product page in Chrome, right-click > View Page Source.
Step 2: Search for ld+json in the source code. This is where JSON-LD schema lives.
Step 3: Copy the JSON object and paste it into Google's Rich Results Test (search.google.com/test/rich-results).
The Rich Results Test shows you what schema Google detects and flags any errors or missing recommended properties.
Alternatively, use Schema.org's validator at validator.schema.org for a more comprehensive check.
What to look for:
- Is the
Producttype detected? - Is
aggregateRatingpresent? - Is
offerscomplete (price, availability, seller)? - Are there any errors (red flags) or warnings (orange flags)?
Errors prevent rich results eligibility. Warnings indicate missing recommended properties.
Adding Missing Schema Elements
Adding Review Schema
Review schema (aggregateRating) requires your review app to output it. Check your review app's documentation.
Judgeme: Outputs aggregateRating schema by default. Verify it is appearing in your page source.
Okendo: Outputs review schema, configurable per product page layout.
Stamped: Outputs schema, check settings for confirmation.
If your review app outputs star ratings visually but not in JSON-LD schema, contact their support. This is a common gap and a quick fix for most established review apps.
Adding Brand Schema
Shopify does not include brand in its default schema output. You need to add it to your theme's product structured data snippet.
In your theme code (Online Store > Edit code > Snippets, look for product-structured-data.liquid or similar):
Add to the existing JSON-LD object:
`json
"brand": {
"@type": "Brand",
"name": "{{ product.vendor }}"
}
`
Shopify's product.vendor field maps to brand for most stores.
Adding SKU and GTIN
SKU:
`json
"sku": "{{ product.selected_or_first_available_variant.sku }}"
`
GTIN (requires a metafield with the barcode/GTIN value):
`json
"gtin": "{{ product.metafields.product.gtin }}"
`
If you have barcode values in your product data, map them to a metafield and include them in schema. GTIN matching is how AI agents and Google Shopping connect products to manufacturer records.
Adding Breadcrumb Schema
Breadcrumb schema tells AI agents and search engines the category hierarchy of your product.
`json
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "{{ shop.url }}"
},
{
"@type": "ListItem",
"position": 2,
"name": "{{ collection.title }}",
"item": "{{ shop.url }}/collections/{{ collection.handle }}"
},
{
"@type": "ListItem",
"position": 3,
"name": "{{ product.title }}",
"item": "{{ shop.url }}/products/{{ product.handle }}"
}
]
}
`
This goes in a separate block on product pages.
Category-Specific Schema Properties
For AI agents recommending products in specific categories, additional schema properties are signals:
Apparel:
material("100% organic cotton")color(tied to selected variant)size(tied to selected variant)wearableSize(using schema.org/WearableSizeSpecification for size chart data)
Food:
nutritionInformation(using schema.org/NutritionInformation)suitableForDiet(VeganDiet, GlutenFreeDiet, HalalDiet, etc.)ingredients
Electronics:
modelcategory
Health and Beauty:
activeIngredientdrugUnit
These extend the base Product schema with category-specific properties that AI agents use for filtering and matching.
The Schema Validation Workflow
Any time you:
- Change your Shopify theme
- Update your review app
- Install a new app that modifies product pages
- Make changes to your theme's structured data snippet
Run the Rich Results Test on a product page. Schema changes are easy to break accidentally.
Regression testing: Once your schema is complete, save a snapshot of the JSON-LD output. After any significant change, compare the new output to the snapshot to catch regressions.
Offer Schema: Getting Availability Right
The offers.availability field is critical for AI agent recommendations. An agent that has been asked "find me products I can buy this week" will filter out products with incorrect availability signals.
Correct availability values:
InStock-- product is available nowOutOfStock-- product is unavailablePreOrder-- product can be ordered but ships laterBackOrder-- product is on backorder
Shopify's default schema maps available: true/false to InStock/OutOfStock. If you have pre-order or backorder products, you need to handle this mapping explicitly in your schema output.
Also ensure priceValidUntil is set if you have sale prices. An offer with a sale_price that does not include priceValidUntil can generate schema errors.
Frequently Asked Questions
Does Shopify automatically add schema markup to product pages?
Yes, but incompletely. Shopify's default themes output basic product schema, but omit several important elements (aggregateRating, brand, GTIN) that are important for rich results and AI discoverability.
Do I need to code to add schema to Shopify?
For basic additions like brand and SKU, yes -- you need to edit your theme's Liquid template. For review schema, your review app handles it without code if configured correctly. For complex schema additions (category-specific properties), developer help is recommended.
How do I know if my Shopify schema is causing rich results?
In Google Search Console, go to Enhancements > Products. If Shopify's schema is correctly implemented and indexed, you will see product data there. Google typically takes 1-2 weeks after implementation to process schema changes.
Should each product variant have its own schema?
Ideally yes -- especially for color and size variants with different prices. In practice, most Shopify themes output schema for the selected or first available variant. Implementing per-variant schema requires more complex Liquid logic.
What is the most common schema markup mistake in Shopify stores?
Missing aggregateRating when the store has reviews. This is the most impactful omission -- review schema drives star ratings in search results, which improve click-through rate, and it is also a primary AI agent trust signal.
Schema Is the AI Discoverability Foundation
Product schema is not optional for stores that want to appear in AI shopping recommendations. It is the structured layer that AI agents read. Without it, your products are visible to human searchers but invisible to the agents making recommendations on their behalf.
Complete the basic schema first: brand, SKU, GTIN, and aggregateRating. Then layer in category-specific properties. Test with Rich Results Test after each change.
If you want schema markup implemented across your entire product catalog with ongoing validation, this is part of our Store Health Audit scope.
Meta Title: Shopify Product Schema Markup: Complete AI Commerce Guide | BoltRamp
Meta Description: Complete guide to Shopify product schema markup for AI commerce: what Shopify outputs by default, what is missing, and how to fill the gaps.
Primary Keyword: Shopify product schema markup
Secondary Keywords: Shopify schema, JSON-LD Shopify, Shopify structured data
URL Slug: /blog/shopify-product-schema-markup
Word Count: ~1,700
Ready to take action?
Fixed price, no surprises. Order directly or get in touch.