Review Schema Markup — Review Snippets in Google
Review markup describes one person's review of one item: who wrote it, the rating they gave, and what they reviewed. Google can show it as a review snippet with the stars and author.
Generate Review JSON-LDWhy review snippets don't show up
- The review has no author, or the author name is not a real name.
- The reviewed item is a type Google does not support, such as a plain WebPage.
- A business marks up reviews of itself on its own site, which Google excludes for LocalBusiness and Organization.
- The review in the markup is not visible on the page.
How SwiftSchema helps
The generator below builds a Review with the author, rating, and reviewed item that Google requires, and limits the item type to the types Google supports for review snippets.
It warns you when the author name is too long and when you pick LocalBusiness or Organization, which only qualify on sites that review other businesses.
What is Review schema?
A Review is one person's or organization's evaluation of one item, with a rating. Google uses Review markup for review snippets: a rating and reviewer shown with the search result.
Don't confuse it with AggregateRating, which is the average and count of many ratings. A product page can have both: an AggregateRating for the overall score, and a Review for each individual review shown on the page.
Required and recommended properties
From Google's review snippet documentation:
| Property | Required? | Notes |
|---|---|---|
author | Yes | A Person or Organization. The name must be a valid name, and shorter than 100 characters. Google's example of an invalid name is "50% off until Saturday". |
reviewRating | Yes | A Rating with ratingValue: a number, fraction, or percentage (4, 6 / 10, 60%). Use a dot for decimals. |
itemReviewed | Unless nested | The item being reviewed. Leave it out when the review is nested in the item with the review property. |
| Item name | Yes | itemReviewed.name, or the name of the item the review is nested in. |
datePublished | Recommended | The date the review was published, in ISO 8601 format. |
reviewRating.bestRating | Recommended | The top of the scale. Google assumes 5 if it's missing. |
reviewRating.worstRating | Recommended | The bottom of the scale. Google assumes 1 if it's missing. |
reviewBody (the review text) is a schema.org property Google doesn't require, but it's useful for showing what the rating is based on.
Standalone or nested
- Standalone: publish a
ReviewwithitemReviewedpointing to the item. The first and third examples do this. - Nested: add the review to the item's own markup with the
reviewproperty. Google then assumes the parent item is the one reviewed, so leave outitemReviewed. The second example does this for two reviews of a product, together with the product's AggregateRating.
Which items can have review snippets
Google's valid types for the reviewed item are Book, Course, CreativeWorkSeason, CreativeWorkSeries, Episode, Event, Game, HowTo, LocalBusiness, MediaObject, Movie, MusicPlaylist, MusicRecording, Organization, Product, Recipe, and SoftwareApplication.
LocalBusiness and Organization only qualify on sites that capture reviews about other businesses and organizations.
Self-serving reviews
Google's guidelines say that if the entity being reviewed controls the reviews about itself, its pages that use LocalBusiness or any other type of Organization structured data are ineligible for the star review feature. That includes reviews shown through an embedded third-party widget, such as Google Business or Facebook reviews.
So a law firm can show client testimonials on its site, but it won't get review stars for its own Organization or LocalBusiness markup. The AggregateRating guide covers this rule in more detail.
Other guidelines
- Visible reviews. Users must be able to see the review text and rating on the marked-up page.
- A specific item, not a category or a list of items.
- Several reviews? Also include an aggregate rating of them.
- No fake or undisclosed incentivized reviews, such as reviews written in exchange for money, discounts, or free products without a clear disclosure.
- Don't aggregate reviews or ratings from other websites.
- Google recommends only accepting ratings that come with a review comment and the author's name.
How to build one here
- 01
Pick the type of item reviewed from Google’s supported types, and enter its name.
- 02
Enter the author’s name and choose Person or Organization.
- 03
Enter the rating, and the best and worst possible ratings if your scale is not 1 to 5.
- 04
Add the publish date and the review text shown on the page.
- 05
Copy the JSON-LD into the page with the review and test it in Google’s Rich Results Test.
Ready to build the markup?
Author, rating, and a supported item type.
Common mistakes
- No author. Google requires one. Use the reviewer's real name, not promotional text such as "50% off until Saturday".
- An unsupported item type. Reviews of a plain WebPage, Thing, or CreativeWork don't qualify. Use the specific type, such as Product or Recipe.
- The wrong scale. If you rate out of 10, set
bestRatingto 10. - A comma in the decimal. Write
4.5, not4,5. - Reviews of your own business. Not eligible for stars in LocalBusiness or Organization markup on your own site.
- Reviews that aren't on the page. Mark up only reviews visitors can read.
Required properties
author (Person or Organization)author.name (under 100 characters)reviewRating.ratingValueitemReviewed (unless nested in the item)itemReviewed.name (or the parent item's name when nested)
Recommended properties
datePublishedreviewRating.bestRatingreviewRating.worstRating
{
"@context": "https://schema.org",
"@type": "Review",
"author": {
"@type": "Person",
"name": "Taylor Brooks"
},
"datePublished": "2026-07-10",
"reviewBody": "Solid value and easy setup. The battery lasts about two days.",
"reviewRating": {
"@type": "Rating",
"ratingValue": 4,
"bestRating": 5,
"worstRating": 1
},
"itemReviewed": {
"@type": "Product",
"name": "Trailhead GPS Watch"
}
}{
"@context": "https://schema.org",
"@type": "Product",
"name": "Trailhead GPS Watch",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": 4.4,
"reviewCount": 89
},
"review": [
{
"@type": "Review",
"author": {
"@type": "Person",
"name": "Taylor Brooks"
},
"datePublished": "2026-07-10",
"reviewBody": "Solid value and easy setup.",
"reviewRating": {
"@type": "Rating",
"ratingValue": 4
}
},
{
"@type": "Review",
"author": {
"@type": "Person",
"name": "Sam Ortiz"
},
"datePublished": "2026-08-02",
"reviewBody": "Accurate GPS, but the strap wore out quickly.",
"reviewRating": {
"@type": "Rating",
"ratingValue": 3
}
}
]
}{
"@context": "https://schema.org",
"@type": "Review",
"author": {
"@type": "Organization",
"name": "AppLab Reviews"
},
"datePublished": "2026-02-10",
"name": "Stable sync at last",
"reviewBody": "Version 5.2 fixed sync conflicts and improved offline mode.",
"reviewRating": {
"@type": "Rating",
"ratingValue": 8,
"bestRating": 10,
"worstRating": 1
},
"itemReviewed": {
"@type": "SoftwareApplication",
"name": "Syncly Pro",
"operatingSystem": "iOS, Android",
"applicationCategory": "BusinessApplication"
}
}FAQs
What does Google require for Review markup?ShowHide
An author (a Person or Organization with a real name under 100 characters), reviewRating with a ratingValue, and the item being reviewed: itemReviewed with a name, or the review nested in the item's own markup with the review property.
Review or AggregateRating?ShowHide
Review is one person's review of one item. AggregateRating is the average and count of many ratings. If a page shows several individual reviews, Google asks you to include an aggregate rating of them as well.
Can I mark up testimonials about my own business?ShowHide
Not for stars. Google says that if a business controls the reviews about itself, its pages using LocalBusiness or Organization structured data are ineligible for star review snippets, including reviews shown through embedded Google or Facebook widgets.
Which items can have review snippets?ShowHide
Google lists Book, Course, CreativeWorkSeason, CreativeWorkSeries, Episode, Event, Game, HowTo, LocalBusiness, MediaObject, Movie, MusicPlaylist, MusicRecording, Organization, Product, Recipe, and SoftwareApplication. LocalBusiness and Organization only qualify on sites that review other businesses.
Can a page have more than one Review?ShowHide
Yes. Mark up each visible review. When there are several, also add an AggregateRating for the item.
What happened to critic review markup?ShowHide
In June 2021, Google deprecated its critic review documentation. Google said the change doesn't affect other features in Search that use review markup, so Review markup for review snippets still works.