When an AI system reads your website, it does not "see" your page the way a visitor does. It fetches the raw HTML and has to pull the meaning out of it, past the navigation, menus, ads, cookie banners, scripts, and styling. The clearer your signals, the more accurately it understands you. When your real content is buried or hard to parse, the AI is left guessing, and that is when it describes you wrong, invents details, or skips you for a competitor with cleaner signals.
It helps to walk through what actually happens, step by step, because each step is a place you can make the AI’s job easier or harder.
Step 1: Crawling (can it reach the page?) #
First, an AI crawler has to find and fetch your page. These are automated readers, each identifying itself with a name (a user agent) such as GPTBot from OpenAI, ClaudeBot from Anthropic, PerplexityBot, and Google-Extended. They discover pages the same way search crawlers do, often starting from your sitemap.xml and following links, and they check your robots.txt to see what they are allowed to fetch.
- If robots.txt disallows a bot, or a page is behind a login or a firewall, the crawler never gets the content. To the AI, a page it cannot fetch does not exist.
- Bot-protection tools (like an aggressive Cloudflare rule) can block automated readers along with the bad ones, quietly cutting you off from AI.
- A noindex instruction tells crawlers to leave a page out, which can keep it out of AI results too.
Step 2: Rendering (can it read what loaded?) #
Once a page is fetched, the AI has to read the content in it. Here is a common trap: many sites build their content with JavaScript in the visitor’s browser, so the raw HTML the crawler receives is nearly empty until scripts run. Some crawlers run JavaScript; many do not, or do it inconsistently. If your key content only appears after scripts execute, an AI may see a blank shell where your facts should be.
Step 3: Understanding (what does this content mean?) #
Now the AI has your content, but it still has to separate the signal from the wrapper and figure out what each part means. Your logo, menus, footer, related-posts widget, and cookie notice are all in the HTML too, and none of it is the point of the page. The AI has to infer which text is the actual content, what the page is about, and which facts to trust. Clean, well-structured pages make this easy. Cluttered, deeply nested, poorly labeled pages make it a coin flip.
There are two ways to take the guesswork out of this step, and they work together rather than competing:
- Structured data (schema markup)
- A small block of JSON-LD that hands the AI your key facts directly, with no inference: the type of page, the author, the price, the questions and answers. It labels the facts explicitly so the AI reads them instead of guessing.
- AI-readable files
- Clean Markdown and plain-text copies of the page’s real content, with the navigation, scripts, and clutter stripped out. An AI that supports them can read exactly what matters instead of parsing your full HTML.
Step 4: Site-level context (llms.txt) #
Beyond individual pages, you can hand AI a map of your whole site. An llms.txt file is a single machine-readable file at your domain level that gives AI a structured overview: a short summary of what your site is about, which structured-data types you use, and a ranked list of your key pages with their descriptions. Where a sitemap is a bare list of URLs for search crawlers, llms.txt is written for AI comprehension.
What gets in the way #
Most AI-readability problems come down to a handful of recurring obstacles. If AI is misreading or missing your pages, the cause is usually on this list:
| Obstacle | What it does | Where it bites |
|---|---|---|
| Blocked crawlers | robots.txt, logins, or bot protection stop the fetch | Crawling |
| JavaScript-only content | Facts load after scripts a crawler may not run | Rendering |
| Cluttered HTML | Real content is buried in wrappers and widgets | Understanding |
| No structured data | Key facts are left for the AI to infer | Understanding |
| No clean alternate version | AI must parse the full page or nothing | Understanding |
| Inconsistent facts | Different pages state different details | Understanding |
What you can do about it #
You do not have to guess at any of this. The whole point of SuperSchema is to measure each of these steps and hand you the fixes in priority order.
- Run a free Site Scan. It reads a sample of your pages the way an AI crawler would and grades you across five categories, including whether crawlers can reach you and whether your content is substantial and structured.
- Clear the access blockers first. A page AI cannot fetch or render drags everything else down, because nothing after it matters.
- Add schema markup to your key pages so the AI reads your facts instead of inferring them.
- Publish AI-readable files so an AI gets a clean copy of your content without fighting your layout.
- On paid plans, generate an llms.txt overview so AI has a map of your whole site.
- Watch bot tracking to confirm AI crawlers are actually visiting, and re-scan to see your gains.