AI search guide
What AI visibility actually depends on — and how to check it without asking ChatGPT a thousand questions
“AI visibility” is whether an answer engine — ChatGPT, Claude, Perplexity, Google’s AI Overviews, Copilot — can find your site, read it, and trust it enough to cite it. Those three verbs are three separate mechanisms, and each one can be checked from the outside. That is what the tool above does: it reads your site the way the crawlers do, then asks the public sources the models learn from whether they know you exist.
How an answer engine finds a page
Every AI engine runs named crawlers, and every one of them obeys robots.txt. The names matter because they do different jobs:
- Search crawlers build the engine’s own index of the web — OpenAI’s
OAI-SearchBot, Anthropic’sClaude-SearchBot,PerplexityBot,Bingbotfor Copilot,Googlebotfor AI Overviews and AI Mode,Applebotfor Siri. - Fetch crawlers open a page on demand while answering a question —
ChatGPT-User,Claude-User,Perplexity-User,meta-externalfetcher. If these are blocked, the engine can know a page exists and still be unable to quote it. - Training crawlers collect text for the next model version —
GPTBot,ClaudeBot,Google-Extended,Applebot-Extended,CCBot(Common Crawl, the corpus most open-weight models are trained on).
Blocking training crawlers while allowing search and fetch crawlers is a coherent policy: the engines can still cite you live, and your text stays out of the next model. Blocking everything with a blanket Disallow: / for * is how sites disappear from AI answers without anyone deciding they should. The checker tests all 22 tokens against your file and separates the two cases.
Robots.txt is not the only door
A firewall in “bot fight” mode answers 403 to any user agent it does not recognise — before robots.txt is ever consulted. AI fetchers are exactly the unfamiliar bots those rules catch. The checker requests your homepage as itself first, then as a desktop browser; when only the browser gets in, the report says so, because that is what every AI fetcher experiences too. Cloudflare, Vercel and most CDNs have a verified-bots or AI-crawler setting for precisely this.
What a crawler can actually read
Googlebot renders JavaScript. Almost no AI crawler does. They read the HTML the server sends, and if that HTML is an empty shell that fills in on the client, the page is blank to them. The checker counts the words in the server-rendered HTML with scripts and styles removed: under 150 is a shell, over 300 is a page that says something. It also reads the things engines quote most — the title, the meta description, the headings, whether any of them are phrased as questions, and the JSON-LD.
Structured data matters here for one reason: entity resolution. An Organization block with name, url, logo and sameAs links to your real profiles is how an engine connects your domain to a thing in the world rather than a string of letters.
llms.txt
/llms.txt is a Markdown file at the root of a site: an H1 with the name, a blockquote summary, and a short list of the pages that matter most, as links. It is the proposed equivalent of robots.txt for language models — not a permission file, but a reading guide. Adoption among engines is uneven, but the agents and tools that read it read it before anything else, and it costs an afternoon.
# Acme
> Acme sends invoices and chases late payments for freelancers.
## Product
- [How it works](https://acme.com/how-it-works): the three steps, with screenshots
- [Pricing](https://acme.com/pricing): plans and what each includes
## Docs
- [API reference](https://acme.com/docs/api)One trap the checker looks for: a single-page app that answers 200 for every URL will serve its HTML shell at /llms.txt. To a crawler that is a broken file, which is worse than none.
Whether the models know you
Language models are trained on, and retrieval systems lean on, a small set of public sources that describe what things are. Three of them can be queried for free, and the checker does:
- Wikidata. The structured knowledge base behind Wikipedia and most knowledge graphs. The checker searches it for your brand name and looks for an item whose official website is your domain. That match is the difference between a brand and a word.
- Wikipedia citations. How many English Wikipedia articles link to your domain. Wikipedia is the most heavily weighted source in nearly every training set; a domain it cites is a domain the models have read about in context.
- Common Crawl. Whether your domain appears in the most recent monthly crawl. Llama, Mistral and most open-weight models are trained on this corpus; absence usually means the site is new, thinly linked, or blocks
CCBot.
What this checker does not measure
It does not ask ChatGPT, Perplexity or Gemini whether they mention you. Those answers change by the hour, differ by user and by phrasing, and each question costs money to ask — which is why the tools that do it charge for it. Everything above is the part of AI visibility that is deterministic: reachable, readable, known. Fix those, then ask the engines the five questions your customers ask, and see who they name.
Reading the score
- Access (35) — the share of the eight major engines’ crawlers allowed in, with search and fetch crawlers weighted twice as heavily as training crawlers.
- Readable content (25) — server-rendered words, one H1 and real H2s, title and description, language, structured data, and question-shaped headings or FAQ markup.
- Trust signals (20) — a Wikidata entity naming the domain, Wikipedia citations, presence in Common Crawl.
- llms.txt (10) — present, with a title and a summary, and links.
- Technical (10) — the homepage answers 200 to a bot, is not noindexed, answers quickly, and declares a sitemap.
Frequently asked
Does blocking GPTBot remove me from ChatGPT?
Not from ChatGPT search. Citations there come through OAI-SearchBot and ChatGPT-User; GPTBot only feeds training. Block all three and you are out; block only GPTBot and you are still citable.
Does Google-Extended affect AI Overviews?
No. AI Overviews and AI Mode use Google’s search index, which Googlebot builds. Google-Extended controls Gemini training and grounding only. To stay out of AI Overviews you would have to stay out of Google search, which is a different decision.
Why does the checker get 403 when the site works for me?
Your firewall recognises your browser and not this checker. The report follows the site as a browser in that case and flags it, because AI fetchers hit the same wall.
Is a low score the same as “invisible”?
No. It means the engines have less to work with. A site with a 40 can still be cited for a page that is the best answer to something; it is simply cited less often and less confidently than it would be with the doors open and the entity established.
How often is a result cached?
An hour per domain. Fix something, and check again after that.
