Seven Schema Tags That Actually Move Citations
We tested 23 schema.org types across 4,000 pages and measured the citation lift for each. Seven tags reliably moved the citation needle; the rest were noise or worse. Here's the ranked list — with the implementation that actually shipped lift, not just validated.
- Schema types tested
- 23
- Pages instrumented
- 4,000
- Tags that moved citations
- 7
“Add more schema” is the most common GEO advice that produces no measurable result. Pages get marked up with five rich-result types, none of them load-bearing, none of them affecting whether the page gets cited. The validators are green; the citations don’t move.
We wanted to know which schema actually does work. Not which validates. Not which qualifies for rich snippets. Which schema, when added or removed, changes whether an LLM cites the page.
So we instrumented 4,000 pages across 11 sites we have GEO-trace data for, ran the same 200 query set every two weeks for ten weeks, and selectively added/removed schema types per page in an A/B-style rotation. Seven types moved citation rate by more than 5 percentage points. Sixteen types were within noise.
If you’re adding schema for GEO and it isn’t on this list, you’re spending engineering time on validation theater.
The ranked list
Lift = absolute change in citation rate (% of queries where the page was cited by at least one engine) when the schema was added versus removed, holding everything else constant.
| Rank | Schema type | Lift | Best engine cluster | Why it works |
|---|---|---|---|---|
| 1 | sameAs on Organization | +14.2 pp | Encyclopedia, Vendor Floor | Anchors the page to Wikidata entity |
| 2 | Article w/ datePublished + dateModified | +11.7 pp | News Wire, Forum | Lets recency-sensitive engines trust the date |
| 3 | FAQPage (3-7 items) | +10.4 pp | Vendor Floor, Forum | Surfaces snippet-shaped Q&A chunks |
| 4 | BreadcrumbList matching visible breadcrumbs | +9.1 pp | All clusters | Disambiguates the page’s place in the hierarchy |
| 5 | Person w/ sameAs on bylines | +7.8 pp | Encyclopedia, News Wire | Authority signal for E-E-A-T weighting |
| 6 | HowTo w/ explicit step[] | +6.5 pp | Vendor Floor | Each step is independently citable |
| 7 | DefinedTerm on glossary entries | +5.9 pp | Encyclopedia | Direct entity-definition match |
Everything else we tested — Product, Review, LocalBusiness, Event, Recipe, VideoObject, Course, and the dozen-or-so others — was within ±2 percentage points of the control. Useful for rich snippets in classic SERP. Inert for LLM citation.
Implementation that actually shipped lift
Each of the seven below is the specific implementation we measured. Half-implementations did not produce the lift; complete ones did.
1. sameAs on Organization — the biggest single win
Organization schema is everywhere. What moved citations was specifically the sameAs array — and specifically when it included a Wikidata entity URL plus at least two of {Wikipedia, LinkedIn, Crunchbase, official Twitter/X, Stack Exchange}.
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Algoholic",
"url": "https://algoholic.net",
"sameAs": [
"https://www.wikidata.org/wiki/Q[your-entity]",
"https://en.wikipedia.org/wiki/[your-page]",
"https://www.linkedin.com/company/algoholic",
"https://twitter.com/algoholic"
]
}
Pages with sameAs linking to Wikidata earned a +14.2 pp citation lift over identical pages with Organization schema lacking sameAs. Pages with sameAs but no Wikidata link earned about a third of that lift. The Wikidata anchor is doing the work.
If you don’t have a Wikidata item yet, getting one — and pointing sameAs at it — is the highest-leverage schema move for GEO we’ve measured.
2. Article with both date fields
Article schema isn’t unusual. What’s unusual is having both datePublished and dateModified, and having them match the visible byline date and the visible “Updated” date on the page.
{
"@type": "Article",
"headline": "Seven Schema Tags That Actually Move Citations",
"datePublished": "2026-05-29T08:00:00Z",
"dateModified": "2026-05-29T08:00:00Z",
"author": { "@type": "Person", "name": "…", "sameAs": ["…"] }
}
The recency-sensitive engines (News Wire cluster) cite pages with date schema +11.7 pp more often than pages without — but only when the schema dates match the visible page dates. When they didn’t match (we tested this by deliberately desyncing them), the lift dropped to +3 pp. The engines appear to cross-check.
3. FAQPage with 3-7 items
The sweet spot is 3-7 FAQ items, each with answers under 800 characters, each answer self-contained (no “see above” or “as mentioned earlier”).
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What schema moves AI citations?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Seven schema types reliably moved citation rate by more than 5 percentage points in our 4,000-page study. Top three: sameAs on Organization, Article with date fields, and FAQPage with 3-7 self-contained items."
}
}
// ... 2-6 more items
]
}
Pages with 8+ items showed lower lift, presumably because the model’s snippet extractor gets noisier with more candidates. Pages with 1-2 items were below the noise floor.
4. BreadcrumbList matching visible breadcrumbs
The lift came specifically from BreadcrumbList schema where every itemListElement matched a visible breadcrumb on the page. We tested two failure modes:
- Schema with more crumbs than visible: no lift
- Schema with different crumb names than visible: no lift, and we observed Google occasionally suppressing breadcrumb display
The implementation that worked:
{
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://algoholic.net/" },
{ "@type": "ListItem", "position": 2, "name": "Research", "item": "https://algoholic.net/research" },
{ "@type": "ListItem", "position": 3, "name": "Seven Schema Tags That Actually Move Citations" }
]
}
5. Person with sameAs on bylines
Author bylines with Person schema, including sameAs links to at least one of {LinkedIn, Google Scholar, ORCID, Twitter/X with verified status, GitHub}, earned +7.8 pp citation lift on E-E-A-T-sensitive engines.
The effect was strongest when the Person also had a worksFor linking to the same Organization whose sameAs linked to Wikidata. The full entity graph chain is what moved citations, not Person schema in isolation.
6. HowTo with explicit steps
HowTo lift came specifically from implementations with step[] populated, each step having name, text, and ideally url (anchored to the step’s heading on the page). Each step becomes an independently citable chunk, which is exactly what extractive retrieval-augmented engines want.
7. DefinedTerm on glossary entries
For glossary or terminology pages, DefinedTerm lifted citation rate +5.9 pp on Encyclopedia-cluster engines. The implementation:
{
"@type": "DefinedTerm",
"name": "GEO",
"description": "Generative Engine Optimization: the practice of optimizing content for LLM-based search engines.",
"inDefinedTermSet": {
"@type": "DefinedTermSet",
"name": "Algoholic AI Search Glossary",
"url": "https://algoholic.net/glossary"
}
}
The inDefinedTermSet anchoring matters — it tells the engine this term is part of a curated set, not an isolated mention. Glossary pages without it earned about half the lift.
What didn’t work
Product schema with aggregateRating is excellent for rich snippets. It did nothing measurable for LLM citation rate. Same for Review, LocalBusiness, Event, and the others. Useful if you want stars in the classic SERP; inert for whether Claude or Perplexity cites you.
A note on Article vs BlogPosting vs NewsArticle: we tested all three head-to-head. Article (the parent type) performed slightly better than the specific subtypes, possibly because the engines are matching on the parent type and the specificity adds no value. The delta was small (~1 pp).
The pattern under the list
All seven of the tags that worked share a property: they make the page easier for the engine to verify.
sameAsmakes entity claims verifiable against authoritative external sources- Date schema makes recency claims verifiable against the visible page
- FAQ schema makes individual claim-answer pairs independently extractable
- Breadcrumbs make the page’s place in the hierarchy verifiable
- Person
sameAsmakes author claims verifiable - HowTo steps make procedural claims independently checkable
- DefinedTerm in a Set makes terminology claims part of a verifiable corpus
The schema that didn’t work — Product, Review, LocalBusiness, Event — is mostly schema that asserts properties without giving the engine a way to verify them.
The schema that moves citations is schema the engine can cross-check.
If you’re prioritizing schema work, this is the heuristic: pick schema that anchors your claims to external authorities (Wikidata, ORCID, official social), and skip schema that just declares facts.
Run a trace through GEO Trace before and after shipping any of the seven above. The lift should show up within 2-4 weeks once the engines re-crawl. If it doesn’t, the implementation didn’t land — most often, the schema is present but the cross-checkable anchor isn’t.