OpenAI and llms.txt: does ChatGPT read your file, and how to use OpenAI's
Does OpenAI use llms.txt? What OpenAI documents, what server logs show for its crawlers, and how to load OpenAI's own llms.txt and Docs MCP into your agent

OpenAI has not said that ChatGPT or its crawlers use the llms.txt file on your site. Its crawler documentation explains how to manage its bots with robots.txt and says nothing about reading your llms.txt. Server logs show OpenAI's bots fetch the file now and then: 7 times across 83 sites in one 12-week study, against 3,990 fetches of robots.txt. The useful direction runs the other way, because OpenAI publishes llms.txt files and a docs server so your coding agent can read current OpenAI documentation.
Quick summary
If you added llms.txt to get into ChatGPT answers, nothing OpenAI has published supports that, and the logs show its crawlers rarely open the file. What decides whether ChatGPT search can use your pages is OAI-SearchBot access in robots.txt. If you build with OpenAI's API, its llms.txt files and Docs MCP server are worth five minutes of setup, and the commands are below.
OpenAI and llms.txt: the short answer
| Question | Answer in October 2026 | Evidence |
|---|---|---|
| Does ChatGPT search use your llms.txt? | Not documented | OpenAI's crawler page covers robots.txt rules only |
| Do OpenAI's bots fetch llms.txt? | Sometimes, far less often than robots.txt | Two public log reports, 2025 and 2026 |
| Does OpenAI publish its own llms.txt? | Yes, for its developer, Codex and Agents SDK docs | Seven files, listed below |
| How do I give a coding agent OpenAI's docs? | Connect OpenAI's Docs MCP server, or point the agent at an llms.txt file | OpenAI's Docs MCP page |
What OpenAI says about its crawlers
OpenAI's crawler page describes three bots that matter for most websites:
- OAI-SearchBot finds pages for ChatGPT search. OpenAI says opted-out sites "will not be shown in ChatGPT search answers, though can still appear as navigational links."
- GPTBot collects content that may be used to train OpenAI's foundation models.
- ChatGPT-User visits a page when a person asks ChatGPT something. OpenAI's note on it reads: "Because these actions are initiated by a user, robots.txt rules may not apply."
OpenAI tells site owners to manage OAI-SearchBot and GPTBot with robots.txt user-agent rules, and each setting is independent of the others. We read the page on October 23, 2026, and it says nothing about reading llms.txt from your site; the only llms.txt link in its Markdown copy points to OpenAI's own documentation index. So if your goal is to appear in ChatGPT search, the documented step is to allow OAI-SearchBot and serve your content as HTML it can fetch, as covered in our LLM SEO guide.
What server logs show
Two public reports have looked at OpenAI's bots and llms.txt from the website side.
In July 2025, Search Engine Roundtable reported that SEO consultant Ray Martinez saw OpenAI fetching llms.txt on a few of his sites "every 15 minutes" in his server logs. The same article noted that Google's Gary Illyes said Google doesn't support llms.txt and isn't planning to.
In 2026, EZY.ai, a company that sells AI visibility tools, watched server logs on 83 sites that had llms.txt live from April 27 to July 19, 2026. It counted how often each crawler fetched robots.txt and llms.txt on the same sites in the same weeks.
| Crawler | robots.txt fetches | llms.txt fetches |
|---|---|---|
| OpenAI (GPTBot family) | 3,990 | 7 |
| Anthropic (ClaudeBot) | 3,120 | 9 |
| PerplexityBot | 775 | 0 |
| Googlebot | 5,125 | 67 |
| Meta-ExternalAgent | 172 | 193 |
Read both reports for what they are. EZY says its panel "skews toward small-business sites whose owners sought an AI-visibility tool", and Martinez's report covers a few of his own sites. A fetch also proves only that a bot downloaded the file. Neither report shows ChatGPT using llms.txt to decide what to say or which page to cite.
Check your own logs
You can run the same comparison on your own site. This loop counts how often each AI crawler requested robots.txt and llms.txt in an Nginx or Apache access log in the default combined format, where the request path is the seventh field.
for bot in GPTBot OAI-SearchBot ChatGPT-User ClaudeBot Claude-SearchBot Claude-User PerplexityBot Googlebot meta-externalagent; do
awk -v bot="$bot" 'index($0, bot) {
split($7, path, "?")
if (path[1] == "/robots.txt") robots++
if (path[1] == "/llms.txt") llms++
}
END { printf "%-20s robots.txt %6d llms.txt %6d\n", bot, robots, llms }' access.log
doneEach line of output shows one crawler. On a small test log, the GPTBot line looked like this:
GPTBot robots.txt 2 llms.txt 1The counts trust the user agent string, which anyone can copy. To confirm that a request really came from OpenAI, match its IP address against the ranges OpenAI publishes for OAI-SearchBot, GPTBot and ChatGPT-User.
OpenAI's own llms.txt files
Developers asked for these early. In November 2024, a community forum thread asked whether OpenAI had an llms.txt for its API docs, because generated code kept using old model names. The only reply pointed to the OpenAPI spec.
In April 2025, a GitHub issue asked for llms.txt in the Agents SDK docs. Both files exist now.
We fetched each URL below on October 23, 2026.
| File | What it covers | Size |
|---|---|---|
| developers.openai.com/llms.txt | Index of every OpenAI developer doc set | 6 KB |
| developers.openai.com/api/docs/llms.txt | API guides, each with a Markdown copy at the same path plus .md | 44 KB |
| developers.openai.com/api/docs/llms-full.txt | All API guides in one file | 5.5 MB |
| developers.openai.com/llms-full.txt | Every doc set in one file | 9.1 MB |
| learn.chatgpt.com/docs/llms.txt | Codex and ChatGPT docs | 33 KB |
| openai.github.io/openai-agents-python/llms.txt | Agents SDK for Python | 7 KB |
| openai.github.io/openai-agents-js/llms.txt | Agents SDK for TypeScript, with small and full versions | Under 1 KB |
Two older addresses redirect: platform.openai.com/docs/llms.txt goes to the API docs file, and developers.openai.com/codex/llms.txt goes to the Codex file. Two guesses fail: openai.com/llms.txt returns 403 and platform.openai.com/llms.txt returns 404.
The top of OpenAI's main index shows how it wants agents to read it:
# OpenAI Developers
> Complete documentation hub for OpenAI API, Ads, Sign in with ChatGPT, Plugins, Workspace Agents, Codex, Agentic Commerce, the developer blog, Cookbook, learning resources, and learning tracks.
Start with the product index that matches your task. Product indexes route to detailed pages; documentation indexes also provide Markdown pages and full-document exports.The first lines of developers.openai.com/llms.txt, October 23, 2026.
Look at the last paragraph. The file sends an agent to one product index and then to individual Markdown pages, instead of loading 9.1 MB of docs at once. If you write an llms.txt for your own documentation, that routing is the part to copy.
Use OpenAI's docs in Codex, Claude Code, Cursor or VS Code
OpenAI also runs a read-only Docs MCP server at https://developers.openai.com/mcp. It searches and returns pages from developers.openai.com, platform.openai.com and learn.chatgpt.com, and OpenAI says it "does not call the OpenAI API on your behalf". When we connected on October 23, 2026, it offered tools to search the docs, fetch a page, list API endpoints and return the OpenAPI spec.
For Codex, add it from the CLI:
codex mcp add openaiDeveloperDocs --url https://developers.openai.com/mcpFor Claude Code:
claude mcp add --transport http openaiDeveloperDocs https://developers.openai.com/mcpFor Cursor, add the server to ~/.cursor/mcp.json:
{
"mcpServers": {
"openaiDeveloperDocs": {
"url": "https://developers.openai.com/mcp"
}
}
}For VS Code with GitHub Copilot in agent mode, add it to .vscode/mcp.json in your project:
{
"servers": {
"openaiDeveloperDocs": {
"type": "http",
"url": "https://developers.openai.com/mcp"
}
}
}OpenAI's page adds one tip: put a line in your AGENTS.md telling the agent to use the Docs MCP server for OpenAI questions, or it may not call the server unless you ask. If your tool has no MCP support, give the agent the API docs llms.txt URL, or any docs page URL with .md on the end.
How other AI companies handle llms.txt
OpenAI is not unusual. We checked the crawler documentation and the docs sites of four other AI companies on October 23, 2026.
| Company | Says its crawlers use your llms.txt | Publishes llms.txt for its own docs | llms.txt fetches in the EZY logs |
|---|---|---|---|
| OpenAI | No statement in its crawler docs | developers.openai.com/llms.txt | 7 |
| Anthropic | No statement in its crawler help article | platform.claude.com/llms.txt | 9 |
| Google Search does not use it | Gemini API docs llms.txt | 67 | |
| Perplexity | No statement in its crawler docs | docs.perplexity.ai/llms.txt | 0 |
| xAI | We found no crawler statement | docs.x.ai/llms.txt | Not in the study |
Google is the only one to address the question directly. Its AI optimization guide says you don't need AI text files "to appear in Google Search (including its generative AI capabilities), as Google Search itself doesn't use them."
The pattern holds across all five. AI companies publish llms.txt so developers' tools can read their API documentation. None of them documents reading yours when it writes an answer.
Should you publish an llms.txt?
Publish one if people build on your product with coding agents. If you have API docs, SDKs or a developer platform, an llms.txt is a small file that agents can follow, and OpenAI's own index is a good model.
Don't expect it to change what ChatGPT says about you. For ChatGPT search, the documented controls are OAI-SearchBot in robots.txt and pages it can fetch. Our LLM SEO guide walks through both.
If the real question behind your llms.txt is whether ChatGPT mentions your brand, check the answers instead. Ask the same buyer questions on a schedule and record whether OpenAI's models name you, where, and which pages they cite. Subscription tools such as Semrush's AI Visibility Toolkit track this for ChatGPT, Google AI Mode and Gemini; see what the Semrush toolkit costs before you commit.
FAQs
Does llms.txt replace robots.txt?
No. robots.txt tells crawlers what they may fetch, and it is the file OpenAI's crawler page refers to. llms.txt is a Markdown reading list, so access rules such as Disallow have no meaning inside it.
Does GPTBot use llms.txt for training?
OpenAI has not said. The documented way to keep your content out of OpenAI's model training is to disallow GPTBot in robots.txt.
Where is OpenAI's llms-full.txt?
The complete export is at developers.openai.com/llms-full.txt, and the API docs alone are at developers.openai.com/api/docs/llms-full.txt. At 9.1 MB and 5.5 MB, both are far more than most models can take in one request, so start with an index file or the Docs MCP server.
Next step
Run the log check above on the last 30 days of your access logs. If OpenAI's bots request robots.txt far more often than llms.txt, spend your time on what they do read: your robots.txt rules and the pages themselves.

Written by Elias Vance
Ready to build your next AI app?