For the complete documentation index, see llms.txt. Every page on this site is also served as Markdown: append `.md` to any URL, or send `Accept: text/markdown`.
Attensira Logo
Attensira
SEO Glossary

Schema markup

The Schema.org vocabulary and the JSON-LD you embed with it, what it is genuinely good for, and the limits of what it can make happen.

Karl-Gustav KallasmaaKarl-Gustav Kallasmaa, Founder & CEOLast updated

Schema markup is structured data written using the Schema.org vocabulary and embedded in a page so that machines can read its facts without inferring them from prose. Google defines structured data as a standardized format for providing information about a page and classifying the page content, and recommends JSON-LD as the easiest solution for website owners to implement and maintain at scale.

The vocabulary is larger than most people assume and smaller than it looks in practice. Schema.org reports that version 30.0, dated 19 March 2026, consists of 823 types, 1,529 properties, 19 datatypes, 96 enumerations and 535 enumeration members. Of those, only a modest subset is actually consumed by any given search feature, which is why "use more schema types" is rarely useful advice.

What it is genuinely for

Structured data buys eligibility, not advantage. Google's introduction to structured data frames it as including all required properties to be eligible for appearance in Google Search with enhanced display. Eligibility is a gate, not a lever: passing it does not promise the enhanced result, and no amount of extra markup pushes harder.

There is a second, quieter benefit that survives every algorithm change. Writing a Product, Organization, FAQPage or Article block forces you to commit to explicit values — a price, a date, an author, a name — in one place, in a form that cannot be hedged. Pages that can state their facts explicitly tend to be pages that state them explicitly in the prose too, and prose that states facts explicitly is prose an answer can quote.

The rule that gets sites in trouble

Google's guidance is blunt: do not add structured data about information that is not visible to the user, even if the information is accurate. The markup must describe what the reader actually sees.

That single rule accounts for most structured data penalties and most wasted effort. Marking up reviews that do not appear, prices the page does not show, or an FAQ block with questions no visitor is offered is not an optimisation with a small risk attached; it is outside the guidelines as written. If you want the benefit, put the content on the page first and describe it second.

How it differs from llms.txt and from a sitemap

Three files get grouped together as "machine-readable metadata" and do different jobs.

  • Schema markup describes the meaning of what is on one page: this string is a price, this person is the author.
  • An [XML sitemap](/glossary/xml-sitemaps) describes what exists and when it last changed. It carries no meaning about content.
  • llms.txt is a proposed convention for pointing language models at a curated set of documents. It is a proposal rather than a standard, and it is not an access control. Structured data vs llms.txt and llms.txt vs robots.txt compare them properly.

None of the three grants access. That decision belongs to robots.txt and the serving rules, and a beautifully marked-up page that a crawler may not fetch is invisible in exactly the same way an unmarked one is.

How to act on it

  1. Start with the types tied to a feature you actually want, and implement their required properties completely. Partial markup earns nothing.
  2. Use JSON-LD, kept in one block, generated from the same data that renders the page. Markup maintained separately from the page drifts within a quarter.
  3. Validate on real URLs, not on pasted snippets, so you test what is served rather than what you intended.
  4. Mirror only what is visible. If a value is not on the page, either add it to the page or drop it from the markup.
  5. Do not expect it to unlock AI citation. Google states there are no additional requirements or special optimizations for its AI experiences; the eligibility that matters there is being indexed and snippet-eligible. See AI overview.

Frequently asked questions

How large is the vocabulary?

At version 30.0, 823 types, 1,529 properties, 19 datatypes, 96 enumerations and 535 enumeration members.

Which syntax should I use?

JSON-LD, which Google recommends as easiest to implement and maintain at scale.

Does it improve rankings?

No. It creates eligibility for particular presentations when the required properties are present.

Can I mark up things the page does not show?

No. Google's guidance forbids structured data about information not visible to the user.

Frequently Asked Questions about Schema markup

At version 30.0, released 19 March 2026, the vocabulary consists of 823 types, 1,529 properties, 19 datatypes, 96 enumerations and 535 enumeration members. Only a small subset of those types is supported by any given search feature.

JSON-LD. Google's documentation recommends it as the easiest solution for website owners to implement and maintain at scale, and it has the practical advantage of sitting in one block rather than being woven through your markup.

It makes a page eligible for particular enhanced presentations when the required properties are present. It is not a ranking input, and Google does not promise a rich result even when the markup is valid. Treat it as eligibility, not leverage.

No. Google's guidance is explicit: do not add structured data about information that is not visible to the user, even if the information is accurate. Markup that describes something the reader cannot see is a violation of the guidelines, not a shortcut.

There is no published mechanism that says so, and Google states there are no additional requirements or special optimizations for appearing in its AI experiences. The defensible reason to publish it is that it forces you to state facts explicitly and consistently, which is useful to any reader, human or machine.
Share this term

Track how your brand shows up in ChatGPT, Claude, and Google AI

Attensira monitors your visibility across AI search platforms so you know exactly when and how you're being recommended.