Build review and rating markup the way Google actually wants it: an AggregateRating nested inside a SoftwareApplication, Product, or Organization entity. Pick your case, fill the form, and the output is validated live against required and recommended fields.
These numbers must match reviews a visitor can read on the page.
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"applicationCategory": "BusinessApplication",
"operatingSystem": "Web",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": 4.6,
"reviewCount": 123,
"bestRating": 5,
"worstRating": 1
}
}name SoftwareApplication is missing required property "name".description SoftwareApplication is missing recommended property "description". Adding it improves rich result eligibility.url SoftwareApplication is missing recommended property "url". Adding it improves rich result eligibility.image SoftwareApplication is missing recommended property "image". Adding it improves rich result eligibility.Copy the snippet first, then paste it into either tool's code tab.
Paste this inside your page's <head>. The markup must live on the page it describes, alongside the visible reviews.
Review markup is never a standalone thing in practice. Stars in search results come from an AggregateRating (an average score plus a count) attached to the entity being rated. This tool covers the four combinations we see most often: a SaaS app as SoftwareApplication, a product page with individual reviews, an organization profile, and a single standalone Review. Each mode composes the right nesting for you, so you never have to remember whether reviewCount goes on the rating or the product.
The validation panel under the output applies the same checks as our JSON-LD validator: missing required properties show as errors, missing recommended ones as warnings, and out-of-range rating values get flagged before Google ever sees them.
We get asked this constantly. SoftwareApplication is the type Google documents for apps, and its rich result needs name, applicationCategory, operatingSystem (use “Web” for a web app), and at least one of aggregateRating or offers. Product works too, and its rich result rules are looser about category fields, which is why some SaaS marketing sites prefer it. Our take after shipping both: use SoftwareApplication for the app itself and reserve Product for pages that sell a concrete plan or bundle. Whichever you choose, keep the rating on the page where the reviews are visible.
Google also expects the reviews behind the numbers to be verifiable. Ratings imported from a third-party widget that renders only in JavaScript, or worse, numbers typed in by hand with no reviews on the page, are exactly what gets rich results revoked. If you need a compliant way to collect verified reviews and generate this markup automatically, TheWebRatings (our product) does that for SaaS apps.
SoftwareApplication is the natural fit for an app and it is what Google's software app rich result expects: name, applicationCategory, operatingSystem, plus a rating or an offer. Product also supports ratings and some SaaS sites use it for pricing pages. Pick one type per page and keep it consistent; marking the same page as both invites confusion, not extra stars.
No tool can guarantee that. Valid markup makes the page eligible, and Google then decides per query. The common blockers are ratings that do not match visible reviews on the page, reviews collected on a different site, and self-serving markup on Organization pages.
Google's review snippet documentation explicitly excludes reviews about an entity published by the entity itself when the type is Organization or LocalBusiness. The markup is still valid schema.org and useful for AI crawlers and data completeness, but it will not produce stars. We would rather tell you that up front than let you wonder why nothing shows.
Yes. The rating value and count must reflect genuine reviews that a visitor can read on the same page. Google runs spot checks, and fabricated ratings risk a manual action that removes rich results across your whole site. Collect real reviews first, then mark them up.
Free, no signup. Everything runs in your browser; the form state is saved to your own browser's localStorage so you can come back later, and nothing is sent to our servers.
TWR adds AggregateRating schema to your public review page automatically — free. Collect verified reviews inside your app and let us handle the structured data.