Guides

Review Schema Markup: Why Your Stars Won't Show in Google

Review schema markup explained: where star rich snippets really appear, Google's self-serving review rule, and what a local business should do instead.

ReplyOnTheFly Team

Content Team

September 10, 2026
8 min read
Business owner discovering the gold star won't attach to her own website's search listing

Somewhere on page one of every "review schema" search is a guide promising gold stars under your website in Google. Paste some code, wait a few weeks, enjoy the clicks.

For a local business showing its own reviews, that promise has been dead since 2019, and Google says so in writing. Here's what review schema markup actually is, who still gets stars from it, and where your effort actually pays.

Quick answer

Review schema markup is code that describes ratings in a format Google can read, and for eligible content like products and recipes it can produce star rich snippets in search results. It does not work for reviews of your own business on your own website: Google's review snippet rules make pages ineligible when "the entity that's being reviewed controls the reviews about itself," whether the reviews sit in your code or in an embedded Google reviews widget. Your real stars live on your Google Business Profile, and no markup is needed there.

Business owner discovering the gold star won't attach to her own website's search listing
Business owner discovering the gold star won't attach to her own website's search listing

What Review Schema Markup Actually Is

Schema markup is a labeling system. Your page already says things a human understands; structured data repeats the important parts in a vocabulary machines understand, usually as a small JSON-LD block in the page's code.

Review schema is the flavor of that vocabulary for opinions. It tells search engines what was reviewed, who reviewed it, the rating it got, and, with AggregateRating, the average across many ratings.

Woodworker attaching a neat machine-readable tag to his product while a small crawler robot reads it
Woodworker attaching a neat machine-readable tag to his product while a small crawler robot reads it

Here's what a legitimate one looks like on a product page:

Template
{ "@context": "https://schema.org", "@type": "Product", "name": "Handmade Oak Coffee Table", "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.8, "reviewCount": 27 } }

When Google reads that on an eligible page, it may show 4.8 gold stars under the result. That's a review snippet, and it's real; people genuinely do click starred results more.

The markup doesn't create anything, though. It describes reviews that already exist on the page, and Google only rewards it when the page is allowed to have it. That second part is where local businesses get burned.

Where Star Rich Snippets Actually Appear

Google publishes the exact list of what can earn review stars: book, course list, event, movie, product, recipe, software app, and local business or organization pages "only for sites that capture reviews about other local businesses."

Read that last item twice, because it's the one every "add review schema!" guide waves past. A directory that collects reviews about plumbers can earn stars on its plumber listings. The plumber's own website, marking up reviews of the plumber, can't.

So the pattern is: stars go to pages reviewing something else. An online store reviewing products it sells. A recipe site with reader ratings. A review platform profiling businesses. The moment the reviewed thing and the website owner are the same entity, eligibility ends.

The Self-Serving Rule, in Google's Own Words

This isn't an inference from SEO folklore. Google's review snippet documentation states it directly: "If the entity that's being reviewed controls the reviews about itself, their pages that use LocalBusiness or any other type of Organization structured data are ineligible for star review feature."

Google calls these self-serving reviews, and its example of one is painfully specific: a review about entity A placed on entity A's own website, "either directly in their structured data or through an embedded third-party widget (for example, Google Business reviews or Facebook reviews widget)."

Barber trying to pin a gold star onto his own shop's review card while a friendly robot referee gently declines
Barber trying to pin a gold star onto his own shop's review card while a friendly robot referee gently declines

That sentence closes both doors at once. Hand-coding your Google reviews into schema: ineligible. Using a widget that injects review markup for you: same result, and Google named review widgets specifically so nobody could claim the loophole.

The rule arrived in September 2019, when Google switched off self-serving review stars across the board, and it hasn't loosened since. Any tool still promising "review rich snippets for your business" is selling something Google turned off years ago.

Show your reviews to people, not to parsers

Search your business, pick a layout, paste one line of code. Your latest Google reviews on your site, free, updating themselves daily.

Build My Free Widget

What Happens If You Add It Anyway

Two of Google's review snippet guidelines make the self-serving case worse than useless. "Ratings must be sourced directly from users," meaning ratings collected on your page, not compiled elsewhere. And: "Don't aggregate reviews or ratings from other websites." Reviews copied from your Google Business Profile are, by definition, aggregated from another website.

The usual outcome is nothing. Google recognizes the pattern and shows no stars, and your afternoon of code editing buys an empty search listing.

The less usual outcome has teeth. Google's structured data policies say a structured data issue "can result in a manual action," which strips the page's eligibility for rich results. Manual actions don't change your rankings, but they do take away legitimate rich results you might have earned, and they require a review request to undo.

Restaurant owner reading a caution notice that floated out of her website's code
Restaurant owner reading a caution notice that floated out of her website's code

That's a bad trade for stars that were never coming.

The Schema That Is Worth Adding

None of this makes structured data pointless for a local business. It makes one property pointless.

Google's LocalBusiness documentation recommends marking up the facts of your business: name, full address, phone number, opening hours, geo coordinates, and your URL. Restaurants can add menus and cuisine. That markup helps Google confirm the details it shows about you, and there's no eligibility trap because you aren't rating yourself, you're describing yourself.

The same documentation flags aggregateRating and review as recommended "only for sites that capture reviews about other local businesses." So the honest local business setup is LocalBusiness schema with the rating properties left out. Complete facts, zero self-scoring.

Where Your Stars Actually Show Up

Here's the twist that makes the whole schema chase unnecessary: Google already displays your star rating, prominently, with no markup at all.

It's on your Google Business Profile, in Google Maps, and in the local pack above the regular results, computed from your Google reviews. For a local business, those placements get seen far more than a starred blue link ever would. The way to improve them is earning more Google reviews, not editing code.

Florist watering her Google reviews like plants while a map pin with one gold star grows brighter outside
Florist watering her Google reviews like plants while a map pin with one gold star grows brighter outside

And your website still has a review job to do. It's just a persuasion job, not a markup job. Visitors who see real reviews next to your booking button stop leaving your site to go check you on Google, where your competitors are one scroll away. The free Google reviews widget handles that: your latest reviews, visible stars and all, shipped as real HTML that any crawler can read, updating themselves daily. On WordPress, the free plugin renders the review text server-side on every page. Deliberately, neither adds review schema, because Google's rules say it can't help you, and a second block of structured data about your business can conflict with the LocalBusiness markup you should have.

For what embedded reviews genuinely do for search, see do reviews on your website help SEO, and for the full setup walkthrough, start at the complete guide to Google reviews on your website.

The Bottom Line

Key takeaways:

  • Review schema markup produces star rich snippets only for eligible types: products, recipes, events, and review platforms rating other businesses.
  • Your own reviews on your own site are self-serving by Google's definition, and ineligible for stars whether they're in your code or in an embedded widget. That's been true since 2019.
  • Marking them up anyway earns nothing at best, and at worst a manual action that strips rich result eligibility you did qualify for.
  • Keep LocalBusiness schema for your name, address, hours, and phone. Skip aggregateRating and review.
  • Your real stars are on Google Maps and the local pack, built from Google reviews. More reviews there beats any markup, and every one deserves a reply.

That last part is the piece we can carry for you. Create a free account and every new Google review lands in your inbox with a ready-to-send reply drafted in your voice. One tap to approve, no login needed.


Earn the Stars That Actually Show

ReplyOnTheFly watches your Google reviews 24/7 and emails you a ready-to-send reply for each one. More replied-to reviews, a livelier profile, and your best proof on your own site with the free widget.

Start Free - No Credit Card Required
  • Unlimited AI drafts
  • 5 free one-click posts/month
  • Works from your email inbox

Written by ReplyOnTheFly Team

Content Team

Free toolNo signup

Put your reviews on your site

Embed your live Google reviews with one line of code. Carousel, grid, or badge.

Build my widget

Or create a free account to automate replies

review schemastructured datagoogle reviewsreviews widgetlocal seo