# Aggregate-rating schema and Google rich snippets

Those review stars under a search result come from aggregate-rating schema, not from having reviews. Here is how to earn the stars, and how to keep them.

By Rohin Aggarwal · 2026-01-24

The brand's PDP had a 4.7-star average across 1,200 reviews and a Google snippet that showed nothing at all. The cause was a single missing field in the aggregate-rating schema. The fix took six minutes. The rich snippet appeared inside seventy-two hours.

**Quick answer**

- Review stars in search results, rich snippets, come from structured data, not from having reviews.
- AggregateRating and Review schema are what make a search engine show the stars, and both have to attach to the Product entity to count.
- The schema must be valid, tied to the product, and consistent with the visible page.
- Never fake it. Review-snippet abuse is detected, and a manual action removes the stars entirely.

A product result in Google with a row of stars and a review count under it gets noticed, and clicked. Those stars are not a reward for having reviews; they are a rendering of structured data the page emitted, nothing more. No schema, no stars. It does not matter how many reviews you hold.

## What are rich snippets?

A rich snippet is an enhanced search result. For products, that usually means star rating, [review count](/blog/review-volume-benchmarks) and price shown right there in the listing. It lifts click-through because it carries proof and information before the click, which makes it one of the highest-value SEO surfaces available. And it is entirely schema-driven.

## Which schema makes the stars appear?

Two structured-data types do the work. AggregateRating carries the overall score and the count, while Review carries the individual reviews themselves: author, rating, date. Both must attach to the Product entity, validate against the schema, and match what is actually visible on the page. A rating in the markup that the shopper cannot find on the page is a mismatch. Search engines penalise it. The same markup also [feeds AI shopping agents](/blog/aeo-for-reviews-getting-ratings-quoted-by-agents), which is why this overlaps so heavily with the wider work in [structured data and schema for product UGC](/blog/structured-data-schema-for-product-ugc).

| Schema type | Carries | Required for |
| --- | --- | --- |
| AggregateRating | ratingValue, reviewCount (or ratingCount) | The star rating and count in the snippet |
| Review | author, reviewRating, datePublished | Per-review eligibility and corroboration |
| Product (parent) | name, the entity both attach to | Tying the rating to the right product |

_The two schema types behind a product rich snippet._

## How do you earn and keep the stars?

1. Emit valid AggregateRating and Review schema on product pages.
2. Source it only from real, attributable reviews with real dates.
3. Make sure the markup matches the visible reviews exactly.
4. Validate with a structured-data testing tool, and re-check after any template change.
5. Monitor Search Console for review-snippet issues or manual actions.

The stars are also a Core Web Vitals question, not only a markup one. A review widget that injects layout late, or an iframe Googlebot times out on, can cost you the snippet even when the JSON-LD is perfect. Speed is part of eligibility. Keep the rendering fast and the markup server-readable, the approach in [Core Web Vitals for UGC widgets](/blog/core-web-vitals-ugc-widgets), so the data is there when the crawler arrives.

> **Never fake the rating:** Synthesising reviews to inflate an AggregateRating count, or emitting rating schema not reflected on the page, is review-snippet abuse. Search engines detect it. The result is a manual action that strips your stars entirely, and the same fabricated data erodes trust with AI agents. The stars are never worth the penalty.

> Stars are a rendering of structured data, not a reward for having reviews, so earn them with clean, honest markup and never risk them by faking the count.
> — Rohin Aggarwal · Co-founder, Idukki

**The rich-snippet rule:** Stars come from valid, honest schema tied to the product, so earn them with real reviews and clean markup, and never risk them by faking the data.

> **How Idukki helps:** Idukki surfaces real reviews on your product pages and supports the structured data behind them, so the stars you show are backed by genuine, attributable reviews.

### Sources & notes
- [Google Search Central, review snippet structured data](https://developers.google.com/search/docs/appearance/structured-data/review-snippet) — Implementation and policy for review snippets.
- [Schema.org, AggregateRating & Review](https://schema.org/AggregateRating) — The structured-data types.
- [Google, Core Web Vitals](https://web.dev/articles/vitals) — Why rendering speed affects snippet eligibility.

- **+18%** — Median PDP CVR lift from UGC (Idukki page-level)
- **+22%** — Median AOV lift (Same cohort)
- **+44%** — Compound RPV lift (CVR x AOV)
- **+31%** — Median dwell-time lift (Idukki dataset)

_Core ecommerce + UGC metrics worth tracking._

---
Canonical: https://idukki.io/blog/aggregate-rating-schema-and-rich-snippets
Tags: ai-search, seo, structured-data, reviews
