Google Rich Results Test: How to Test and Fix Errors
A step-by-step guide to the Google Rich Results Test: what it checks, how to read the result and how to fix the most common errors.
Google Rich Results Test is Google's free tool for checking whether a page has structured data that qualifies for rich results in Google β such as product results, breadcrumbs, events or review stars. It is the first tool to open after you have added or changed schema markup on a page.
Here we cover how to use the test, how to read the result, and how to fix the errors you typically run into.
What does the Rich Results Test check β and what doesn't it?
The tool lives at search.google.com/test/rich-results and answers one question: Can this page be shown as a rich result in Google Search?
That means two important limitations:
- The test only shows the types Google supports as rich results. Other valid schema.org markup β such as
Serviceβ is not shown, even if it is correct. - A valid test is no guarantee that Google will actually show a rich result. Google decides that based on quality, relevance and the query.
To validate all schema.org markup β including types Google does not use for rich results β add the Schema Markup Validator (validator.schema.org). The difference and the overall process are covered in testing and validating schema markup.
How to use the Rich Results Test step by step
1. Choose URL or code
- URL: Enter the address of a publicly accessible page. Google fetches and renders the page the way Googlebot would β including JavaScript.
- Code: Paste HTML or a JSON-LD block directly. Useful before the code is live.
2. Choose the crawler
By default the test uses the smartphone crawler, because Google primarily indexes the mobile version of pages. You can switch to desktop if you want to compare.
3. Run the test and read the headline
The result starts with one of two conclusions:
- Page is eligible for rich results β at least one valid type was found.
- Page is not eligible for rich results β either there is no supported markup, or it has critical errors.
4. Review the detected items
Under "Detected items" you see each type Google found β such as breadcrumbs, product snippets or organization. Each type can have:
- Valid items β all good.
- Warnings β recommended properties are missing. The item can still be shown, but often with fewer details.
- Errors β required properties are missing or values are invalid. The item cannot be shown as a rich result.
Click an item to see exactly which property is missing or wrong.
5. View the tested page
Under "View tested page" you can see the HTML Google actually rendered, a screenshot, and information about resources that could not be loaded. This is invaluable when structured data is injected with JavaScript: if the markup is not in the rendered HTML, Google has not seen it either.
The most common errors β and how to fix them
"Missing field" (required)
Example: a Product is missing offers, review and aggregateRating. Google requires at least one of them for product results. Fix: Add the missing property with data that is also visible on the page.
"Invalid value"
Example: a price written as "$1,299.00" instead of "1299.00", or a date without a valid ISO 8601 format. Fix: Use the formats schema.org and Google expect β numbers without currency symbols, the currency in priceCurrency, dates like 2026-09-28 or with a time zone.
Syntax errors in JSON-LD
A missing comma or an extra quote makes the whole block unreadable. Fix: Paste the block using the code option in the test, find the line with the error and correct it. Generated blocks are far less error-prone than hand-written ones.
The markup is not detected
Typical causes: the page is blocked in robots.txt, the page requires login, or the markup is injected by a script that fails. Fix: Check the tested page ("View tested page") for resource errors, and make sure the page is publicly accessible to Googlebot.
Duplicate or conflicting markup
When the theme, the SEO plugin and other plugins each add their own Organization or BreadcrumbList, the type appears several times β often with different information. Fix: Let one source own each type, and use @id to tie the entities together. Read more in entity governance.
Types that no longer produce rich results
Google keeps changing which features exist. FAQ rich results β the expandable questions directly below a search result β have been deprecated (Google added a deprecation notice to its documentation in May 2026), and HowTo is no longer on Google's list of types with rich results. The Rich Results Test will therefore not show them as rich results. FAQ content and FAQ markup still have value, though: questions with clear answers are strong content for both search engines and AI assistants, and correct structured data helps them understand the page. See which types can still produce rich results in our guide to rich results.
Rich Results Test, Search Console and Schema Markup Validator β when to use which?
- Rich Results Test: One page at a time, right after you change it.
- Search Console (Enhancements and URL Inspection): An overview of the whole site and the errors Google finds while crawling. This is also where you see whether fixes have been validated.
- Schema Markup Validator: Full schema.org validation, including types without rich results.
Testing at scale
On a site with hundreds of pages, manual testing page by page is not realistic. It makes more sense to generate and validate the markup automatically on every change and use the Rich Results Test for spot checks. That is the approach AI Schema Generator takes on WordPress.
Frequently asked questions
What is the difference between the Rich Results Test and the Schema Markup Validator?
The Rich Results Test only shows whether the page qualifies for the rich results Google supports. The Schema Markup Validator validates all schema.org markup, including types Google does not use for rich results. Use both.
Why are my rich results not showing even though the test is valid?
A valid test only means the page can qualify. Google decides whether a rich result is shown based on quality, relevance and the specific query, among other things. The page also has to be indexed.
Can I test a page that is not published yet?
Yes. Choose code instead of URL and paste the HTML or JSON-LD directly. That way you can fix errors before the markup goes live.
Should I fix warnings, or only errors?
Errors must be fixed, because they prevent rich results. Warnings concern recommended properties; the item can still be shown, but often with fewer details. Fix them when you have the data and it is also visible on the page.
How often should I test?
After every change to templates, plugins or markup β and as regular spot checks. For ongoing monitoring of the whole site, Search Console is better than manual tests.
Summary
The Rich Results Test tells you whether a page can get rich results in Google β and exactly which properties are missing if not. Always fix errors before warnings, check the rendered HTML when markup is injected with JavaScript, and use Search Console to monitor the whole site. If you are unsure about the basics, start with what is structured data.