Schema markup helps AI search by making a page's facts explicit and machine readable: who published it, what kind of content it is, and how its parts relate to each other. It doesn't rank a page or force a citation on its own, but it removes the ambiguity that makes a model skip a source it can't quickly verify. Skip the markup and a crawler still has to guess; guessing is where citations go to competitors.
Does schema actually change what gets cited?
Not directly. Google's own guidance is blunt about it: adding structured data doesn't guarantee inclusion in AI Overviews or rich results, and neither OpenAI nor Google publish a ranking boost for it. What schema does is cut the work an extraction layer has to do. When a model or crawler hits a page, it's trying to answer questions fast: is this an article or a product page, who wrote it, when, is this the canonical version. Plain HTML forces an inference for each one. Schema states it. A model choosing between two similarly good sources will favour the one it can parse with confidence over the one it has to interpret.
Which schema types actually matter for AI search?
Three do most of the work, in this order.
- Organization, with
sameAs. This is entity resolution: it links your site to the same business named on your Google Business Profile, LinkedIn, Crunchbase, or industry directories. A model that can confirm you're the same entity across sources treats a claim on your site as corroborated rather than isolated. - Article or BlogPosting, with dates and author. Content typing plus
datePublishedanddateModifiedtell a model whether it's looking at current guidance or something stale. Pages that never update theirdateModifiedquietly lose ground to fresher competitors. - BreadcrumbList. Cheap to add, and it tells a crawler where a page sits in the site's hierarchy, which supports topical authority: an article three clicks under a relevant hub reads differently than an orphaned page.
FAQPage and HowTo are worth a caveat. Google stopped showing most FAQ and HowTo rich results in search back in 2023, so don't add them expecting a visual snippet. The markup can still help a model parse a genuine question-and-answer structure, but it's not a substitute for writing the answer plainly in the body text, which is what actually gets quoted.
What does correct implementation look like?
JSON-LD in a single <script> block, not microdata scattered through the HTML. Use one @graph with entities linked by @id (an Organization defined once, referenced everywhere it's needed) rather than repeating the same facts in slightly different wording on every page. And the markup has to match the visible page exactly. If the JSON-LD claims an author, a date, or a price that isn't shown to a reader, that's a mismatch a crawler can catch, and it's the kind of inconsistency that erodes trust in every other claim the page makes.
What's the most common way this breaks?
Template leftovers. A schema block gets copied from an older page, the visible content changes, and the JSON-LD doesn't. Six months later the markup says one thing and the article says another. The second most common failure is validating with a rich-results preview tool and stopping there: a single misplaced comma can make an entire JSON block fail to parse, and a visual checker won't always catch that, only a strict JSON parser will.
A third failure is treating schema as a one-time task. A price changes, a page gets a new author, a product goes out of stock, and the update happens in the visible copy but never reaches the markup below it. Nobody notices because nothing on the rendered page looks wrong. The mismatch only surfaces when a crawler compares the two and quietly downgrades trust in the source, with no error message to tell you it happened.
How do you check it's actually being read correctly?
Run the raw JSON-LD through a parser, not just a visual tool: one syntax error breaks the whole block silently. Then check Google's Rich Results Test and Search Console's enhancement reports for parsing errors. There's no direct equivalent for confirming a language model ingested your schema; the same entity-consistency check from getting cited by AI answers applies here too. Keep your name, address, and offer worded identically across your site and the profiles your sameAs links point to.
Where to start
Add Organization schema with verified sameAs links to the homepage first: it underwrites every other claim the site makes. Then BlogPosting and BreadcrumbList on content pages. We run exactly this graph on kiwastudio.com, hand-written, no framework, so what's audited is what ships. On client platforms like Princess Garage and Nova Drive, the same principle carries into Product and Offer schema on inventory pages, so a listing's price and availability are as legible to a crawler as they are to a customer.
Clean markup is table stakes, not the whole strategy.
Request a GEO audit