The methodology behind /tools/aeo-scorer
Show your work, or AI search won't quote it.
Seven dimensions. Thirty-seven cited studies. A real piece's score, broken open. This page is the rubric, the math, the limits, and the receipts.
Continue reading ↓
01 · A real score
Start with one specific piece, not a brochure.
Any defensible rubric should be willing to score a piece you already know is good — and stand by the result. Here's the AEO post HubSpot published in April 2026, broken open dimension by dimension.
Real score · 2026-04-27 run
HubSpot — Answer Engine Optimization Trends
"One of the most thorough AEO posts on the open web. Still scored 48."
- Authority & E-E-A-T0/30
Anonymous byline. Zero Tier-1 citations. No original-data block. No JSON-LD.
- Entity Specificity13/20
21 named entities; mixed analytical vs. listed.
- Structural Extractability18/20
Clean H2/H3 hierarchy. Median chunk 240 words. Table present.
- Question Subheadings5/10
Zero question H2s — baseline. Optimal range is 1–2.
- Semantic Clarity7/10
H1 maps to query intent. Some undefined jargon.
- Freshness5/10
Updated April 2026. No current-year stats anchored.
Five of the six public dimensions land in the normal range. One — Authority — comes back at zero. The score collapses on a single dimension, and the fix list runs four lines long. That's what this rubric is built to surface.
02 · The 7 dimensions
Six public dimensions, one skill-mode dimension, and the weights they carry.
Every dimension opens with the principle any AEO rubric needs to address — then shows how this scorer implements it. Expand a card for the sub-scores, the calibration source, and three real examples.
04 · The engine room
How a piece becomes a score
A defensible rubric isn't a black box you trust on faith. It's a pipeline you can stand inside.
Below is a real piece — Juan's "AI subsidy" post — 207 words, predicted D — moving through the five stages of the scorer. Different piece than the hero, same engine.
Every AI company is losing money on you. On purpose. Anthropic burns 70 cents of every dollar they bring in. OpenAI spent $8.67B on inference in 9 months — nearly double their revenue. Perplexity spent 164% of its revenue on compute alone. You are getting a venture-capital-subsidized free ride right now.
entities: [Anthropic, OpenAI, Perplexity, Uber, DoorDash, Amazon, Spotify] numerics: [70%, $8.67B, "9 months", 164%, 41%, $2.50, "near-zero"] headings: [h1: "Every AI company is losing money on you"] lists: [1 bulleted (4 items), 1 numbered (4 items)] tables: [] date_detected: 2026-03-09
authority → 3/30 (no byline, no Tier-1 citations, no methodology, no schema) entity → 17/20 (8 entities, 7 numerics, all in analytical claims) structural → 3/20 (single H1 only, no H2 hierarchy, 207 words too short) questions → 5/10 (zero question H2s — baseline) clarity → 9/10 (sharp, defined, dense) freshness → 4/10 (60-day-old post, current-year stats) ──────────────────────────── rule_total → 41/100 (F)
[OK] entity_density 8 entities, all topically relevant no stuffing flag [OK] keyword_repetition raw repeat count below threshold no stuffing flag [NOTE] short_form 207 words below typical-blog threshold not penalized — short-form intentional [FLAG] authority_floor authority 3/30 = bottom-decile signal surface as Top Fix #1 [FLAG] no_date_in_body date inferred from filename, not content surface as Top Fix #3
score: 41/100 grade: D engines: Google AIO 38% ChatGPT 41% Perplexity 42% Bing 38% Top fixes (ranked by point yield): 1. Add named byline + author credentials line (+10 authority) 2. Add 2 Tier-1 citations for the $8.67B claim (+10 authority) 3. Add JSON-LD article schema with author field (+5 authority) 4. Add a single question H2: "Why is AI cheap right now?" (+5 questions) Projected post-fix score: 71/100 (C). One afternoon of editorial work.
end of pipeline · score returned · QA-flagged fixes ranked
04 · The QA layer
A second pass nobody else runs.
Most AEO rubrics stop at the rule layer. This one runs a second pass — an LLM-judged sanity check that catches false positives, surfaces calibration nuance, and converts raw scores into a ranked fix list.
False-positive intercept
Rule layer flagged a piece for keyword stuffing because the phrase "AI search" appeared 14 times. QA layer confirmed the phrase is the topic of the piece. Flag suppressed.
Calibration nuance surfaced
Short-form piece (207 words) flagged as below-threshold. QA layer reads the intent — short-form post versus stub — and exempts the word-count penalty while preserving the structural sub-score.
Actionable-fix promotion
Rule layer scored Authority 3/30. QA layer promotes it to Top Fix #1 with the specific four sub-score breakdown the editor needs to act on, not just a number to feel bad about.
05 · Sources
Where the rubric came from.
Thirteen distinct inputs grouped into five buckets. Each bucket taught the rubric a different lesson — and every entry says which one.
01 / 05
Foundational research
Peer-reviewed and academic work that defined the rubric's theoretical floor.
Princeton GEO Paper
Patel et al. 2024 — Generative Engine Optimization (arXiv)
What this taught the rubric. Established the academic baseline: AI search citations are governed by retrieval signals distinct from classic SEO. Justified separating Entity Specificity and Structural Extractability into independent dimensions.
AirOps Engine Analysis
n=79,000 AI engine queries across Google AIO, ChatGPT, Perplexity, Bing (Q1 2026)
What this taught the rubric. Authority signals correlate r=0.81 with citation share. The single strongest empirical case for weighting Authority at 30/100 instead of 20/100.
02 / 05
Engine signals
What AI engines actually do — measured against real content, not described by vendor marketing.
Wellows Citation Correlation Study
2026 — Wellows.io — passage-shape vs. quotation rate (r=0.81)
What this taught the rubric. Passage-shape compliance correlates as strongly with citation as authority does. Drove the four sub-scores inside the Structural dimension.
Quattr Freshness Curve
2026 — Quattr.com — 76% citation rate at <30 days, 3.2× decay over 90 days
What this taught the rubric. Freshness decays non-linearly. The 30 / 31–90 / 91–180 day brackets in the Freshness sub-scores are calibrated against this curve.
Metrics Rule Question-Heading Study
2026 — Metrics Rule — 54.2% citation lift at 1–2 question H2s, 31.8% at 5+
What this taught the rubric. Question headings have a sharp optimal range. Directly defined the non-linear 10 / 5 / 3 scoring band in the Question Subheadings dimension.
03 / 05
Competitor research
Existing AEO rubrics audited for what they catch — and what they miss.
SearchEngineLand GEO Guide
Tor.app — "Mastering Generative Engine Optimization in 2026" — Feb 2026
What this taught the rubric. Strong on structural cues, weak on anti-gaming. The four-phase framework informed the Structural sub-scores; its absence of a stuffing layer motivated this scorer's anti-gaming cap.
Conductor 2026 AEO Benchmark
Conor Baker + Wesam Rafidi — "Financials AEO/GEO benchmarks" — April 2026
What this taught the rubric. Original quantitative research with disclosed methodology. Calibration ground for the original-data sub-score inside Authority.
HubSpot AEO Trends Post
blog.hubspot.com/marketing/answer-engine-optimization-trends — updated April 14, 2026
What this taught the rubric. The post used as the hero example. Demonstrated the Authority-gap pattern (clean structure + zero E-E-A-T) that the rubric needed to surface visibly.
04 / 05
Experiments
Original data runs — the dataset this scorer was built against, not just calibrated to.
Series 1 W1 Dataset
20 marketing blog posts scored full-rubric — Networking/Content/series-1/w1-dataset.md — April 2026
What this taught the rubric. Mean score 40.1/100 across HubSpot, Buffer, Moz, Ahrefs, Semrush, Neil Patel, etc. — confirmed the rubric distinguishes high-effort content from high-AEO content. Authority-floor is industry-wide.
JUA-119 Calibration Corpus
10 hand-picked pieces — Networking/research/aeo-test-corpus — April 2026
What this taught the rubric. Variance testing fixture (Juan's own posts, top AEO competitors, SEO-stuffed, edge cases). Validated <10pt run-to-run variance on the three benchmark pieces.
05 / 05
Field notes
Edge cases that calibrated the rubric's failure modes — the pieces it had to score sensibly even when it disagreed with intuition.
Anthropic short-form post
anthropic.com/news/claude-design-anthropic-labs — 231 words
What this taught the rubric. Confirmed the rubric rewards high-signal short-form (B grade, not D). The QA layer's short_form note prevents word-count penalty from dominating.
Untitled UI image-heavy explainer
untitleduI.com/blog/what-is-a-design-system — 126+ embedded images, thin text
What this taught the rubric. Forced a known calibration artifact into the rubric: image-heavy content under-scores by 10–20 points. Documented in Honest Limitations rather than papered over.
Two SEO-stuffed listicles
comparebestai.com and thesmarketers.com — Q1 2026
What this taught the rubric. Stress-tested the anti-stuffing gates. One piece used [artifact:web:1] placeholder citations — drove the Tier-1 citation whitelist instead of a generic link-count heuristic.
06 · Honest limits
Six things this rubric gets wrong on purpose.
Listing limits builds trust the way a clean score never can. Each one names the failure, what the scorer does instead, and when a human read should override the number.
-
Limit 01
The QA layer adds latency
Each scoring call runs the rubric a second time through an LLM pass to catch rule-based false positives — typically 3–8 seconds added per call. When the QA pass disagrees with the rule layer, both are surfaced.
When to override: short, time-sensitive drafts where re-scoring later is acceptable. Or batch mode — the latency averages out across files.
-
Limit 02
Image-heavy content under-scores
The scorer reads text only. A piece where most of the informational signal lives in 126 embedded screenshots will score lower than its actual reference value. The Untitled UI design-system explainer scored C despite being widely cited.
When to override: if your content is primarily visual reference material, expect a 10–20 point penalty that's a calibration artifact, not a real deficiency. Score the text-only version against this rubric, then add visual back.
-
Limit 03
Voice scoring is skill-mode only
The public scorer at this URL drops the Voice / Brand Authenticity dimension. That dimension requires brand context (banned-word lists, sentence-rhythm patterns, stance posture) the public tool doesn't have. Voice runs only when /aeo-scorer is invoked inside Claude Code with brand-identity.md loaded.
When to override: pair the public AEO score with a human voice read, or run /aeo-scorer through the skill if you have the brand corpus.
-
Limit 04
Anti-stuffing caps are intentional false-negatives
Five-plus question H2s caps the Question Subheadings dimension at 3/10 even if the questions are genuinely useful. This is a calibration choice — the data showed 5+ headings correlated more with gaming than with citation.
When to override: FAQ pages, glossaries, or any document where 5+ question sections are structurally required. Expect the cap, read the rest of the score, and discount the headings penalty.
-
Limit 05
Tier-1 citation list is finite
The Authority citations sub-score requires links to a fixed whitelist (.gov, .edu, Reuters, AP, NYT, WSJ, Bloomberg, FT, Nature, Lancet, PubMed). A peer-reviewed paper from a non-listed publisher scores Tier-2 even if it's better evidence.
When to override: when your piece cites the best evidence available rather than the highest-tier domain, the score under-rewards rigor. Flag it on review.
-
Limit 06
Freshness doesn't read intent
An analytical piece about 1970s consumer psychology gets the same Freshness penalty as a stale news brief. The rubric biases toward recency without distinguishing time-sensitive from timeless.
When to override: timeless analytical pieces should expect a 5–8 point Freshness deficit that doesn't reflect content quality. Score the other five dimensions and read the total accordingly.
Run it
Run the scorer on your own content.
Or read how the rubric got here:
Last updated · 2026-05-19 · Methodology rev. 1