Skip to main content

AI Visibility Checker

Enter a URL and see how 22 AI crawlers are treated by your robots.txt, whether you ship an llms.txt and a sitemap, what structured data your page declares, and how your heading outline reads. Free, no signup, no email — the same AI-readiness analysis that runs inside a full Web Audit Suite audit.

Check a URL

No signup, no email. One page per check — the URL you enter is what gets read, and the query string is dropped.

What AI Crawlers Actually Read

Before an AI system reads a word of your content, it reads your robots.txt. That one file decides whether the rest happens at all, and it is where most sites accidentally decide their AI visibility — usually by writing a rule aimed at one crawler and catching several others with it.

The 22 crawlers this checker knows about are not interchangeable, and that is the part worth getting right. They fall into three groups by what their operator documents them as doing:

  • AI search indexers — OAI-SearchBot, Claude-SearchBot, PerplexityBot, Applebot and their peers. These build the retrieval indexes behind AI answers. Block one and you are removed from the answers and citations that index feeds.
  • On-demand assistant fetchers — ChatGPT-User, Claude-User, Perplexity-User and their peers. These fetch a page live, at the moment a person asks an assistant about it. Block one and the assistant cannot read your page even when the user hands it your URL.
  • Model-training crawlers — GPTBot, ClaudeBot, Google-Extended, CCBot and their peers. These collect content for training foundation models. Blocking them is a legitimate content-policy choice and it does not reduce your AI search visibility, so this checker reports their status and never scores it.

That distinction is the whole reason a single "are you blocking AI?" verdict is useless. The common posture in 2026 is to block training and allow search and on-demand fetching — for example Disallow GPTBot while allowing OAI-SearchBot. Scoring that as a defect would punish a deliberate, reasonable decision, so we do not.

Rules are applied the way RFC 9309 specifies rather than by string matching. A group naming the crawler shadows the User-agent: * group entirely — even an empty group, which means everything is allowed — and among matching paths the longest one wins. User-agent tokens match exactly, so Applebot and Applebot-Extended are two different crawlers with two different consequences, and a rule for one never silently applies to the other.

One more thing a checker owes you honestly: llms.txt is reported here and never scored. Adoption is around 10% of sites, log studies across hundreds of millions of AI bot visits found effectively no AI search crawler fetching it, and Google has said Search does not support it. AI coding agents do routinely fetch it on documentation sites, which is why its presence is worth showing as context — but a tool that scored you down for not having one would be selling you a file nobody reads.

What This Checker Looks At

The score is the real AI-readiness score, computed by the same analyzer a paid audit runs — 100 points across seven blocks. The free panel itemises one of them in full and two in part; the rest are scored but itemised only inside a full audit. Nothing is redacted from an answer this page already computed, and every row in the result names the points it is worth, including the rows worth none.

Score blockPointsItemised in the free check
Structured data25In part — every JSON-LD @type found, plus Organization (5) and FAQPage (5). The 5 points for a logo property are scored but not itemised free
AI bot crawlability20Yes — all 22 crawlers, robots.txt and sitemap.xml
Social and meta tags15No — Open Graph and Twitter card tags are audit-only
Content structure15In part — the heading counts that score 10 of the 15; the FAQ-section 5 is audit-only
Content readability15No — Flesch reading ease and word count are audit-only
Image alt text5No — audit-only
Links and authority5No — audit-only

Inside the 20-point crawlability block, sitemap.xml is worth 8 points and robots.txt 4. The remaining 8 are split across 6 of the 22 crawlers — the AI search indexers and on-demand fetchers whose operators are the ones actually answering questions today. The other 16 are reported and never scored, and the panel labels each one so you can tell at a glance whether a block cost you anything. A crawler your robots.txt never mentions scores exactly the same as one you explicitly allow: only an explicit block withholds the points.

Two points of honesty about what the free result cannot itemise. The 25-point structured-data block also awards 5 points for a logo property on any JSON-LD entity, and the free response does not carry that flag, so the panel names the rule instead of leaving a gap in the arithmetic. And the 15-point content-structure block awards 5 for an FAQ-shaped section in the markup — a definition list, an element whose class or id contains "faq", or FAQPage microdata — which is a DOM check rather than a JSON-LD one, and is not among the rows the free panel shows. A <details> accordion, the shape most FAQ components actually use, is not on that list and earns nothing.

Two of the checks describe your domain rather than the page you entered: robots.txt (and therefore the whole crawler map) and the sitemap and llms.txt lookups all happen at the domain root. Structured data and the heading outline are read from the exact page you entered. Query strings and fragments are dropped before the fetch, so the URL shown in the result is precisely what was read.

A Worked Example: Our Own Site

This is a real, unedited run of the checker against https://webauditsuite.com/, captured on 2026-08-02. It is the same panel your own result renders in. We score 83 rather than 100, and the missing points are in blocks this panel does not itemise — which is the honest reason to show our own result rather than a flattering invented one.

AI readiness score

83 / 100

https://webauditsuite.com/

Checked

AI crawler access (22 crawlers)

Your robots.txt turns none of them away.

AI search indexing · 5 of 8 bot points

Build the indexes behind AI answers — blocking these removes the site from AI search results and citations.

  • OAI-SearchBot

    OpenAI

    Allowed

  • Claude-SearchBot

    Anthropic

    Allowed

  • PerplexityBot

    Perplexity

    Allowed

  • Applebot

    Apple

    Allowed

    Reported, not scored

  • Amzn-SearchBot

    Amazon

    Allowed

    Reported, not scored

  • MistralAI-Index

    Mistral

    Allowed

    Reported, not scored

  • DuckAssistBot

    DuckDuckGo

    Allowed

    Reported, not scored

On-demand assistant access · 3 of 8 bot points

Fetch pages live when a user asks an AI assistant about the site.

  • ChatGPT-User

    OpenAI

    Allowed

  • Claude-User

    Anthropic

    Allowed

  • Perplexity-User

    Perplexity

    Allowed

  • Amzn-User

    Amazon

    Allowed

    Reported, not scored

  • MistralAI-User

    Mistral

    Allowed

    Reported, not scored

  • Meta-ExternalFetcher

    Meta

    Allowed

    Reported, not scored

Model training · informational

Collect content for AI model training. Blocking these is a policy choice and does not affect AI search visibility (not scored).

  • GPTBot

    OpenAI

    Allowed

  • ClaudeBot

    Anthropic

    Allowed

  • Google-Extended

    Google

    Allowed

  • Applebot-Extended

    Apple

    Allowed

  • Meta-ExternalAgent

    Meta

    Allowed

  • CCBot

    Common Crawl

    Allowed

  • Bytespider

    ByteDance

    Allowed

  • Amazonbot

    Amazon

    Allowed

  • MistralAI-Training

    Mistral

    Allowed

Not specified means robots.txt has no group naming that crawler and no usable User-agent: * group either — including the case where the site serves no robots.txt at all. Nothing is turning the crawler away, so it is not a failure, and it scores exactly the same as an explicit allow.

Access is read from robots.txt at the domain root and evaluated for /, so this map describes the domain, not this one page. Rules are applied as RFC 9309 specifies: a group naming the crawler shadows the wildcard group entirely, and the longest matching path wins.

Crawler-facing files

All three are looked for at the domain root, so like the crawler map above they describe the site rather than the single page checked. Two of them are worth 12 of the 20 crawlability points between them; the third is worth none, and says so.

  • robots.txt found

    The file every crawler above reads first. Without one, nothing is blocked — but nothing points at your sitemap either, and every crawler is left inferring your intent.

    https://webauditsuite.com/robots.txt
    4 pts
  • sitemap.xml found

    The list of pages worth indexing, and the largest single item in this score's crawlability block.

    https://webauditsuite.com/sitemap.xml
    8 pts
  • llms.txt found

    AI coding agents fetch it on documentation sites; no major AI search crawler does, and Google has said Search does not support it. Shown as context, and scored at zero on purpose — a tool that docked you for this would be selling you a file nobody reads.

    https://webauditsuite.com/llms.txt
    Reported, not scored

Structured data

JSON-LD found, declaring: Organization, SoftwareApplication, FAQPage. Having any at all is worth 10 points on its own.

  • Any JSON-LD block found

    One parseable application/ld+json block, of any type. Types inside a @graph wrapper or a top-level array are read individually.

    10 pts
  • Organization found

    Who publishes this. The block an answer engine reads to attribute a citation to a named entity rather than to a bare URL.

    5 pts
  • FAQPage found

    Questions with their answers, marked up as such — the shape an answer engine can lift a whole answer out of.

    5 pts
  • HowTo not found

    Ordered steps. Read and reported by this checker, and worth nothing in the score — same rule as ever: mark up steps that are actually on the page.

    Reported, not scored
  • Article not found

    Editorial content with an author and a date, which is what a model quotes from. Reported here; the score does not move on it.

    Reported, not scored

One scored item is missing from this list: a logo property on any JSON-LD entity is worth 5 points, and the free result does not carry it. It is named here rather than left out, because a score you cannot fully account for is worse than one line of small print.

Heading outline

1 H1, 12 H2, 21 H3. One top-level heading and no level skips — the outline reads cleanly.

  • An H1 is present found

    The heading that states the page's subject. Presence is what scores; how many there are does not.

    5 pts
  • More than two H2 sections found

    A page split into named sections is a page a model can quote one section of. The threshold is strictly more than two, so three H2s score and two do not.

    5 pts

Anything flagged above beyond those two rows is reported, not scored. A duplicate H1 and a skipped level both cost zero points and both still make the page harder for a model to carve into answers, which is why they are shown at all.

Why a Blocked Crawler Matters

A blocked search indexer is not a ranking penalty. It is an absence. Your pages are not demoted in an AI answer, they are simply not available to be cited in one, and there is no report anywhere that tells you it happened. That is what makes this failure mode worth a deliberate check: everything looks normal from the inside.

The costly version is rarely a decision anyone made. It is a Disallow: / left in a staging robots.txt that shipped to production, a security plugin's "block AI scrapers" toggle that turns out to cover the search indexers too, or a WAF rule written against one user-agent string that catches four. Each looks like a single line in a file, and each removes a site from the answers people are now asking for.

Blocking the training crawlers is a genuinely different question, and one where the honest answer is that it is yours to decide. It has no effect on whether you appear in AI search results, which is why this checker reports it plainly and leaves the score alone.

Structured data and heading outline are the other half. Once a crawler can reach the page, those are what tell it what the page is and which part answers which question. A page with no JSON-LD is not unreadable — it is just unlabelled, which means the model has to infer everything a schema block would have stated.

What the Full Audit Adds

Nothing above is withheld. The AI-readiness score this page returns is the score a paid audit returns, computed by the same analyzer, and every check it itemises is itemised in full. What a plan adds is a different question being asked — 17 more analyzers looking at the parts of a site an AI crawler is not the audience for.

Page Analysis · 4 analyzers

Page Analyzer, Security Headers Analyzer, Technologies Analyzer, Mixed Content Analyzer

Accessibility · 1 analyzer

Accessibility Analyzer

Site Crawler · 5 analyzers

Robots.txt Analyzer, Sitemap Consistency Analyzer, Canonical Tags Analyzer, Metadata Consistency Analyzer, Orphan Pages Analyzer

Link Validator · 3 analyzers

Broken Links Analyzer, Redirect Check Analyzer, Resource Availability Analyzer

CSS Analysis · 1 analyzer

CSS Analyzer

Infrastructure · 2 analyzers

SSL Analyzer, DNS Analyzer

PageSpeed · 1 analyzer

PageSpeed Analyzer

On top of the analyzers: an AI action plan that ranks every finding by severity and states the concrete fix, and white-label PDF and JSON export you can hand to a client under your own name and logo. Starter and Pro include a 7-day free trial.

Start a 7-day free trial