Crawler access
Whether your robots.txt lets GPTBot, ClaudeBot, PerplexityBot, Google-Extended and the rest through. Points are split across every bot, so a blanket block costs the lot. This is the gate — fail it and nothing else counts.
Search increasingly happens inside an answer, not a results page. This scan scores whether AI crawlers can reach your content, parse it, and cite you as the source.
One hundred points, weighted by how much each one actually decides whether you appear in an answer.
Whether your robots.txt lets GPTBot, ClaudeBot, PerplexityBot, Google-Extended and the rest through. Points are split across every bot, so a blanket block costs the lot. This is the gate — fail it and nothing else counts.
Valid JSON-LD, a real meta description, Open Graph tags and a meaningful title. This is what lets a model state what your page is about rather than infer it.
How much readable text exists in the raw HTML before JavaScript runs. Many AI crawlers do not execute JavaScript, so a client-rendered page can look empty to them while looking fine to you.
A single h1, real landmark elements, and enough heading structure to give the page an outline. Structure is how a model decides which passage answers which question.
An XML sitemap, an llms.txt file describing your site to language models, and valid EntityMap markup. The cheapest points on this list and the most often missing.
Whether pages respond quickly enough to be fetched reliably at crawl time. Crawlers give up faster than people do.
The referral model that SEO was built on is being replaced by answers that cite a handful of sources. Being one of them is the new ranking.
AI Overviews, ChatGPT search and Perplexity answer the question in place. If your content is not readable by those systems you are absent from the answer, not merely ranked below it.
A robots.txt rule copied from a template, or a CDN bot filter switched on for scrapers, is usually all it takes. Nobody notices, because nothing breaks visibly.
If your content only exists after JavaScript runs, crawlers that do not execute it see an empty shell. This scan tells you what they see, not what you see.
We look at your site the way a language model crawler does.
Your robots.txt is parsed per AI user-agent, so you find out exactly which bots are allowed and which are turned away.
We compare the raw HTML against the rendered page, which is what exposes content that only exists after JavaScript runs.
Six category scores adding to 100, each with the specific gap behind it — a missing sitemap, invalid JSON-LD, a blocked crawler.
What the score means, whether to allow AI crawlers at all, and what llms.txt is for.
One hundred points across six categories: crawler access 30, structured data and metadata 20, rendered content 15, semantic HTML 15, discoverability 10 and performance 10. Crawler access carries the most weight because it is a gate — content a model cannot fetch cannot be cited no matter how well it is marked up.
That is a business decision and the scan does not make it for you. If you want to appear in AI answers, you have to be readable by the systems producing them. If your content is the product — paid research, licensed material — blocking is legitimate, and you should expect a low score here and not care. Note the crawlers are not interchangeable: some fetch for training, some only when a user asks a question in real time, and robots.txt lets you distinguish them.
It is a plain-text file at the root of your site, in the same spirit as robots.txt, that tells language models what your site is and points at the pages worth reading. It is a young convention rather than a ratified standard, but it costs an hour to write and it is a direct, unambiguous statement of what you want quoted. OmniCheck publishes one itself.
It overlaps but it is not the same. Classic SEO optimises for ranking in a list of links. This optimises for being parsed and cited inside a generated answer, which puts far more weight on machine-readable structure — valid JSON-LD, clean heading outlines, content present without JavaScript — and no weight at all on things like backlink profiles.
It means there is little readable text in your HTML before JavaScript executes. Server-side rendering, static generation, or prerendering for crawlers all fix it. The quickest way to see the problem yourself is to view source, rather than inspect the live DOM, and look for your actual copy.
The scan checks the current named agents from OpenAI, Anthropic, Perplexity, Google, Apple, Meta, ByteDance, Common Crawl, Cohere and Amazon, plus Bingbot, which feeds AI answers. The list is configuration rather than code because bot names change faster than releases do.
AI-readiness is one of five checks. Each runs on its own, or all of them together in one score.
Find the barriers that turn visitors away, and the compliance gaps that carry legal risk.
Slow pages lose sales and rankings. See exactly which pages drag, on mobile and desktop.
Dead ends frustrate visitors and quietly drain SEO. We crawl every page and flag every 404.
Passive checks on transport security, defensive headers and public exposure signals.
Know your site is down before your users tell you, and watch its health score over time.
Run every check in one pass and get a single health score with the top three things to fix.