AEO Saigon
Fundamentals

Review Schema and AggregateRating: Complete Guide to Getting Gold Stars on Google and AI

Table of contents

Review schema is structured data that lets Google and AI read customer reviews on your website — and decide whether to display gold stars in search results. AggregateRating is schema that summarizes the average score from multiple reviews. Understanding the difference between these two types and how to use them correctly is the key to leveraging the most powerful trust signal in AEO.

Three review schema types — distinguish to use correctly

1. Review — individual review Marks up a specific review from a specific user. Typically used within product pages, course pages, or testimonial pages.

2. AggregateRating — aggregate score The average score from multiple reviews. This schema is required for Google to display gold stars in search results.

3. UserReview — a subtype of Review A review written by an end user (as opposed to an editorial review by an expert). Use when you want to clearly distinguish the review source.

Full AggregateRating syntax

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "ABC Coffee & Bakery",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.6",
    "reviewCount": "247",
    "bestRating": "5",
    "worstRating": "1"
  }
}

Required fields:

  • ratingValue — average score (decimal, e.g. "4.6")
  • reviewCount or ratingCount — number of reviews
  • bestRating — maximum score (usually "5")

Google rule: ratingValue must fall between worstRating and bestRating. If worstRating is not declared, Google assumes it is 1.

Full Review syntax (individual review)

{
  "@context": "https://schema.org",
  "@type": "Review",
  "author": {
    "@type": "Person",
    "name": "John D."
  },
  "datePublished": "2026-07-15",
  "reviewBody": "Quiet coffee shop, good wifi, friendly staff. The croissants are especially good and reasonably priced. Will come back.",
  "reviewRating": {
    "@type": "Rating",
    "ratingValue": "5",
    "bestRating": "5"
  },
  "itemReviewed": {
    "@type": "LocalBusiness",
    "name": "ABC Coffee & Bakery"
  }
}

Combining AggregateRating with other schemas

AggregateRating works best when embedded inside a parent schema. Google supports gold star rich results for these schema types:

Parent schemaStars on GoogleAI cites
Product✅ Yes (most common)✅ Yes
LocalBusiness✅ Yes (mobile/maps)✅ Yes
Course✅ Yes✅ Yes
Recipe✅ Yes✅ Yes
Book✅ Yes✅ Yes
SoftwareApplication✅ Yes✅ Yes
Homepage (Organization)❌ No✅ Still readable
Generic service page❌ No✅ Still readable

Important note: Google does not display gold stars for homepages or generic service pages. But AI still reads AggregateRating schema on those pages to assess credibility — even without a rich snippet.

Which pages should have AggregateRating?

Highest priority:

  • Individual product/course/specific service pages
  • Local business pages (restaurants, centers, clinics)
  • Main campaign landing pages

Good to have but not critical:

  • Homepage (AI reads it but Google won't show a rich snippet)
  • About us page

Do not add (policy violation):

  • Blog/news article pages
  • Product category pages
  • Contact page

Where to get review data?

There are 3 valid sources to include in schema:

Source 1: On-site reviews (on your website) Users leave reviews directly on your page. You have the right to mark these up with Review schema. This is the most flexible source but requires a dedicated review management system.

Source 2: Google Business Profile Aggregate score from GBP → use for local business schema. Update regularly with actual GBP data.

Source 3: Third-party platforms (Trustpilot, Amazon, etc.) Can be aggregated and declared with the source clearly stated in itemReviewed. However, this data changes — needs an auto-sync mechanism or regular manual updates.

Common mistakes that lead to Google penalties

Mistake 1: Writing your own reviews and marking them up Declaring reviews from the website owner, employees, or related parties is a violation. Google analyzes context and will penalize.

Mistake 2: Only marking up positive reviews If the website only shows 5-star reviews while many 1-2 star reviews are hidden, this is spam. Google requires reviews to represent reality.

Mistake 3: reviewCount doesn't match actual review count Declaring reviewCount: 500 but only showing 20 reviews on the page → Google will detect this and hide the rich snippet.

Mistake 4: ratingValue on the homepage Placing AggregateRating 5.0 with a high ReviewCount in the homepage Organization schema to "boost trust" — this is schema spam and will be penalized.

Combining Review schema with AEO

Review schema doesn't just help Google display stars — it's also an important trust signal for AI citations:

  • AI prioritizes citing sources with high AggregateRating (≥4.0) and many reviews
  • For YMYL content (healthcare, finance, legal), AI treats reviews as one of the most important E-E-A-T signals
  • Testimonials with Review schema help AI cite case studies with specific data points

Review schema is one of the schemas with the most visible and measurable impact — both for Google rich snippets and for AI trust signals. See what FAQ schema is to implement an effective schema pair, or HowTo schema for how-to content. Use the AEO checker to check your page right now.

Frequently asked questions

Does Review schema help Google display gold stars in search results?

Yes, but only under certain conditions. Google displays gold stars (rich snippets) for product pages (Product), recipes (Recipe), courses (Course), and a few other types — not for homepages or generic service pages. AggregateRating schema is required to qualify for this display.

Does the rating on your website need to match Google Maps?

Not required to match since they're different sources. But if your website declares ratingValue 4.9 while Google Maps only shows 3.8, AI will trust Google Maps more. Best practice is to use data from Google or combine multiple sources and clearly state the source in the schema.

Can you add Review schema for your own reviews?

No — and Google will penalize you for doing so. Reviews must come from real users, not the website owner or employees. If a review was left by a user on your website, you can mark it up with Review schema. Writing reviews yourself and then marking them up is a violation of Google's policies.

Does AggregateRating schema need to be updated frequently?

Yes — Google can recrawl pages at any time. If you declare ratingValue 4.8 with reviewCount 500 but in reality only have 50 reviews, Google will detect this and may penalize or hide the rich snippet. Update the schema to match actual data at least monthly.

AEO Saigon

An Answer Engine Optimization agency in Ho Chi Minh City — helping business websites get cited by AI. About AEO Saigon →

Want your website to be cited by AI like this?

Free Audit