The pillars are not worth the same
If they can't get in, nothing else gets to matter.
- Access45 %
- Readability35 %
- Structure20 %
Methodology
21 checks, three pillars weighted differently, and one rule that stops an average from hiding a fatal problem. Here it is in full, so you can argue with it.
The process
21 checks
This list comes straight out of the analysis engine, it isn't written by hand: if we add a check, it shows up here on its own. The weight is what it is worth within its pillar.
The agents that search live and cite with a link. Blocking them costs you real visibility.
A noindex in the tag or in the HTTP header leaves the page out, even when the crawler gets in.
If the page does not answer with a 2xx, there is nothing to read.
A badly tuned WAF hands a challenge to legitimate agents. Your robots.txt says yes and your infrastructure says no.
A server error on robots.txt is read as a blanket ban on crawling.
Basic requirement. Without it, several agents don't even try.
Every hop is a chance to lose the crawler along the way.
An agent resolving a live question is in a hurry: someone is waiting on the answer.
Blocking them is a legitimate editorial decision and does not affect whether you get cited. We tell you; it costs you no points.
No relevant AI crawler runs JavaScript. If the content is assembled in the browser, what they see is an empty page.
A patch, not a fix: it is there to warn, not to replace.
The most basic signal about what the page is about.
With no declared language, the content can end up in the wrong group.
Marking up with <main> or <article> separates the content from the menu and the footer.
Saying outright what otherwise has to be inferred from the prose.
One comma too many and the whole block is discarded. There is no graceful degradation.
If the same page is reachable through several URLs, the signal is split between them.
Declaring something is not the same as declaring who you are: that takes an entity type.
The first thing anyone reads of the page, on it and away from it.
The list of what you want found, without depending on links.
The summary shown when somebody finds you.
The distinction people get wrong most often
Blocking GPTBot keeps your content out of a model's training, but it doesn't stop ChatGPT from citing you: that takes OAI-SearchBot and ChatGPT-User. Same with Google-Extended, which only governs Gemini's training and not the AI Overviews. That is why we check the 19 agents separately and only penalise the blocking of those that affect citation.
The score
If they can't get in, nothing else gets to matter.
If your server doesn't return the HTML, we don't invent a verdict about something we haven't seen: the check drops out of the calculation and is declared separately. Rounding it up would be lying with a number.
6 of the 21 checks take no points away: if they fail, the overall score cannot go above 39. An average would hide one fatal failure behind fifteen minor wins.
90–100
70–89
40–69
0–39
What we don't measure
The available research suggests that not even the most closely correlated external signal explains more than a small fraction of why a model recommends a brand, and that most of the behaviour cannot be observed from outside. Promising that prediction would mean selling something nobody can stand behind. Parsigo stops at the prerequisite, which is measurable and stable over time.
The 21 checks against your domain, in a few seconds. Free and with no sign-up.