How to Add Product Schema Markup to Your Website
A step-by-step guide to adding Product JSON-LD structured data to your product pages, with working examples.
Invalid schema breaks your Shopping feed connection.
FeedShield catches issues like this automatically. Run a free audit before it costs you.
Why Product Schema Matters for GMC
Google uses Product schema on your product pages to verify the data in your feed. If the price, availability, or product name in your schema differs from what's in your feed, Google may disapprove the product.
Correct schema also enables rich results in organic search: price badges, availability status, and review stars in search snippets.
Minimum Required Properties
For a valid Product schema that satisfies Google Shopping requirements:
- •name — Product title
- •description — Product description
- •image — URL of the main product image
- •offers — Contains price, currency, and availability
- •price — Numeric price (e.g., 29.99)
- •priceCurrency — ISO 4217 currency code (e.g., USD)
- •availability — Schema.org availability URL
- •url — Canonical URL of the product page
Availability Values
Use these Schema.org URLs for availability:
- •In stock: https://schema.org/InStock
- •Out of stock: https://schema.org/OutOfStock
- •Pre-order: https://schema.org/PreOrder
- •Backorder: https://schema.org/BackOrder
Example JSON-LD Block
Place this in a script tag with type="application/ld+json" in the head or body of your product page:
{ "@context": "https://schema.org", "@type": "Product", "name": "Product Name Here", "description": "Product description here.", "image": "https://example.com/product-image.jpg", "offers": { "@type": "Offer", "price": "29.99", "priceCurrency": "USD", "availability": "https://schema.org/InStock", "url": "https://example.com/product-slug" } }
Validation
After adding schema, validate it with Google's Rich Results Test at search.google.com/test/rich-results. Paste your product URL and check for errors.
For Shopify
Shopify themes include basic Product schema by default. You may need to edit theme.liquid or a product snippet to add missing properties like GTIN or review data.
For WooCommerce
The Yoast SEO or RankMath plugins generate Product schema automatically. Review their schema output with the Rich Results Test to verify all required fields are present.