Schema How-To: Product & Review Markup for Enhanced Search Visibility
Ever noticed products on Google that show ratings, prices, and images—right in the search results? That’s the power of Product and Review schema markups at work. As more shoppers turn to online search to find what they need, it’s critical for businesses and SEOs to present products in a way that’s both user-friendly and search-engine friendly. Knowing how to add Product and Rating schema markup helps bridge that gap.
In this guide, you’ll learn how to do just that to enhance your listings, boost visibility, and improve your chances of earning rich results.
What is Product Schema?
Product is a structured data type from Schema.org that gives search engines detailed information about an item you sell or offer. Common fields include:
- Name
- Description
Image - SKU
- Brand
- Offer details (price, availability)
You can use this schema markup alone, but I recommend adding a Rating schema to supplement the value it gives to your SEO. The Rating schema adds a numeric rating score (e.g., 4 out of 5), helping improve your product’s visibility in search and boosting credibility with potential buyers.
What is the Format for Product Schema?
Here’s a basic JSON-LD schema markup for a Product using Schema.org’s Product type—without Rating.
<script type=”application/ld+json“>
{
“@context”: “https://schema.org“,
“@type”: “Product”,
“name”: “Noise-Canceling Wireless Headphones”,
“image”: [
“https://example.com/photos/headphones-front.jpg”,
“https://example.com/photos/headphones-side.jpg”
],
“description”: “Premium noise-canceling over-ear headphones with 40-hour battery life and Bluetooth 5.0 support.”,
“sku”: “NCWH-500”,
“mpn”: “1234567890”,
“brand”: {
“@type”: “Brand”,
“name”: “HeadphonesBrand”
},
“offers”: {
“@type”: “Offer”,
“url”: “https://example.com/product/noise-canceling-headphones”,
“priceCurrency”: “PHP”,
“price”: “19999.99”,
“priceValidUntil”: “2025-05-30”,
“availability”: “https://schema.org/InStock”,
“itemCondition”: “https://schema.org/NewCondition”,
“seller”: {
“@type”: “Organization”,
“name”: “HeadphoneStore”
}
}
}
</script>
What is a Review Schema?
While AggregateRating is commonly used for averages across multiple reviews, the Review schema is useful when representing a single product rating — such as an expert score, internal assessment, or first-party rating.
What is the Format for Product and Review Schema?
<script type=“application/ld+json”>
{
“@context”: “https://schema.org/”,
“@type”: “Product”,
“name”: “Noise-Canceling Wireless Headphones”,
“image”: [
“https://example.com/photos/headphones-front.jpg”,
“https://example.com/photos/headphones-side.jpg”
],
“description”: “Premium noise-canceling over-ear headphones with 40-hour battery life and Bluetooth 5.0 support.”,
“sku”: “NCWH-500”,
“mpn”: “1234567890”,
“brand”: {
“@type”: “Brand”,
“name”: “HeadphonesBrand”
},
“offers”: {
“@type”: “Offer”,
“url”: “https://example.com/product/noise-canceling-headphones”,
“priceCurrency”: “PHP”,
“price”: “19999.99”,
“priceValidUntil”: “2025-05-30”,
“availability”: “https://schema.org/InStock”,
“itemCondition”: “https://schema.org/NewCondition”,
“seller”: {
“@type”: “Organization”,
“name”: “HeadphoneStore”
}
},
“review”: {
“@type”: “Review”,
“author”: {
“@type”: “Person”,
“name”: “Sean Si”
},
“datePublished”: “2025-05-30”,
“reviewBody”: “Great sound quality and reliable noise cancellation—perfect for travel and work.”,
“reviewRating”: {
“@type”: “Rating”,
“ratingValue”: “5”,
“bestRating”: “5”,
“worstRating”: “1”
}
}
}
</script>
Author’s Note: This isn’t the only schema markup that your website can benefit from. There are a ton of them, but you can start with my how-tos on AggregateRatings, Organization, VideoObject, Event, and LocalBusiness schemas to improve your SEO.
Properties You Should Include in Your Product Schema
Property | Description | Required? |
@context | Always “https://schema.org” | Yes |
@type | Always “Product” | Yes |
name | Name of the product | Yes |
image | URL to the product image | Yes |
description | Short description of the product | Yes |
sku | Stock keeping unit | No, but recommended |
brand | Brand or manufacturer name | No, but recommended |
offers | Pricing and availability | Yes (for rich results) |
review | User or expert review | No, but recommended |
reviewRating | Numeric score for the review (nested in review) | No, but recommended |
Tips for Proper Implementation
To maximize the effectiveness of your Product and Rating schema:
- Use high-quality, crawlable product images
- Match structured data with visible on-page content
- Ensure ratingValue uses a consistent scale (e.g., 1 to 5 or 1 to 10) throughout the entire website.
- Provide the reviewer’s name and publish date if possible
- Include at least one review with a rating if using the review property
- Validate your JSON-LD using Google’s testing tools
Optional Properties to Enhance Your Schema Markup
Consider adding the following optional fields to provide more depth and context:
- color, material, size — For products with variations.
- itemCondition — e.g., New, Used, Refurbished.
- gtin13, mpn, gtin14 — Unique product identifiers. GTIN stands for Global Trade Item Number barcodes, and MPN stands for Manufacturer Part Number.
- reviewBody — The review given for the product, if any. Can be a short summary or quote from the review.
- worstRating and bestRating — To clearly define the rating scale.
Including these helps Google and other search engines better index your product and offer richer previews.
Where to Place the Schema Markup
Your schema should appear:
- On the same page where the product is displayed
- Inside a <script type=”application/ld+json”> block
- Preferably in the <head> section or before </body>
Keep structured data synchronized with your on-page content to avoid errors and eligibility issues.
Things to Check Before Adding Your Product + Review Schema
Before going live, review the following:
- Syntax is valid JSON-LD (you can use the Rich Results Test from Google, or Schema’s Validator tool to check)
- Required fields (name, image, offers) are present
- ratingValue is within defined bestRating and worstRating
- Reviewer name and publish date are included, if possible
- Markup matches visible content
- Page is accessible and not blocked by robots.txt
- Tested in Google’s Rich Results Test
Key Takeaway
Whether you’re listing one item or hundreds, knowing how to add Product and Rating schema can significantly improve your product visibility, credibility, and click-through rates.
Using both Product and Rating schema is not only a powerful way to enrich your product pages appearance, but also helps improve trust and engagement – right in the SERPs. Use it to get the attention of your target audience that’s becoming increasingly online.