AEO Readiness Scorer

Score any page on the structural signals AI search uses.

Download the script

152 lines. Pure Python 3 standard library. No dependencies, no API keys.

Download .py

How to run it

# Score a saved HTML file
python aeo-readiness-scorer.py page.html

# Or fetch and score a URL directly
python aeo-readiness-scorer.py https://example.com/blog-post

Output is JSON with a per-signal verdict and a prioritized fix list.

Per-signal checks

Twelve signals, each weighted 2–5 by impact on citation likelihood.

w5

llms.txt presence

Root file that tells AI crawlers what to index.

w5

JSON-LD structured data

Schema.org blocks the page exposes.

w4

Schema @types

Article, Product, FAQPage, Organization, etc.

w4

Canonical link

<link rel="canonical"> pointing to the right URL.

w4

FAQ structure

FAQPage schema or definition list pattern.

w3

Title length

Between 30 and 65 characters.

w3

H1 uniqueness

Exactly one h1 on the page.

w3

Meta description length

Between 120 and 160 characters.

w3

Paragraph length

Median paragraph under ~600 characters.

w4

First-paragraph entity density

Named entities packed into the lede.

w3

External citations

Links to authoritative sources.

w2

Heading depth

Reasonable h2/h3 structure.

Credits

The Readiness layer concept is from Aleyda Solis‘s three-layer AEO framework (Presence / Readiness / Impact). This tool implements the Readiness scoring as a runnable script.

About this tool

What is AEO readiness and why does it matter?
Answer Engine Optimization (AEO) is about making your content easy for AI search systems (ChatGPT, Gemini, Perplexity, Google AI Overviews) to extract and cite. The scorer checks twelve structural signals those systems rely on — schema markup, clear headings, FAQ sections, author signals, and more.
Does the scorer crawl my live website?
The scorer is an offline Python script you run locally. Paste your page URL or HTML, and it scores the signals it finds. Nothing is sent to a third-party service.
What are the twelve signals it checks?
Structured data (JSON-LD), heading hierarchy, FAQ markup, author/byline, date freshness, meta description quality, internal linking depth, image alt text, canonical tag, robots.txt, llms.txt presence, and speakable CSS selectors.
How do I improve my AEO score?
Start with the signals marked red in your report. Adding a FAQPage schema and a clear heading hierarchy typically give the biggest immediate lift. The tool links to fix-it guidance for each signal.