Preview

What it is.
When markup you added never shows in search, this tells you whether Google could read it at all. Put structured data on your page to enable special features in Google Search results, then check it here.
It renders the page the way Googlebot does, so it catches the markup that only breaks after JavaScript runs. That's the class of bug nobody finds by reading the source.
What you get.
- A pass or fail per structured data type, with the exact field that failed named.
- The HTML Googlebot saw after rendering, which catches markup a framework injects late.
- A code editor mode, so you test the correction before anything is deployed.
- One check per template, which covers every page built from it.
How to set it up.
Paste the live URL and pick the mobile crawler, since that's the one Google indexes with.
Read the detected items list first, because a missing type means Google never saw the markup at all.
Open any warning and check whether the field is required or recommended before you raise a ticket.
Switch to the code editor to test a correction without deploying anything.
Recheck after the page goes live, since template changes break markup more often than content changes do.
Pricing Plans
Rich Results Test
$0
no login, works on a live URL or on pasted code
Use cases
Why the FAQ never showed
Test the URL and read which field failed validation.
Catch late-injected markup
Look at the rendered HTML to see what Googlebot got after the framework ran.
Validate before publishing
Paste the code block for a template change and check it before it reaches every page.
Best for
FAQ and how-to markup
The two types marketing teams add most often, and the two that break most often when a CMS escapes the JSON.
Debugging a page that renders with JavaScript
It shows you the HTML after rendering, which is the only way to see markup a framework injects late.
Checking a template, not a page
Test one page per template and you've covered every page built from it.
Open the tool
Opens on Google in a new tab.
