TutorialPractitioner11 min readPart of GEO Practitioner

Structured Data Testing for AI

How to test structured data when AI visibility is the goal: Rich Results Test, Schema Markup Validator, URL Inspection, rendered HTML and a QA routine.

Dipuck Jones
Written by Founder of MentionX · 13+ years in B2B SaaS growth and SEO
Reviewed
Short answer

Test structured data with three tools: Google's Rich Results Test for Google features, the Schema.org Markup Validator for general schema.org correctness, and Search Console's URL Inspection to see what Googlebot actually rendered ([Google](https://search.google.com/test/rich-results), [Schema.org](https://validator.schema.org/), [Google](https://support.google.com/webmasters/answer/9012289)). There is no AI-specific test, and Google says no special schema is needed for its AI features (Google).

Key takeaways
  • Use the Rich Results Test for Google eligibility and the Schema Markup Validator for general schema.org validity.
  • Check both raw and rendered HTML, because some crawlers don't run JavaScript.
  • Markup must follow Google's policies: match visible content and use the right types.
  • Build a QA routine that tests templates before launch and monitors Search Console after.

Facts are from Google Search Central and Schema.org, accessed 30 Oct 2026. Points marked "Our view" are interpretation.

Checked on 31 October 2026. "Our view" marks MentionX opinion. Ledgerline is a fictional company used for illustration.

01Which tool answers which question?

QuestionTool
Is it eligible for a Google rich result?Rich Results Test
Is the schema.org syntax and vocabulary valid?Schema Markup Validator
Did Googlebot see the markup after rendering?URL Inspection
Are there errors across the site?Search Console rich result reports
Does markup match the page?Manual review

Our view: the Schema Markup Validator matters for GEO because many useful types, such as sameAs on Organization or DefinedTerm, aren't Google rich results, so the Rich Results Test won't evaluate them.

02How do you test a page step by step?

  1. Fetch the raw HTML and confirm the JSON-LD is there:
curl -s https://www.example.com/page | grep -c 'application/ld+json'
  1. Run the Schema Markup Validator on the URL. Fix syntax errors and unknown properties.
  2. Run the Rich Results Test if the type is a Google feature (Product, Article, Organization and so on). Fix errors, then review warnings.
  3. Use URL Inspection on live pages to check the rendered HTML and detected structured data.
  4. Compare to visible text: names, prices, ratings, dates and authors must match what users see.

03Why check raw HTML as well as rendered?

Vercel and MERJ found that major AI crawlers they studied didn't execute JavaScript (Vercel). Our view: if your JSON-LD is injected by a tag manager or client-side script, Google may see it after rendering while AI crawlers don't. Put markup in server-rendered HTML.

04What do Google's policies require?

From Google's structured data guidelines (Google) and AI features guidance (Google):

  • Markup must represent the main content of the page.
  • Don't mark up content that's hidden from users.
  • Structured data should match visible text.
  • Violations can make a page ineligible for rich results.

05How do you test before a page is live?

Both the Rich Results Test and the Schema Markup Validator accept a code snippet as well as a URL (Google, Schema.org). Our view: paste the rendered template output from staging into the code input, so errors are caught before release. Don't rely on the URL option for staging sites behind authentication, because the tools can't reach them. After launch, re-test with the live URL, since CDN caching, plugins and consent scripts can change the final HTML.

06What should a QA routine look like?

Our view:

WhenCheck
Before releaseValidator and Rich Results Test on templates in staging (use code input)
After releaseURL Inspection on one URL per template
WeeklySearch Console rich result reports for new errors
MonthlyManual match check on 10 priority pages
After CMS or theme updatesRaw HTML check for missing JSON-LD

Test per template, not per page: if the product template is right, all products usually are, but check edge cases such as out-of-stock items or missing ratings.

07What errors are most common?

ErrorCauseFix
Missing required fieldTemplate doesn't output itAdd field or remove the type
Price mismatchMarkup cached, page updatedGenerate both from one source
Duplicate Organization blocksPlugin plus themeKeep one, link with @id
Review markup on own products from selfPolicy issue (Google)Use genuine reviews only
JSON-LD only after JSTag manager injectionServer-render
Invalid date formatNon-ISO datesUse ISO 8601

08Can you test how AI uses your markup?

Not directly. Our view: the best proxy is to check whether AI answers state facts that live in your markup correctly, such as price, founder or release date. Keep a fixed prompt set, run it monthly, and log errors. If an assistant gets a fact wrong, check that the visible text and markup agree, then look at third-party sources it may be citing instead.

Our view: give your Organization a stable @id (for example https://www.example.com/#org) and reference it from Article publisher and Product brand instead of repeating the details. The Schema Markup Validator shows the resolved graph, which makes inconsistencies easy to spot. See Organization schema.

10Exercise

Exercise

Pick one template each for articles, products and your home page. Run all three tools, log every error and warning, fix the errors, and compare raw versus rendered HTML for JSON-LD presence.

11Checklist

  • JSON-LD in raw HTML
  • Validator clean
  • Rich Results Test clean for Google types
  • URL Inspection confirms rendered markup
  • Markup matches visible text
  • Weekly Search Console check

12From MentionX data: which pages engines citeOriginal data

Method. Read-only aggregate queries over MentionX scans from 22 August to 29 October 2026 (UTC): 2,217 engine runs (2,154 completed) across 18 anonymised projects and six engines.

Structured data testing protects the pages engines cite. In the MentionX sample, those pages span several types:

Cited URL typeShare of 9,750 citations
Blog or article19.6%
Homepage10.0%
Review page2.7%
Docs2.6%
Pricing1.9%
Wikipedia1.6%

Engines also differ in how often they cite anything:

EngineBrand mentionedAnswers with no citations
Gemini47.3%50.7%
OpenAI42.9%30.2%
Perplexity31.5%4.1%
AI Mode31.3%12.6%
Copilot26.0%47.0%
DeepSeek24.0%99.0%

Our view: no public test shows how an AI engine uses your markup. What you can test is whether the markup is valid, matches the page and is visible to crawlers that don't run JavaScript.

Limits. A convenience sample of mostly B2B software projects, run through engine APIs, which can behave differently from the consumer apps. Perplexity, Copilot and DeepSeek figures come from a single day (26 October 2026), so treat them as a snapshot, not a trend.

13Worked example: Ledgerline adds markup testing to its release checklist

Ledgerline is a fictional accounts-payable tool. Figures are illustrative.

After a redesign, Ledgerline's article pages lose their Article markup without anyone noticing for weeks. The team adds structured data checks to its release process.

Before each release, a developer tests one page per template in the Rich Results Test and the Schema Markup Validator, and compares the raw HTML with the rendered HTML to confirm the JSON-LD is present in both. After release, the SEO lead checks Search Console's enhancement reports weekly for new errors.

The team also keeps a sheet of each template, the markup types it should carry and the properties it uses, so any change to a template triggers a re-test.

14How do you choose which pages to test?

List each template on your site, such as articles, product pages, pricing and author pages. Pick one representative URL for each, plus any pages with unusual content. Test those after every template change. Our view: a short list tested often beats a full crawl tested rarely.

15How do you read test results?

Errors usually mean a required property is missing or invalid, and they can make a page ineligible for a rich result. Warnings usually mean a recommended property is missing. Fix errors first. Check that the detected items are the ones you expected, because a page may carry markup you didn't know about from a plugin or tag manager.

16How do you handle markup from plugins?

Content management plugins often add markup automatically. Check what they output, and remove duplicates when two plugins mark up the same item. Keep one source for each markup type so changes are predictable.

17How do you monitor markup after launch?

Search Console's enhancement reports show errors by type over time. Set a regular review and investigate any sudden change. Crawl the site periodically with a tool that extracts structured data, so you can spot pages that lost their markup.

18How do you compare raw and rendered HTML?

View the page source to see the raw HTML the server sends, and use the URL Inspection tool in Search Console or the Rich Results Test to see the rendered HTML. Check that the JSON-LD block appears in both. If it only appears after rendering, crawlers that don't run JavaScript won't see it. Our view: serve markup in the raw HTML wherever you can.

19How do you check markup matches the page?

Compare each marked-up value with what readers see, such as the headline, author, dates, prices and ratings. Values that don't appear on the page, or that differ, break Google's guidelines. Automate this check where possible by generating markup from the same data as the visible content.

20How do you handle staging sites?

Test markup on staging with code snippets before release. Make sure staging is blocked from indexing, but don't copy that block to production. Check robots.txt and noindex tags after each release.

21What should a markup inventory include?

List each template, the markup types it uses, the properties and where the values come from. Note the owner of each template. Update the inventory when templates change, and use it to plan tests.

22How do you prioritise fixes?

Fix errors on templates that cover the most pages first, then errors on high-value pages such as pricing and product pages. Leave warnings for optional properties until errors are fixed.

Where markup references other items, such as an author or an organisation, check that the ids and urls are consistent across pages. The same organisation should use the same name, url and logo everywhere. Our view: consistent entity references make it easier for engines to connect your pages to the right brand.

24Who should own structured data?

Give one person responsibility for the markup inventory and the QA routine, usually an SEO lead or developer. Make sure template changes go through them, or at least trigger a test.

25How do you document fixes?

Record each error found, the cause, the fix and the date. Over time, the log shows which templates cause the most problems and where testing should focus.

26How do you test markup in bulk?

Use a site crawler that extracts JSON-LD to check every page of a template, not just one sample. Export the results and look for missing properties, empty values and pages without markup. Compare the counts with the number of pages in each section. Our view: a monthly bulk check catches problems that single-page tests miss, such as markup dropped from older pages.

27How do you report on markup health?

Share a short monthly summary with the number of errors by template, what was fixed and what's outstanding. Keep it simple so developers and content teams can act on it.

28Common questions

Which tool should we use first? The Rich Results Test for Google features, then the Schema Markup Validator for general validity.

Does valid markup guarantee a rich result? No. Google decides whether to show rich results, even for valid markup.

Can we test pages before they're live? Yes. Both tools accept code snippets, so you can test staging HTML.

Questions people ask

3 answers

Is there a structured data test for AI Overviews or ChatGPT?

No dedicated one. Google says no special schema is needed for its AI features. Test with the Rich Results Test, the Schema Markup Validator and URL Inspection.

What's the difference between the Rich Results Test and the Schema Markup Validator?

The Rich Results Test checks markup against Google's supported rich result features. The Schema Markup Validator checks schema.org markup generally, including types Google doesn't use.

Why does markup pass the test but not show in AI answers?

Valid markup is not a guarantee of any feature. Our view: it must also match visible content and the page must be crawlable and indexed.

Sources

  1. Google, Rich Results Test; URL Inspection; structured data policies; AI features; review snippetsearch.google.com
  2. Schema.org, Schema Markup Validatorvalidator.schema.org
  3. Vercel, The rise of the AI crawlervercel.com
Written and reviewed by Dipuck JonesHow we research and testReport an error

Keep learning

All Technical →