Free AI SEO / AEO / GEO audit

Free AI Visibility Audit

One URL, one run: check AI crawler access, robots.txt, llms.txt, structured data, and key page signals for ChatGPT, Claude, and Perplexity readiness — then jump to the right tool to fix whatever it flags.

We fetch the page, /robots.txt and /llms.txt once each. Public http/https URLs only.

What is an AI visibility audit?

An AI visibility audit (sometimes called an AI readiness check, AI SEO audit, AEO audit, or GEO audit) looks at the technical signals that decide whether AI search and answer tools can reach and read a page: is the page reachable, do robots.txt rules let the relevant crawlers in, is there an optional llms.txt, is the structured data valid, and are the basic page signals in place.

This audit reports each check as PASS, REVIEW, INFO, or COULD NOT CHECK. It does not produce an “AI visibility score” — there is no public method that maps these signals to a probability of being cited or ranked by an AI system, so a single number would imply precision that does not exist.

What this audit checks

Page Access

HTTP status, redirects, and whether the audit could retrieve the page HTML at all.

AI Crawlers

What robots.txt says for OAI-SearchBot, GPTBot, ClaudeBot, Claude-SearchBot, PerplexityBot, and Google-Extended — with each crawler's role (search, training, or Gemini control) shown so a blocked training crawler is never mistaken for a blocked search crawler.

robots.txt

Found / not found / unreadable, the number of rules, and any Sitemap: directive.

llms.txt

Whether /llms.txt exists, its HTTP status, and a basic structural read (H1, sections). A 404 is treated as "no file", not a site error.

Structured Data

JSON-LD presence, block count, parse errors, and the Schema.org @types found. No JSON-LD is reported as INFO, not as "invalid".

Page Signals

Title, meta description, H1 count, canonical, robots meta (noindex), language, and heading outline — reported as observations, not as AI ranking factors.

Sitemap

Any sitemap declared in robots.txt, and an optional lightweight reachability check. The audit does not crawl the sitemap.

AI search crawlers vs training crawlers

These are not the same thing, and confusing them leads to wrong conclusions:

  • AI search / answer crawlers — OAI-SearchBot (ChatGPT search), Claude-SearchBot (Claude search), PerplexityBot (Perplexity). Allowing these makes a site eligible to be discovered and linked by that product. Blocking one is asking not to appear there.
  • Model-training crawlers — GPTBot (OpenAI), ClaudeBot (Anthropic). Allowing or blocking these is a decision about whether your content may be used to train models. It does not add or remove a site from any AI search product.
  • Gemini control token — Google-Extended. A standalone token that controls whether already-crawled content is used for Gemini training and grounding. Google states it does not affect a site's inclusion in Google Search or its ranking.

The audit labels every crawler with its role, so a blocked GPTBot is reported as an informational training-data choice — never as “ChatGPT search is blocked”.

robots.txt and AI search

robots.txt is the first file most crawlers read. A missing robots.txt (HTTP 404) is valid — crawlers treat it as “no restrictions” — so this audit reports that as INFO, not an error. What matters for AI search is that the search crawler’s user-agent is not disallowed, either directly or by a blanket User-agent: * Disallow: /. robots.txt is also only a stated policy: allowing a crawler does not prove it has fetched, indexed, or cited anything, and CDN or firewall rules can still block a crawler that robots.txt allows.

What llms.txt can and cannot do

llms.txt is an optional, proposed convention for a Markdown file that hands AI tools a short, curated map of your key pages. It is not a web standard, it does not replace robots.txt or sitemap.xml, and it does not guarantee that any AI system indexes, cites, or ranks your content. A site without an llms.txt is not broken. The audit reports a missing file as INFO and links to the generator only if you decide you want one.

Structured data and AI visibility

JSON-LD structured data makes a page’s entities and structure machine-readable instead of something a system has to infer from the layout. That can help understanding. It is not a guaranteed AI ranking or citation boost, and Schema.org validity is separate from any specific search rich-result requirement (Google retired the FAQ rich result in 2026). A page with no JSON-LD is reported as INFO, not as invalid — plenty of good pages have none.

Why technical readiness does not guarantee citation

Passing every check in this audit means the common technical blockers are cleared — the page can be fetched, the crawlers are allowed, the markup parses. Whether an AI system then selects, cites, or recommends the page depends on relevance to the query, the quality and freshness of the content, competing sources, and provider-specific ranking that changes over time and is not publicly documented. No external tool can see or influence that. This audit finds and helps you fix the technical blockers; it cannot make an AI system cite a page.

Once a system can reach and parse the page, the next question is whether its content is structured so a clear answer can be extracted. For that, run the AI Citation Readiness Checker.

How to improve issues found by the audit

A blocked AI search crawler

If OAI-SearchBot, Claude-SearchBot, or PerplexityBot is disallowed and you want to be eligible for that product, remove the Disallow for that user-agent (and any User-agent: * catch-all).

AI Crawler Robots.txt Generator

robots.txt you can't read or aren't sure about

Diagnose exactly which OpenAI crawlers your robots.txt allows or blocks and why.

AI Crawler Robots.txt Checker

No llms.txt, or one that needs work

llms.txt is optional. If you want one, generate a spec-compliant file, then validate it.

llms.txt Generator

Missing or broken structured data

Check a page's JSON-LD in detail — parse errors, detected types, and per-type properties.

AI Schema Markup Checker

A genuine FAQ section without FAQPage markup

Only if the section is a real list of questions and answers you wrote: generate FAQPage JSON-LD that matches the visible text.

FAQ Schema Generator

The bigger picture

A broader readiness audit across technical, content, entity, and structured-data signals.

ChatGPT Website Visibility Checker

Audit → Fix → Recheck

  1. 1Audit

    Run the audit above on a specific page URL. Note every item marked REVIEW and read its "what to do next".

  2. 2Fix

    Open the linked tool for that item (robots.txt checker/generator, llms.txt checker/generator, schema checker, FAQ generator) and make the change on your site.

  3. 3Recheck

    Re-run this audit. robots.txt changes can take time to propagate, so if a robots item still shows REVIEW immediately, check again a day later.

Frequently asked questions

What is an AI visibility audit?

It is a check of the technical signals that affect whether AI search and answer tools can reach and read a page: page accessibility, AI crawler rules in robots.txt, the optional llms.txt file, structured data, and basic page signals. It reports each check as PASS, REVIEW, INFO, or COULD NOT CHECK — not as a single score — and links to the specific tool to fix anything flagged.

How do I check if ChatGPT can access my website?

"Access" has layers: the page must return HTTP 200, robots.txt must not disallow the relevant crawler, and the content must be in the server-rendered HTML. This audit checks all of those. For ChatGPT Search discovery specifically, the crawler that matters is OAI-SearchBot. The audit shows its robots.txt verdict and links to the AI Crawler Robots.txt Checker for the detail.

What is OAI-SearchBot?

OAI-SearchBot is OpenAI's crawler for ChatGPT's search features. If you want a site to be eligible to appear in ChatGPT Search results, robots.txt should not block OAI-SearchBot. Being allowed makes a site eligible to be discovered; it does not guarantee crawling, inclusion, ranking, or citation.

Is GPTBot used for ChatGPT search?

No. GPTBot is OpenAI's model-training crawler. Allowing GPTBot is not required for ChatGPT Search, and blocking GPTBot does not remove a site from ChatGPT Search. That is why this audit reports a blocked GPTBot as an informational training-data choice, not as a search problem.

Does llms.txt improve AI visibility?

There is no guarantee that it does. llms.txt is an optional, proposed convention (llmstxt.org), not a web standard and not a replacement for robots.txt or sitemap.xml. It can give AI tools a curated map of your key pages if a tool chooses to read it, but that is not the same as improved rankings or citations, and a missing llms.txt is not a website error.

Does schema markup help AI search?

Structured data makes a page's entities and structure machine-readable, which can help systems understand it. It is not a guaranteed AI ranking or citation boost, and Google's FAQ rich result was retired in 2026, so FAQPage markup will not produce a rich result. Add structured data because it accurately describes the page, not as a growth tactic.

Why isn't ChatGPT citing my website?

Technical readiness is only the entry ticket. Even when a page is fully crawlable, whether an AI system selects, cites, or recommends it depends on relevance, competing sources, content quality, freshness, and provider-specific ranking that no external tool can see or influence. This audit can find and help you fix the technical blockers; it cannot make an AI system cite a page.

Can I block AI training but allow AI search?

Yes, as a robots.txt policy. You can allow OAI-SearchBot, Claude-SearchBot, and PerplexityBot while disallowing GPTBot, ClaudeBot, and Google-Extended. That expresses "discover and link my content, but don't use it for model training". Whether a site then actually appears in those products still depends on factors outside robots.txt.

Does this audit guarantee AI citations?

No. It reports technical signals only. It does not measure or predict whether any AI system will crawl, index, cite, rank, or recommend a page, and it deliberately does not produce an "AI visibility score", because no public method maps these signals to a citation probability.

How often should I run an AI visibility audit?

Run it after any change to robots.txt, a CDN or firewall rule, your sitemap, your structured data, or a site migration — and then again a day or so later, since robots.txt changes can take time to propagate. Outside of changes, an occasional check (for example quarterly) is enough for most sites.