Product Schema Markup
Price, availability, reviews, and offers schema for rich results from product searches.
What Product Schema Does
Product schema tells Google about your products in a structured format. Instead of Googlebot parsing "Nike Air Zoom, $120, 4.6 stars" from HTML text, schema provides machine-readable data: name, price, currency, availability, rating count, review count, image URL. Google uses this data to display rich results in search and to feed Google Merchant Center for Shopping ads.
A product page with proper schema shows star ratings, price, and availability in the SERP snippet. A page without schema shows only the meta description. Click-through rate from rich snippets is 20-30% higher than plain text snippets. For e-commerce, this difference is massive.
Core Product Schema Properties
Minimum required properties for valid product schema: name, description, image, brand, offers (with price and priceCurrency). Without offers, your product does not show pricing in SERPs, reducing CTR.
Highly recommended properties: sku, aggregateRating (ratingValue and reviewCount), availability. The rating and review count are what convert clicks to purchases. A product showing "4.7 out of 5 stars (428 reviews)" outperforms one with no rating signal.
Availability schema is critical. Mark products as "InStock", "OutOfStock", or "PreOrder" with expected delivery dates. Google uses this to show "In stock" or "Out of stock" labels in SERPs. If your schema says "InStock" but the product sells out, users click through to find it unavailable — increasing bounce rate and lowering CTR for future impressions.
Structured Data Implementation
Product schema is typically implemented using JSON-LD in a <script> tag in the page head. This approach is preferred because it does not interfere with visible HTML and is easy to update dynamically.
Example minimal product schema:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Red Running Shoes for Women",
"description": "Lightweight running shoes designed for long-distance...",
"brand": {
"@type": "Brand",
"name": "Nike"
},
"image": "https://example.com/red-shoes.jpg",
"offers": {
"@type": "Offer",
"price": "120.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "428"
},
"sku": "NIKE-RUN-RED-W-7"
}Validate your schema using Google's Rich Results Test tool. If your JSON-LD is malformed, Google will not parse it and your rich results will not display.
Availability and Merchant Center Integration
Linking Google Search Console to Google Merchant Center enables free product listings in Google Shopping (for some product categories). Merchant Center crawls your website looking for product schema. If schema is missing or incorrect, products cannot be listed.
Availability schema is especially important for Merchant Center. If Merchant Center cannot determine whether a product is in stock, it will not show it in Shopping results. Keep your schema and your inventory database in sync. When a product sells out, immediately update the availability property to "OutOfStock".
Common Schema Mistakes
| Mistake | Impact | Fix |
|---|---|---|
| Missing offer price | No pricing in SERP, lower CTR | Always include offers with price and priceCurrency |
| Static star rating for all products | Fake reviews, user distrust, possible manual action | Generate ratings only from verified purchases |
| Wrong availability status | Users click expecting stock, find it out | Sync schema availability with inventory in real-time |
| Missing aggregateRating | No trust signals in SERP, lower CTR | Implement review collection and expose ratingValue and reviewCount |
| Image URL inaccessible or broken | Image not indexed, no image results | Ensure all image URLs are public and return HTTP 200 |
| Duplicate schema on category pages | Google confused about page type, indexation issues | Use Product schema only on product pages, CollectionPage on categories |
Review Schema and User Trust
Review schema (using Review or AggregateRating) enables star display in SERPs. But reviews must be authentic. Google specifically warns against fake, paid, or incentivised reviews. Users rate content based on star display — if the displayed rating is inflated, conversion rates actually decline when users discover the deception.
Best practice: collect reviews through post-purchase email. Reward reviews with small discounts or loyalty points (standard retail practice) but never require positive reviews. Google allows "incentivised" reviews if they are clearly marked as such, but market research shows users trust uncompensated reviews more.
Monitor your review rating trends. If a product suddenly jumps from 3.2 stars to 4.8 stars in one week, Google's systems flag this as suspicious. Organic review growth (0.1-0.2 star improvement per month) is credible. Sudden spikes suggest fraud.
Scaling Schema Implementation
With thousands of products, manual schema creation is not viable. Schema must be generated dynamically from your product database. When a product is added or updated, schema is generated automatically.
For e-commerce platforms (Shopify, WooCommerce, Magento), schema generation is usually handled by the platform or an app. Verify that your platform generates valid JSON-LD for all products. Use Google's Rich Results Test to validate a sample of your product pages.
For custom-built sites, your development team should implement schema generation at the product rendering level. When the product page template renders, it should output correct schema JSON-LD based on the product's database values.
Testing and Monitoring
Google's Rich Results Test (search.google.com/test/rich-results) validates your schema and shows how it will display in search results. Test a sample of product pages from different categories and price ranges. If some pages fail validation, identify the pattern (e.g., "all products without reviews fail") and fix it systematically.
Monitor GSC for structured data enhancements. This section shows how many product pages have valid schema and how Google is displaying them. If the number of "detected" vs "valid" rich results diverges, you have a validation issue.
How This Connects
Product schema is foundational to e-commerce SEO. It enables rich results (improving CTR), feeds Google Merchant Center (enabling Shopping ads), and provides Google with unambiguous product information. Without it, you are operating with one hand tied behind your back.