---
title: "AI Search Readiness Checklist: 26 Checks Before a Citation"
description: "26 checks to run before you expect an AI citation: crawler access, real HTML, quotable structure, bylines and dates, and llms.txt. Each links to its fix."
image: "https://www.blackseoanalyzer.com/static/images/black-seo-analyzer-og-image.png"
canonical: "https://www.blackseoanalyzer.com/en/blog/ai-search-readiness-checklist"
language: "en"
---

# AI Search Readiness Checklist: 26 Checks Before You Expect a Citation

By [Seth Black](https://www.blackseoanalyzer.com/en/about) · Published November 01, 2026

Before you expect ChatGPT, Claude or Perplexity to cite a page, check five things in this order: the right AI crawlers are allowed in, the content is in the HTML the server sends, the page is structured so a passage can be quoted, it says who wrote it and when, and, last and least, your llms.txt is valid. Those five groups break down into the 26 checks below, each with a one-line test and a link to a page explaining the fix.

## Why this order?

Each group is a gate for the next. A page with perfect bylines is invisible if robots.txt blocks every retrieval crawler, and a beautifully structured page is invisible if the structure only exists after JavaScript runs. So fix access first, then rendering, then the page itself. llms.txt comes last because it is the least proven; I made that case in [llms.txt: does it matter?](https://www.blackseoanalyzer.com/en/blog/llms-txt-does-it-matter).

None of this replaces classic SEO. Google says [SEO for AI is the same as SEO for search](https://www.blackseoanalyzer.com/en/blog/google-says-seo-for-ai-is-the-same-as-seo-for-search), and the checks here are the parts that are specific to AI crawlers or matter more to them.

## 1. Can AI crawlers get in?

AI vendors split their crawlers by job: training, search index, and fetches a user asked for. Blocking a training crawler costs you nothing in visibility. Blocking a search crawler or a user fetcher removes you from answers. The robots.txt rules for every vendor are in [the AI crawler robots.txt guide](https://www.blackseoanalyzer.com/en/blog/ai-crawler-robots-txt-guide).

| Check | Test |
| --- | --- |
| [Your robots.txt Blocks Every AI Crawler](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/all-ai-crawlers-blocked) | Not every known AI crawler, training and retrieval alike, is disallowed, unless you mean it. |
| [No AI Assistant Can Cite Your Site](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/no-ai-retrieval-access) | At least one retrieval crawler (`OAI-SearchBot`, `Claude-SearchBot`, `PerplexityBot`) is allowed. |
| [Let AI Search Crawlers Read Your Site So It Can Be Cited](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/ai-search-crawler-blocked) | No individual retrieval crawler is blocked by a rule meant for training bots. |
| [Allow User-Initiated Fetches So Shared Links Work](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/ai-user-action-crawler-blocked) | `ChatGPT-User`, `Claude-User` and `Perplexity-User` are not disallowed. |
| [Understand What Blocking an AI Training Crawler Does](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/ai-training-crawler-blocked) | If `GPTBot`, `ClaudeBot`, `CCBot` or similar are blocked, you meant it. |

Paste your file into the free [robots.txt tester](https://www.blackseoanalyzer.com/en/tools/robots-txt-tester) and try each token. Also check your CDN: bot-management settings can block AI crawlers before robots.txt is read, and no robots.txt check can see that. Your access log can; [which AI crawlers hit a website in 2026](https://www.blackseoanalyzer.com/en/blog/which-ai-crawlers-hit-a-website-2026) shows what normal traffic looks like.

## 2. Is the content in the HTML?

Most AI crawlers do not run JavaScript. What your server sends is what they read. [Can AI crawlers see JavaScript content](https://www.blackseoanalyzer.com/en/blog/can-ai-crawlers-see-javascript-content) covers why and how to test by hand.

| Check | Test |
| --- | --- |
| [Serve Real HTML, Not an Empty App Shell](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/empty-app-shell-served-to-crawlers) | The raw HTML is more than a framework mount point and a script tag. |
| [This Page Appears to Be Built Entirely in the Browser](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/probable-client-side-rendering) | The raw HTML has meaningful text even without a recognizable app root. |
| [Most of Your Page Text Only Exists After JavaScript Runs](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/text-requires-javascript) | At least half the visible text is in the raw HTML. |
| [Your Headings Are Added by JavaScript](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/headings-require-javascript) | At least half the headings are in the raw HTML. |
| [Your Links Are Added by JavaScript](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/links-require-javascript) | At least half the links are in the raw HTML, so crawlers can find your other pages. |
| [Your Structured Data Is Injected by JavaScript](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/structured-data-requires-javascript) | JSON-LD is in the server response, not added by a tag manager. |

A quick manual test for any page:

```bash
curl -s https://example.com/page | sed -e 's/<[^>]*>//g' | wc -w
```

Compare that with the word count of the page in a browser. If the browser number is much larger, the crawler is reading the small one.

## 3. Can a passage be quoted?

Assistants answer questions, so pages that put answers in liftable shapes are easier to use. [How to write a page an LLM will quote](https://www.blackseoanalyzer.com/en/blog/how-to-write-a-page-an-llm-will-quote) goes into each.

| Check | Test |
| --- | --- |
| [Phrase Some Headings as the Questions People Ask](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/no-question-headings) | On pages of 300+ words with more than one heading, at least one is a question. |
| [Give Your Page Structure That Can Be Quoted](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/no-lists-or-tables-to-quote) | Pages of 300+ words have at least one list or table. |
| [Show the FAQ Content Your Markup Promises](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/faq-markup-not-visible-on-page) | Every question in `FAQPage` markup appears in the visible text. |

The check behind the first two cannot tell you whether your first paragraph answers the query. Read it yourself: if someone quoted only that paragraph, would it be correct and complete?

## 4. Does the page say who wrote it and when?

Provenance helps an assistant, and a reader, decide whether to trust a source. These apply to pages marked up as articles, and the `sameAs` check applies to any page with structured data.

| Check | Test |
| --- | --- |
| [Name the Author of Your Article](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/article-without-author) | Article markup has an `author`. |
| [Show the Byline Readers Cannot See](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/author-not-visible-on-page) | The author in the markup is also visible on the page. |
| [Declare When Your Article Was Published](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/article-without-publication-date) | Article markup has `datePublished`. |
| [Declare When Your Article Was Last Updated](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/article-without-modified-date) | Article markup has `dateModified`. |
| [Declare the Publisher of Your Article](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/article-without-publisher) | Article markup has a `publisher`. |
| [Add sameAs Links So Assistants Can Identify You](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/no-sameas-links-in-structured-data) | Structured data links to your profiles elsewhere with `sameAs`. |

## 5. Is your llms.txt valid?

Optional, cheap, and unproven. If you publish one, make it correct. [How to write an llms.txt](https://www.blackseoanalyzer.com/en/blog/how-to-write-llms-txt) has a full example.

| Check | Test |
| --- | --- |
| [Publish an llms.txt to Guide Assistants Around Your Site](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/llms-txt-missing) | `/llms.txt` exists. |
| [Your llms.txt Is Empty](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/llms-txt-empty) | The file has content. |
| [Add the Required Title to Your llms.txt](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/llms-txt-missing-title) | It starts with a `# Name` heading. |
| [Add a Summary Blockquote to Your llms.txt](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/llms-txt-missing-summary) | A `> summary` line follows the title. |
| [Your llms.txt Points at Nothing](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/llms-txt-has-no-links) | It contains at least one `[name](url)` link. |
| [Use Resolvable URLs in Your llms.txt](https://www.blackseoanalyzer.com/en/technical-seo/ai-readiness-analyzer/llms-txt-unresolvable-links) | Every link is absolute or root-relative. |

## How do you run all 26 at once?

bseoa runs these checks as its AI-readiness module, alongside the rest of a technical audit. The robots.txt, llms.txt, app-shell, structure and authorship checks run on every crawl. The four “requires JavaScript” checks compare the raw HTML with the rendered page, so they need JavaScript rendering turned on in the desktop app or CLI; the hosted [connector](https://www.blackseoanalyzer.com/en/mcp) for Claude and ChatGPT does not render JavaScript. The [14-day trial](https://www.blackseoanalyzer.com/en/free-trial) runs everything with no page limit.

## What should you expect after passing?

A fair chance, not a citation. On this site, assistants made thousands of fetches a month in late 2026 and sent about 85 human visitors in a year, against 354 from Google in October alone. Passing this checklist makes sure you are not excluded. Being chosen still depends on having the best answer. For the wider comparison, see [GEO vs SEO](https://www.blackseoanalyzer.com/en/geo-vs-seo).

-Sethers

About the author

[Seth Black](https://www.blackseoanalyzer.com/en/about)

Seth is a software engineer and engineering leader who builds bseoa, a Rust-based technical SEO crawler with a GUI and CLI. He writes about the crawling, rendering and indexing problems he runs into on real sites.

[LinkedIn](https://www.linkedin.com/in/seth-black-tx/) · [GitHub](https://github.com/sethblack) · [YouTube](https://www.youtube.com/@SethBlack)

[Back to Blog](https://www.blackseoanalyzer.com/en/blog)

## Discover hundreds of SEO Issues in Seconds

Without Monthly Subscriptions

Comprehensive technical SEO analysis powered by ML and 16 specialized modules. Optional AI-powered insights from Claude, GPT-4, or Gemini. Get actionable insights in seconds, and never pay monthly fees again.

[Download Free Trial](https://www.blackseoanalyzer.com/en/free-trial)

I use AI to generate images for my posts and for general editing, updates, and ironically SEO purposes. I used to draw all of the images for my personal blog (taleas) myself, but as the volume of content I produce has increased, I've turned to AI tools to help create visuals that complement my writing. I go out of my way to generate images that look strange, and don't represent real people. If you ever want to chat about my use of AI, please reach out.

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.blackseoanalyzer.com/#organization","name":"Fiscus Technology, LLC","url":"https://www.blackseoanalyzer.com/","logo":{"@type":"ImageObject","url":"https://www.blackseoanalyzer.com/static/images/black-seo-analyzer.png"},"sameAs":["https://sethserver.com/","https://github.com/sethblack"],"founder":{"@id":"https://www.blackseoanalyzer.com/#seth"}},{"@type":"WebSite","@id":"https://www.blackseoanalyzer.com/#website","name":"bseoa","url":"https://www.blackseoanalyzer.com/","publisher":{"@id":"https://www.blackseoanalyzer.com/#organization"}},{"@type":"Person","@id":"https://www.blackseoanalyzer.com/#seth","name":"Seth Black","url":"https://www.blackseoanalyzer.com/about","jobTitle":"Creator of bseoa","sameAs":["https://www.linkedin.com/in/seth-black-tx/","https://github.com/sethblack","https://www.youtube.com/@SethBlack","https://sethserver.com/"]},{"@type":"BlogPosting","@id":"https://www.blackseoanalyzer.com/en/blog/ai-search-readiness-checklist#article","headline":"AI Search Readiness Checklist: 26 Checks Before You Expect a Citation","name":"AI Search Readiness Checklist: 26 Checks Before You Expect a Citation","description":"26 checks to run before you expect an AI citation: crawler access, real HTML, quotable structure, bylines and dates, and llms.txt. Each links to its fix.","url":"https://www.blackseoanalyzer.com/en/blog/ai-search-readiness-checklist","datePublished":"2026-11-01T05:21:23","dateModified":"2026-11-01T05:21:23","author":{"@id":"https://www.blackseoanalyzer.com/#seth"},"publisher":{"@id":"https://www.blackseoanalyzer.com/#organization"},"image":{"@type":"ImageObject","url":"https://www.blackseoanalyzer.com/static/images/black-seo-analyzer-og-image.png","width":1200,"height":630},"mainEntityOfPage":{"@type":"WebPage","@id":"https://www.blackseoanalyzer.com/en/blog/ai-search-readiness-checklist"},"isPartOf":{"@id":"https://www.blackseoanalyzer.com/#website"},"inLanguage":"en-US","isAccessibleForFree":true,"wordCount":1196},{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.blackseoanalyzer.com/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https://www.blackseoanalyzer.com/en/blog"},{"@type":"ListItem","position":3,"name":"AI Search Readiness Checklist: 26 Checks Before You Expect a Citation","item":"https://www.blackseoanalyzer.com/en/blog/ai-search-readiness-checklist"}]}]}
```
