Product Schema Markup
Product schema enables rich product results in Google Search, including price, availability, review ratings, and images. Essential for e-commerce sites to stand out in search results.
What is Product schema markup?
Product schema markup is structured data in JSON-LD format that helps search engines understand your page content. It requires properties like name, image, offers and enables rich results in Google Search. Product schema enables rich product results in Google Search, including price, availability, review ratings, and images. Essential for e-commerce sites to stand out in search results.
Required Properties
| Property | Type | Description |
|---|---|---|
| name | Text | The name of the product. |
| image | ImageObject or URL | Product image(s). Multiple images recommended. |
| offers | Offer | Pricing information including price, currency, and availability. |
Recommended Optional Properties
| Property | Type | Description |
|---|---|---|
| description | Text | A description of the product. |
| brand | Brand | The brand of the product. |
| sku | Text | Stock keeping unit identifier. |
| gtin | Text | Global Trade Item Number (UPC, EAN, ISBN). |
| aggregateRating | AggregateRating | The overall rating based on multiple reviews. |
| review | Review | Individual product reviews. |
Example JSON-LD Code
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wireless Noise-Cancelling Headphones",
"image": "https://example.com/images/headphones.jpg",
"description": "Premium wireless headphones with active noise cancellation.",
"brand": { "@type": "Brand", "name": "AudioTech" },
"sku": "AT-WNC-100",
"offers": {
"@type": "Offer",
"price": "149.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://example.com/products/headphones"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "234"
}
}
Place this inside a <script type="application/ld+json"> tag in your page's <head>.
Common Mistakes to Avoid
- ✗ Missing the offers property — Google requires pricing info for product rich results
- ✗ Using a text string for price instead of a number (e.g., '$149.99' instead of '149.99')
- ✗ Not specifying priceCurrency in the Offer
- ✗ Omitting availability — use schema.org/InStock, OutOfStock, etc.
- ✗ Self-serving reviews or fake aggregateRating values
Generate Product Schema Markup
Use our free schema generator to create valid Product JSON-LD code in seconds.
Open Schema Generator