Site readiness check
Paste an address. I read the page once, the way a crawler without JavaScript does, and hand it back as a marked-up drawing: how it works for people, how it reads to AI crawlers, and what to fix first.
Specimen. A made-up page.
Left of the line: the page as laid out.Right of it: what is in your HTML without JavaScript.
- Page
- www.specimen.example
- Read
- 11 Nov 2026
- Marks
- 12
- 3
- A finding, numbered to the list beside it.
- A cloud: something there fails.
- The line: drag it to see what a crawler reads.
What comes back
- Two scores out of 100. One for people, one for AI crawlers, with every point accounted for.
- Your page as a marked-up drawing. Each finding numbered on the spot it is about.
- Two readers. Drag one line: the page as laid out against what is in the HTML without JavaScript.
- A fix list to hand over. As a prompt for a coding agent, as markdown, or on paper.
Usually a few seconds. Never more than fifteen.
Before you trust it
What it reads, and what it cannot know.
It measures readiness, not visibility. Visibility means asking the AI products themselves, question by question, and this tool does not pretend to.
It reads
- The page, once. As raw HTML, the way most AI crawlers get it. Vercel measured it: none of the major AI crawlers runs JavaScript. Source
- robots.txt, the sitemap and llms.txt. Read by the rules of RFC 9309, for six search crawlers and eleven others (training crawlers and fetchers that act on a user’s request).
- Up to 15 internal links, to see whether any of them is dead.
- The first byte, three times. From one location, so read it as a hint.
It cannot know
- What an AI system shows or cites. It reports that a crawler is “allowed in robots.txt”. It never says a product can see you.
- What your firewall does. A CDN can turn crawlers away whatever robots.txt says.
- Whether llms.txt helps. It is shown and carries no points. Google says it “will neither harm nor help”. Source
- What it is worth in euros. Each finding is tagged with the stage it hurts. For the money, use your own numbers in the payback calculator.
- Reader
- web0-sitecheck/1.0
- Requests
- 27 at most
How the two scores are weighted
Each score is the points earned over the points that applied (a page without pictures is not marked on pictures). A pass earns all of a check’s points, “needs work” half, a fail none. The bands are Lighthouse’s: 90 and up is good, 50 to 89 needs work, under 50 is poor. The thresholds come from the sources linked on each finding. The weights are my judgement.
| Time to first byte | 10 |
|---|---|
| HTTPS and redirects | 6 |
| HTML weight and compression | 5 |
| Render-blocking scripts | 6 |
| Image format, lazy loading, dimensions | 8 |
| Title, description, Open Graph, viewport | 15 |
| Alt text, labels, language, headings, zoom | 20 |
| A next step near the top | 10 |
| Contact in one click | 10 |
| No broken links | 10 |
| Total | 100 |
| Six search crawlers allowed in robots.txt, 4 each | 24 |
|---|---|
| Indexable, with a snippet | 8 |
| robots.txt answers | 3 |
| Words in the raw HTML | 15 |
| Headline and menu in the raw HTML | 10 |
| Title, headline and description agree | 6 |
| Organization and page-type data | 9 |
| Canonical address and language | 5 |
| Says what you do | 6 |
| Pricing, FAQ, contact, sitemap | 14 |
| Total | 100 |
The address you type travels in the request and stays in this tab. It is not written to the URL, to a cookie or to my analytics. The server keeps the result in memory for ten minutes so that the same page is not fetched over and over, then forgets it. The checker announces itself to your server as web0-sitecheck/1.0.
If the list says the fix is in how the site is built, the next step is 20 minutes.