Methodology

How we score your site.

Eight checks, weighted by impact. One grade that tells you where you stand.

What we measure

We fetch your site the way AI crawlers do — a plain HTTP request, no JavaScript rendering. Then we run eight checks, each scored 0–100 and weighted by how much it matters for AI visibility.

Crawler access 25%

Can AI crawlers reach your site? We read your robots.txt for GPTBot, ClaudeBot, PerplexityBot and others, then verify with a live fetch. If crawlers are blocked, nothing else matters.

Content 20%

Is there enough substantive text for AI to work with? We measure word count, content depth, and whether key information appears in the raw HTML (not just after JavaScript runs).

Structure 15%

Exactly one H1, no skipped heading levels, semantic landmarks (header, nav, main, footer). AI needs structure to parse a page into answers.

Metadata 15%

Title tag, meta description, canonical URL, OpenGraph tags, and Schema.org markup. These are the signals AI uses to understand and cite your page.

Citability 10%

Can AI quote your site accurately? We check for clear facts, defined terms, and attributable statements — the raw material for AI answers.

Technical hygiene 10%

HTTPS, valid HTML, no broken links, proper character encoding. The basics that signal a well-maintained site.

FAQ signals 3%

Question-and-answer content that maps directly to how people query AI assistants.

Performance 2%

Page weight and load characteristics. Lighter pages get crawled more thoroughly.

Letter grades

We show a letter grade, not a number. Business owners understand "B+" instantly; "73" requires interpretation.

A+ 97–100
A 93–96
A− 90–92
B+ 87–89
B 83–86
B− 80–82
C+ 77–79
C 73–76
C− 70–72
D 60–69
F Below 60

The gate

If AI crawlers are blocked in your robots.txt, or your page is set to noindex, your score is capped at 40 (a D). Fixing anything else is pointless until the gate is cleared — AI can't see a site it can't reach.

What we don't do

  • We don't run JavaScript. If your content only appears after JS executes, we report it as missing — because that's what simple crawlers see.
  • We don't guess. Every finding in your report links to the exact location on your site where we found the issue.
  • We don't sell your data. Scan results are private to your account.

Informational checks

These don't affect your score, but we report them because they matter:

  • llms.txt — whether you have one, and what it contains
  • ai.json — whether you have one (as a file or embedded JSON-LD), and where we found it
  • Raw vs. rendered — word count comparison showing how much content lives behind JavaScript