Asset 20 8 2
Does AI recommend your business? Run the free check →

Join 15,000 business owners, marketers and entrepreneurs. The Sunday newsletter you'll be annoyed only arrives once a week.

Article

How to Test Schema Markup: Validators, Rich Results and Fixes

To test schema markup, paste the page URL or the code into Google's Rich Results Test to see which rich result types Google can read and any errors, then run it through the Schema Markup Validator to check the schema.org vocabulary itself. After publishing, watch the rich result reports in Search Console, because a clean test doesn't guarantee Google will show a rich result.

Those are two different questions. The Rich Results Test asks 'can this page get a Google rich result?' The Schema Markup Validator asks 'is this valid schema.org?' Markup can pass the second and still earn nothing from the first, because Google supports only some types and has its own required properties.

Step by step: test a page with the Rich Results Test

  1. Open the Rich Results Test and choose URL or Code.
  2. For a live page, paste the full URL. Google says every resource must be reachable by an anonymous visitor, so pages behind a login or firewall can't be tested by URL.
  3. For a draft, choose Code and paste the HTML or JSON-LD. You can edit it and rerun the test as often as you like.
  4. Pick the user agent. The default is smartphone, and you can switch to desktop.
  5. Read the results: which rich result types were found, plus any errors or warnings. Click an item to open the code explorer at the line that caused it.
  6. Fix errors first, rerun, then publish.

One trap from Google's help page: the test ignores comments inside JSON-LD, but the JSON-LD standard doesn't support them, so they can break the markup in real use. Strip comments out before you publish.

Errors, warnings and 'valid' explained

ResultWhat it meansWhat to do
ErrorA required property is missing or broken, so the item isn't eligible for that rich resultFix before publishing
WarningA recommended property is missing; the item can still be eligibleAdd it if you have the real information
Valid items detectedGoogle can read the markup for that featurePublish, then monitor in Search Console
Crawl failed or page not crawlableGoogle couldn't fetch the page (for example blocked by robots.txt)Fix access first, then retest

On warnings, Google's own advice is to give fewer but complete and accurate recommended properties, rather than trying to fill every possible one.

When to use the Schema Markup Validator

Use it for schema.org types Google doesn't turn into rich results, such as Organization details or types you add for other platforms and AI tools. It checks the vocabulary and structure. It won't tell you whether Google will show anything special.

Which format to test: JSON-LD, Microdata or RDFa

The Rich Results Test supports all three. Google says all three formats are equally fine as long as the markup is valid, and it recommends JSON-LD in most cases because it's easiest to implement and maintain. Google can also read JSON-LD that's added dynamically, which matters if a plugin or tag manager injects it.

The mistakes that cost rich results

Passing the test isn't the end. Google's general structured data guidelines list the problems that can lead to a manual action, which removes a page's eligibility for rich results:

  • Marking up content that visitors can't see on the page.
  • Irrelevant or misleading markup, such as fake reviews.
  • Markup that doesn't match what the page is about.

Google also says plainly that it doesn't guarantee structured data will show up in results, even when everything is correct. If a rich result never appears, check the page's quality and relevance before you blame the code. To check for a manual action, open the Manual Actions report in Search Console.

Testing a whole site, not just one page

The Rich Results Test checks one URL at a time, which is fine for a new template but slow for a big site. The smart way is to test one example of every template you use: a blog post, a product page, a category page, an FAQ page, a location page. Most sites have only a handful of templates, and the markup on each one is generated the same way across every page that uses it. If the example passes, the rest usually will too.

Then retest the same examples whenever you change your theme, swap an SEO plugin or add a new tag manager script. Those are the moments markup breaks quietly. A site crawler that extracts structured data can help you spot pages where the markup has gone missing altogether.

Work with me

Want AI doing the heavy lifting in your marketing?

I build the systems that handle the boring 80 percent, so you get your week back. Done properly, with the human kept in.

Monitor after you publish

Search Console has rich result status reports for the supported types it finds on your site. Check them a week or two after publishing and after any theme or plugin change, since a template update can break markup across hundreds of pages at once.

If you're generating markup rather than writing it by hand, my roundup of schema markup generators compares the options, and for local businesses there's a ready-made service-area schema cheat sheet. Full SEO suites can also flag broken structured data during a crawl; I've compared them in Semrush alternatives.

My verdict

Test every new template in the Rich Results Test before it goes live, use the Schema Markup Validator for anything Google doesn't display, and only mark up what's visible on the page. Then let Search Console tell you what Google picked up. Clean code is the entry ticket, not the prize.

Frequently asked questions

What's the best way to test schema markup?

Use Google's Rich Results Test to see which rich results Google can read, and the Schema Markup Validator to check the schema.org vocabulary. Then monitor Search Console's rich result reports.

Can I test schema before a page is live?

Yes. In the Rich Results Test, choose Code and paste your HTML or JSON-LD. You can edit and rerun it as often as you like.

Why isn't my rich result showing even though the test passes?

Google says it doesn't guarantee structured data will show in results. Eligibility is only the start; quality and relevance also count.

Is JSON-LD better than Microdata?

Google says all three formats are equally fine if the markup is valid, and recommends JSON-LD in most cases because it's easiest to maintain.

What's the difference between an error and a warning?

An error means a required property is missing or broken, so the item isn't eligible. A warning means a recommended property is missing, but the item can still be eligible.

Published and maintained by the Lilach Bullock team, covering marketing, AI and business growth.
Your buyers are asking AI who to use. Does it say you?

See for free whether ChatGPT, Claude, Perplexity, Gemini and Google name you, and get the plan to become the answer.

Check my AI visibility →
Sundays only

Get the Sunday newsletter.

One email a week. AI experiments, marketing tactics, and the workflows Lilach is building right now in her own business.

Subscribe free

Let’s get your marketing running on AI.

Book a free 30-minute call

We figure out what you need, where AI fits in, and what working together would look like.

Book the call →

Or take the 30-second calculator

You’ll see the hours and the money quietly leaking out of your week, and the three workflows worth building first.

Take the calculator →

Or grab the free AI resource library

Prompt packs, templates, checklists, and swipe files. The exact tools I build for paying clients. Yours, free.

Get the library →
Keep reading

More from the blog.