Structured data is the part of your page no visitor ever sees: a small block in the source that tells a machine what the page actually contains. Not as prose, but as a list of named fields — author, date, price, opening hours, question and answer. For search engines this has been routine for years. For AI answer systems it is getting interesting, because what they need from a page is exactly that: unambiguous facts they can take over without guessing.
Why machines need a second copy of your facts
A human reads "open Tue–Fri, 9am to 6pm" and understands immediately. A program has to guess: is that the shop's opening hours, the phone line's, or the café next door mentioned in the same paragraph? That guessing works surprisingly well and still goes wrong regularly, especially on pages full of numbers.
Structured data takes the guessing away. It says: this object is a LocalBusiness, this is its name, these are its hours, that is its location. The gain is not that the machine learns something new — it is all in the text already. The gain is that it knows for certain. And systems that have to compose an answer and back it with a source reach for what they know for certain.
The four types that are enough for a small site
The vocabulary behind structured data is called schema.org and covers over eight hundred types. You need four of them; everything else is refinement.
Organization describes who is behind the site: name, logo, URL, contact, social profiles. This one block is the basis for systems recognizing your brand as a thing with an identity rather than as an arbitrary domain. If you run a shop or a local trade, use LocalBusiness instead and add address and opening hours.
Article (or BlogPosting) describes a piece of writing: headline, author, publication and modification date. The modification date is the underrated part. Answer systems prefer the more current source for time-sensitive questions, and the only reliable statement about that is the machine-readable one you provide yourself.
FAQPage describes question-and-answer pairs. It is the type with the most direct bearing on AI answers, because it makes the mapping "this question is answered here" explicit instead of leaving it to be inferred from headings. An honest caveat on it below.
BreadcrumbList describes where the page sits in your structure. It sounds like housekeeping, but it helps every reader — human or machine — tell whether they are on an overview or a detail page.
If you sell products, add Product with an Offer carrying price and availability. That is the only further type genuinely worth it for most small sites.
How to add the markup
There are three notations for structured data; use JSON-LD. The block sits as its own <script> element in the source, usually in the <head>, entirely separate from the rest of the HTML. That is the practical advantage over the older Microdata and RDFa formats, where the annotation is woven into the visible markup and breaks with the next layout rebuild.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Structured data for AI answers",
"datePublished": "2026-03-14",
"dateModified": "2026-08-01",
"author": { "@type": "Person", "name": "First Last" },
"publisher": {
"@type": "Organization",
"name": "My Company",
"url": "https://my-company.com"
}
}
</script>
Several types on one page go either into several <script> blocks or into one using @graph. Both are valid; several blocks are easier to maintain. In WordPress, Shopify and most site builders a plugin or the theme handles this — in which case your job is mostly to check what it emits rather than to write it yourself.
How to check that it is right
Two tools, two minutes. Google's Rich Results Test (search.google.com/test/rich-results) tells you what Google reads out of your page and whether it qualifies for enhanced presentation. The validator at validator.schema.org is stricter and also reports fields Google ignores but other systems read. Both take a URL, so there is nothing to install.
The third test is the most important and needs no tool: open the page, view source, find the JSON block and read it. Does it really say what the page says? With auto-generated markup the answer is surprisingly often no — an old date, an author called "admin", a price without a currency.
The most common mistake: markup with no cover in the text
Structured data may only describe what is visible on the page. A FAQPage annotation for questions that do not appear in the text, or a rating that is nowhere to be found, is not optimization but a false statement. Google treats it as spam and can ignore your markup across the whole domain; for AI systems it is simply a contradiction between two accounts of the same page, and that damages exactly the trust you were trying to build.
The rule is simple: text first, markup second. Reverse the order and you have built a nice façade in front of an empty room.
What markup can and cannot do for AI answers
It does two things. It makes facts unambiguous, so an answer system can take over price, date or author without interpreting. And it makes relationships explicit — that this text belongs to this organization, that this answer belongs to this question.
It does not make a page rank better. Structured data is not a ranking factor, neither in classic search nor, as far as anyone can judge from outside, in how answer systems pick their sources. It makes sure an already good page is understood correctly; it does not make a weak page win.
And a note on expectations for FAQPage: since 2023 Google has shown the expandable FAQ results in its listings almost exclusively for government and health sites. That does not make the markup worthless — it is still read, and it makes your question-and-answer structure unambiguous for any parser — but anyone adding it for the colourful presentation in the results page will be disappointed.
Where this belongs
Markup is the second of three moves that make you citable in AI answers. The first is clear facts and self-contained paragraphs, the third is an llms.txt as a map of your best pages. How the three work together, and where ChatGPT gets its sources in the first place, is in getting found in ChatGPT.
Frequently asked questions
What is structured data?
Machine-readable annotations in a page's source that name what the visible content means: that this string is a price, that one a publication date, and the third the author's name. The usual vocabulary is schema.org, the usual format JSON-LD.
Is structured data a ranking factor?
No. It does not influence position directly. It does influence how a result is presented and how confidently machines capture a page's facts — which pays into click-through rate and citability indirectly, but it is not a ranking signal.
Which format should I use, JSON-LD or Microdata?
JSON-LD. It sits as its own block in the source and survives layout changes, while Microdata is woven into the HTML of the visible content and breaks easily in the process. All major providers recommend JSON-LD.
How do I test my structured data?
With Google's Rich Results Test for what Google reads out, and with validator.schema.org for the stricter check against the vocabulary. Both only need the URL. It is worth also viewing the source to confirm that auto-generated markup really carries the current values.
Is FAQPage markup still worth anything?
For the expandable FAQ results in Google's listings, barely — since 2023 Google shows those almost only for government and health sites. The markup is still read, and for systems that pull question-and-answer pairs out of a page it is the least ambiguous way to offer them.