Rich results eligibility checker
- Checks run on your device
- Validate by URL uses our server, nothing stored
- Free, no sign-up
Checks run in your browser. Validate by URL is the only step that uses ToolPetal's server, which fetches the page as ToolPetalBot and does not store it. This is not Google's Rich Results Test. A pass here does not mean Google will show a rich result.
| Type | Google feature | Status | What's missing / notes |
|---|
Active vs retired: the short board
Google's Search appearance list changes. This board reflects the status this checker encodes (verified against Google Search Central updates as of October 16, 2026).
| @type / feature | Google Search status | Notes |
|---|---|---|
| Product | Active | Snippet / merchant listing. Needs name plus offers, review, or aggregateRating. |
| BreadcrumbList | Active (desktop only) | Desktop Search only since January 2026. Not shown on mobile. |
| Event | Active | Needs name, startDate, location. Public, physical location events. |
| Article / NewsArticle / BlogPosting | Active | No hard required fields; recommend headline, image, datePublished, author. |
| FAQPage | Retired | FAQ rich results no longer shown as of May 7, 2026. Docs removed June 2026. |
| HowTo | Retired | Retired from Google Search in 2023 (mobile, then desktop). |
Worked example: valid schema.org Product that fails Google
This block is fine as schema.org JSON-LD. It has a Product @type and a name. Load sample "Product (incomplete)" to see it:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Trail Mug"
}
Google's Product rules also require at least one of offers, review, or aggregateRating. This checker marks that gap as required and the row turns red. Add an Offer with price and currency (and ideally an image):
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Trail Mug",
"image": "https://example.com/mug.png",
"offers": {
"@type": "Offer",
"price": "18.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
}
That is the "Product (complete)" sample. The schema markup validator would have passed the incomplete block on structure alone. This page would not call it Google-eligible.
Eligible is not guaranteed
Field presence is a floor, not a ticket. Google still looks at whether the marked-up content is visible on the page, whether the page meets quality and spam policies, and whether that rich result type is shown for your site at all. A green row here means the documented required fields are present. It does not mean Search will render stars, a price, or a breadcrumb trail.
When to open Google's Rich Results Test
Use Google's tool when:
- Your CMS or tag manager injects JSON-LD with JavaScript after load (this page only sees pasted JSON or the raw HTML fetch).
- You need a final confirmation on the live, rendered URL before a launch.
- This checker marks a type as partial (Recipe, VideoObject, JobPosting, LocalBusiness, SoftwareApplication, Course, QAPage, DiscussionForumPosting, ProfilePage, Review, AggregateRating, ClaimReview, VacationRental, Dataset, and similar).
Keep using the schema markup validator for quick structure fixes while you edit.
Limits
- Does not contact Google and cannot predict impressions.
- Does not run JavaScript; Validate by URL reads server HTML only.
- Does not check microdata or RDFa.
- Partial coverage for many Google-supported types: flagged, not fully field-checked.
- Dataset maps to Dataset Search, not ordinary Google Search results.
- Retired types (FAQPage FAQ feature, HowTo, PracticeProblem, SpecialAnnouncement, and others) are called out so you do not waste time chasing a dead SERP feature.
FAQ
Is this Google's Rich Results Test?
No. This rich results eligibility checker runs in your browser. It maps each JSON-LD @type to a Google Search feature, marks features that are still active or retired, and checks the fields Google documents as required for that feature. It does not contact Google and cannot guarantee rich results.
How is this different from the schema markup validator?
The schema markup validator is a local structure and required-field pass/fail for schema.org JSON-LD. This page is about Google rich-result eligibility: which Search feature each type maps to, whether that feature is still shown, and whether Google's required fields for that feature are present. Use both.
Do FAQPage and HowTo still get rich results in Google?
No. FAQ rich results stopped appearing in Google Search on May 7, 2026, and the FAQ docs were removed in June 2026. HowTo rich results were retired in 2023. The markup is still valid schema.org, but it earns no FAQ or HowTo SERP feature.
Are breadcrumbs still shown on mobile?
No. Since January 2026 Google shows breadcrumb rich results on desktop Search only, not on mobile. This checker still validates BreadcrumbList fields because the desktop feature remains active.
Does Validate by URL send my page to Google?
No. ToolPetal's server fetches the public HTML once as ToolPetalBot, returns it to your browser, and does not store it. Eligibility checks then run locally. Google is never contacted.
If this page says eligible, will I get rich results?
Not necessarily. Field presence is only one gate. Google also weighs page quality, whether the marked-up content is visible to users, and policy. Rich results are never guaranteed.
When should I still open Google's Rich Results Test?
When markup is injected by JavaScript, when you need a final confirmation on a rendered page, or when this checker marks a type as partial (Recipe, VideoObject, JobPosting, and similar). Google's tool renders the live page; this one reads pasted JSON or raw HTML only.