Published methodology
How the score is calculated
The score is deterministic: the same page scored twice gives the same number. Nothing about it is a model's opinion — the optional AI read in paid reports is evidence next to the score, never part of it.
- 1
Collect the page the way a crawler gets it
One request for the URL with an honest user agent, redirects followed by hand and re-validated at every hop, a 15-second per-hop timeout and a 4 MiB page cap backed by structural DOM limits. Then robots.txt, llms.txt, Markdown and the sitemap are collected inside one 60-second evidence budget. A 200 that returns HTML where plain text belongs is treated as missing, because SPA hosts answer every path with the app shell.
- 2
Extract facts, never prose
The HTML is parsed once into plain facts: title, meta, headings, links, images, JSON-LD blocks, microdata types, and the visible text with scripts and templates removed. Nothing is judged at this stage.
- 3
Run 31 independent checks
Each check reads those facts and awards part of its own weight. Checks never read each other, so one failure cannot cascade. A check returns points, the evidence it found, and — when it did not score full marks — the fix.
- 4
Sum into 6 categories
Weights are chosen so that the failures that actually remove you from AI answers cost the most. Being blocked in robots.txt for answer engines is the single heaviest check on the page.
- 5
Total and grade
The five core category weights add up to exactly 100. Agent readiness can add up to 8 bonus points, and the displayed total is capped at 100. The grade is a band on that total, while the verdict names your weakest core category.
- 6
Order the fixes
Every check that lost points contributes its fix. They are sorted by recoverable points first and impact second, so the list answers "what buys the most score for one change" rather than "what is most interesting".
Pass, warn or fail
A check passes when it earned all of its points, warns above half, fails below. The training-crawler check is the one exception: it is marked informational, because blocking model-training crawlers is a business decision rather than a mistake.
31 checks across 6 areas, each scored and explained with what we actually found on your page.
Crawlability & access
25 pts- Page loads cleanly for a bot4
- robots.txt is present and parseable3
- AI answer engines can fetch your pages10
- Regional answer engines1
- Training crawlers1
- sitemap.xml lists your pages4
- llms.txt gives AI a curated map of your site2
Content without JavaScript
20 pts- Readable text in the server HTML8
- Page is not a JavaScript-only shell6
- Main content is wrapped in <main> or <article>3
- Text-to-markup ratio3
Structured data
25 pts- Structured data is present6
- Structured data parses as valid JSON3
- Organization is described in machine-readable form6
- Products or services are marked up4
- Question-answering content is marked up4
- Site context markup (WebSite / BreadcrumbList)2
Semantic clarity
20 pts- Descriptive <title>3
- Meta description summarises the page3
- Exactly one meaningful <h1>4
- Headings form a clean outline3
- <html lang> is declared2
- Canonical URL is declared2
- Open Graph metadata2
- Images carry alt text1
Entity discoverability
10 pts- Contact details are machine-readable4
- Pricing is discoverable3
- It is clear what the company does3
Agent readiness
+8 ptsBonus, up to +8 on top of 100. Almost no site scores here yet, so it can only help you — it is never subtracted.
- Page can be served as Markdown3
- Agent-facing interfaces are discoverable3
- Content signals declare how your content may be used2
Grade bands
- A 85–100
- B 70–84
- C 55–69
- D 40–54
- F 0–39