Structured Data
Review & Rating Schema Validator
Paste your Review or AggregateRating JSON-LD (or the whole page) and get the real spec check: rating range math, required fields, author validity, date format, duplicate-review catch, plus a heads-up on the number one reason review snippets kena rejected — self-serving reviews of your own business.
Runs fully in your browser lah, nothing you paste gets sent anywhere except an anonymised usage count.
Paste the contents of a <script type="application/ld+json"> block, or a full HTML page — every Review and AggregateRating record auto-found, including ones nested inside Product, LocalBusiness, Recipe, etc.
What this checks, and how to fix common mistakes
Google only shows the star-rating "review snippet" when Review or AggregateRating JSON-LD is syntactically valid, complete, AND policy-eligible. This tool walks the actual nested structure — reviewRating, itemReviewed, author — same way search engines read it, whether standalone or nested inside a Product, LocalBusiness, Recipe or similar item.
The number one reason a review snippet never shows up, even with perfectly valid schema: Google doesn't show review rich results for "self-serving reviews" — where a business rates or reviews itself (Organization, LocalBusiness and subtypes like Restaurant, Store, Hotel, Dentist, etc). This only works for genuine third-party critic or aggregator sites. If flagged here, move the rating off Organization/LocalBusiness onto a specific Product or Service you sell, or accept it won't earn a rich result on your own homepage.
ratingValue must fall between worstRating and bestRating — schema.org defaults these to 1 and 5 if omitted, so a scale like "9.5 out of 10" needs an explicit bestRating of 10, else Google rejects it as out of range. bestRating must always be greater than worstRating.
Every Review needs a reviewRating with a numeric ratingValue and an author with a real name (a Person/Organization object, not just a bare string). AggregateRating needs at least one of reviewCount or ratingCount as a non-negative whole number, and reviewCount should never exceed ratingCount.
datePublished should be a real ISO 8601 date ("2026-05-10", not "10/5/2026"). If a page lists several Review records, this tool also flags likely duplicates — same author and review text appearing twice usually means an accidental copy-paste, which can look suspicious to Google's spam systems too.