How-to

How to test schema markup: validators and generators compared

To test schema markup, run the page through Google's Rich Results Test to see whether it can produce a Google rich result, then through the Schema Markup Validator at validator.schema.org to check the schema.org syntax. After publishing, use the URL Inspection tool and the Search Console reports to confirm Google found the markup and to catch errors on live pages. Generators can write the JSON-LD for you, but they do not test it.

By Plato Belmont, founder of Magnet Mint, Boston. Updated

The tools, and which one to use when

Schema markup is the structured data in your page’s code that says “this is a business, this is its phone number, these are its hours”. Writing it is half the job. The other half is checking that it is valid, that Google can read it, and that it matches what visitors see. If you are still deciding what to add, start with schema markup for local service businesses, then come back here. This guide is part of our AI search optimization library.

Google’s own testing guidance gives a sequence. Validate during development with the Rich Results Test, confirm Google has found the markup with the URL Inspection tool, then monitor the rich result status reports in Search Console after deployment, because pages can break after release through templating or serving problems.

ToolWhat it checksUse it whenLimits
Rich Results TestWhether the markup can produce Google rich results, for a public URL or pasted codeBefore and after publishing, for any Google featureCovers only the roughly 25 to 30 features Google supports
Schema Markup Validator (validator.schema.org)All schema.org-based structured data, without Google feature-specific warningsYou use types Google has no rich result for, or want a syntax checkSays nothing about Google eligibility
URL Inspection tool (Search Console)Whether Google has found the structured data on a pageAfter publishingNeeds a verified Search Console property
Rich result status reports (Search Console)Valid and invalid items across your site over timeMonitoringReports only the features Google supports
Unparsable structured data reportMarkup Google could not parse at allMarkup does not appear anywhereAppears only when Google finds such data
Generators (for example Technical SEO’s JSON-LD generator)Nothing. They write markupStarting a first draftYou must test and maintain the output

How to test schema markup, step by step

  1. Open the Rich Results Test. Google’s tool accepts either a publicly accessible URL or pasted code, and runs with a smartphone or desktop crawler. Use the URL for a live page and the code box for a draft that is not published yet.
  2. Read the results by severity. Search Console’s help page separates critical issues, which make an item invalid and block a rich result, from non-critical issues, which appear under “Improve item appearance” and do not block one. Fix critical issues first.
  3. Run the same page through the Schema Markup Validator. Google describes it as the tool for generic checks, which validates all schema.org-based structured data embedded in web pages without Google feature-specific warnings. If the Rich Results Test shows nothing for a type it does not support, this is the check that still tells you the syntax is right.
  4. Compare the markup with the visible page. Neither tool can tell you whether the phone number in the markup is the one on the page. Open the page and read both. Google’s guidelines say not to mark up content that is not visible to readers.
  5. Publish, then use URL Inspection. Google recommends it to confirm that Google has found the structured data on a page. Allow time for recrawling.
  6. Watch the Search Console reports. After deployment, check the rich result status reports and, if they appear, the unparsable structured data report.
  7. Retest after every template change. Plugin updates, theme edits and page-builder changes are the usual cause of markup that was valid last month and is broken now.

Rich Results Test vs Schema Markup Validator

The two tools exist because they answer different questions. In a Google SEO Office Hours session in December 2022, a Googler explained that the schema.org Markup Validator checks whether the markup’s syntax is valid overall, and the Rich Results Test checks whether the markup could make the page eligible for a rich result in Google Search. She also noted the Rich Results Test only checks the roughly 25 to 30 features Google supports.

So these results are all normal:

  • Passes the Validator, nothing in the Rich Results Test. Your type is valid schema.org but Google has no rich result for it.
  • Passes the Rich Results Test, no rich result in Search. Google says correct markup enables a rich result but does not ensure it. Google’s algorithms choose the best format for each search.
  • Warnings in one tool, none in the other. The Validator does not apply Google’s feature rules, and the Rich Results Test does.

Note that Google’s documentation changelog shows FAQ rich results stopped appearing in Search on May 7, 2026, and the FAQ documentation was removed in June 2026, so do not expect any Google tool to show a FAQ preview. We explain what that means in FAQ, review and breadcrumb schema.

Common schema errors and how to fix them

1. The JSON is broken (unparsable markup)

Google’s Unparsable structured data report lists markup Google could not parse because of a serious syntax error, so it could not tell which type was intended. Google lists these causes: malformed JSON such as a missing colon, comma or brace, invalid string escape sequences, wrong value types (a string where a number or array is expected), duplicate unique properties such as two @context values, and an itemref pointing to an ID that does not exist. Template errors often explain why one error hits many pages.

A typical mistake is a trailing comma. This example is broken on purpose, so do not copy it:

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "Example Plumbing",
  "telephone": "+1-555-010-0100",
}

The comma after the last property makes the object invalid JSON. Remove it. Google’s fix steps: test with the Rich Results Test, and if the error is hard to find, start from an empty object and add content back piece by piece until the error returns. Then click “Validate Fix” in Search Console. Fixing a parsing error can also expose new warnings that were hidden before, so retest.

2. A required property is missing

Each Google feature has required properties. For LocalBusiness, Google’s documentation requires name and address. For Review it requires author, the reviewed item, and a reviewRating with a ratingValue. For AggregateRating it requires ratingValue and at least one of ratingCount or reviewCount. Google also says that including all required properties matters: otherwise the item is not eligible for enhanced display.

Prefer fewer recommended properties that are complete and accurate over many that are half filled in.

3. The markup does not match the page

This is the error no tool catches. If your markup says you open at 8am and the page says 9am, or it lists reviews or questions that are not on the page, it breaks Google’s guidelines. Structured data problems can lead to a manual action, which removes rich result eligibility. Fix the source of truth first, then the markup.

4. The page is blocked

Google’s guidelines say not to block pages that carry structured data with robots.txt, noindex or other access controls. A page Google cannot crawl or index cannot use its markup.

5. The wrong type, or an ineligible use

Review markup on your own LocalBusiness pages for reviews you control is not eligible for star ratings, according to Google’s review snippet documentation. The test can show valid markup for a use Google does not reward. Read the feature’s guidelines, not only the tool’s checkmark.

6. Dates without a time zone or in the wrong format

Google’s Article documentation asks for datePublished and dateModified in ISO 8601 format with a time zone, otherwise Google assumes the one Googlebot uses. It also asks for a separate author entry for each author, with a url or sameAs link.

7. Old vocabulary

Markup using data-vocabulary.org is no longer eligible for rich results. Replace it with schema.org JSON-LD.

Schema markup generators: what they do and do not do

A generator is a form. You fill in the business name, address, hours and similar fields, and it writes JSON-LD. Technical SEO’s Schema Markup Generator, for example, outputs JSON-LD. That is useful for a first draft, particularly for LocalBusiness, Organization, Service, FAQ and breadcrumb markup. But a generator cannot know your page, and it cannot tell you the markup is eligible for anything.

Use one like this:

  1. Generate the markup with accurate, current values.
  2. Paste it into the page, in a script tag, near the end of the body or in the head.
  3. Run the Rich Results Test and the Schema Markup Validator on the live URL.
  4. Compare the markup with the visible text.
  5. Put a reminder on your calendar to recheck when hours, prices or services change.

Google recommends JSON-LD because it sits in a script tag separate from the visible text and is easier to maintain at scale. Microdata and RDFa are also supported. Schema.org’s own getting started guide shows all three formats.

If you use WordPress, your theme or SEO plugin may output some schema for you. Test the live page and see what is actually there before adding more. Two sources writing the same type of markup can leave you with duplicate or conflicting data, so keep one. See WordPress websites if you want a site where you control this.

A pre-publish checklist

  • The Rich Results Test shows no critical issues for each feature you use.
  • The Schema Markup Validator shows no syntax errors.
  • Every value in the markup is visible on the page and correct today.
  • The page is crawlable and not marked noindex.
  • One source produces each type of markup, not two.
  • You know how you will recheck after the next site change.

What testing cannot tell you

Testing proves the markup is valid. It does not prove that Google or an AI assistant will show or cite it. Google says there is no special schema.org structured data you need for its AI features, and that structured data should match the visible text. Nobody controls what Google AI Overviews, ChatGPT or Perplexity recommend, and we do not promise placement. We promise clean structure and a measured before and after.

How we handle it at Magnet Mint

On sites we build, we write the schema, test the live pages with both Google tools, and check the Search Console reports after launch. If you already have a site, our GEO/AEO audit includes a schema check and a written list of fixes. It is from $750. You can also ask for a free demo. Prices are as of October 2026.

Published . Updated .

Frequently asked questions

What is the best schema markup validator?

There are two official ones for different jobs. Google's Rich Results Test checks whether markup can produce a Google rich result. The Schema Markup Validator checks schema.org syntax in general, without Google-specific warnings. Use both, and then the URL Inspection tool on the live page.

Why does my markup pass the Schema Markup Validator but show nothing in the Rich Results Test?

The tools measure different things. A Google employee explained in 2022 that the Rich Results Test only covers the roughly 25 to 30 structured data features Google supports, so it will not report types outside that set. Markup can be valid schema.org and still not qualify for a Google feature.

Is a schema markup generator safe to use?

Yes, as a starting point. A generator writes JSON-LD from the values you enter, and that is all it does. You still have to test the output, make it match the visible page, and keep it current when your hours, phone number or services change.

Does passing the Rich Results Test mean I will get a rich result?

No. Google says correct markup enables a rich result but does not ensure one. Google's systems choose the result format for each search, and markup that is misleading or hidden can still be ineligible.

How do I add schema markup to a WordPress site?

Paste JSON-LD into the page in a script tag, or use the schema options of your theme or SEO plugin. Either way, test the page's live URL afterward, because the output of a plugin is what matters, not its settings screen.

How long until Search Console shows a fixed error as resolved?

For the Unparsable structured data report, Google says validation can take up to about two weeks, and you get an email when it succeeds or fails.

Sources

  1. Google Search Central: Intro to structured data (testing steps), October 2026
  2. Google Search Central: Schema markup testing tools, October 2026
  3. Google Rich Results Test, October 2026
  4. Google Search Central: General structured data guidelines, October 2026
  5. Google Search Central SEO Office Hours transcript, December 2022, October 2026
  6. Search Console Help: Unparsable structured data report, October 2026
  7. Search Console Help: Rich result status reports, October 2026
  8. Google Search Central: Documentation updates (FAQ rich result removed, May and June 2026), October 2026
  9. Google Search Central: AI features and your website, October 2026
  10. Google Search Central: Local business structured data, October 2026
  11. Google Search Central: Article structured data, October 2026
  12. Technical SEO: Schema Markup Generator (JSON-LD), October 2026
  13. Schema.org: Getting started with schema.org, October 2026

Related reading

Start with a free demo

See how customers and AI assistants see your business today.

A short call, then a demo for your business: what customers find, what AI answers say, and where you lose leads. No obligation.