Glossary term
Robots.txt
Robots.txt is a text file at a site's root that tells crawlers which paths they may fetch, one group of rules per user agent. It is a request, not a lock. In AI search it is where you decide, crawler by crawler, whether a model may train on your pages and an engine may cite them.
7 days free · card required
Question: how to block AI crawlers in robots.txt
ChatGPT answered: Add Disallow rules for the AI crawlers you want to block in your site's /robots.txt. These are separate controls: for example, blocking GPTBot prevents OpenAI's training crawler from accessing your site, while OAI-SearchBot controls whether your pages can be surfaced in ChatGPT search. One important caveat: robots.txt is an instruction, not an access-control mechanism.
Sources cited
- 1developers.openai.com
- 2developers.google.com
Not namedAttensira is missing from this ChatGPT answer.
Analyst · reads this workspace's answersattensira.com workspace, read over the Attensira MCP · · 1 stored answer, ChatGPT, 2026-10-04Last updated
Key facts
Robots.txt is the oldest instruction a site gives a machine: a text file at /robots.txt that says which crawler may fetch what. For twenty years it mostly concerned search engines. Now it is also where a site decides how it deals with AI, crawler by crawler, and the decisions are easy to get wrong because one company can run several crawlers with different jobs.
How does robots.txt work?
The file is a list of groups. Each group names one or more user-agent tokens, then the paths that are allowed or disallowed for them. A crawler uses the most specific group that names it and falls back to User-agent: * if none does. Within a group the longest matching path wins.
The rules were standardised in 2022 as RFC 9309, the Robots Exclusion Protocol. It asks crawlers to parse at least the first 500 kibibytes, to follow at least five redirects to reach the file, and not to trust a cached copy for more than 24 hours. That last rule is why a change is not instant.
Two limits matter more than the syntax:
- It is a request. Nothing in the protocol stops a fetch. Reputable operators publish that they honour it; enforcement needs your server or CDN.
- It controls crawling, not indexing. A blocked URL can still appear in search results if other pages link to it. Keeping a page out of an index is the job of a
noindexrule, in the page or in an X-Robots-Tag header, and the crawler has to be allowed in to read it.
What does a real AI-era robots.txt look like?
Here is part of ours, as attensira.com serves it from this site's code on 4 October 2026. It has 34 groups and is 1,743 bytes long:
User-agent: GPTBot
Allow: /
Disallow: /api/
User-agent: OAI-SearchBot
Allow: /
Disallow: /api/
User-agent: ClaudeBot
Allow: /
Disallow: /api/
User-agent: CCBot
Disallow: /
User-agent: AhrefsBot
Disallow: /
Sitemap: https://attensira.com/sitemap-index.xmlEvery AI search, answer and training crawler gets its own group and is allowed everywhere except the API. Three crawlers are shut out completely: Common Crawl's CCBot and two SEO-tool crawlers. The last line points crawlers at the sitemap. Naming each crawler, rather than relying on *, means a later rule for one of them cannot accidentally change the rest.
A file says who may come; only the edge says who came. Attensira counts crawler requests in edge middleware, because crawlers run no JavaScript, and labels each by the user agent it claimed. Any client can claim any name, so our own counts, 143,601 AI-crawler requests in the 30 days to 4 October 2026, are directional, not verified.
Who did our robots.txt actually let in?
Every AI crawler below is allowed everywhere except /api/; CCBot is shut out. In the 30 days to 4 October 2026, one Meta crawler, Meta-ExternalAgent, made nine in ten of the 143,601 requests; Meta documents it for training or indexing content directly. Rows are labelled by the user agent each request claimed, and none was IP-verified.
Meta-ExternalAgent
- Our rule
- Allow, except /api/
- Requests
- 131,105
GPTBot, OAI-SearchBot, ChatGPT-User
- Our rule
- Allow, except /api/
- Requests
- 7,536
Bytespider
- Our rule
- Allow, except /api/
- Requests
- 3,505
PerplexityBot
- Our rule
- Allow, except /api/
- Requests
- 621
bingbot
- Our rule
- Allow, except /api/
- Requests
- 541
Googlebot
- Our rule
- Allow, except /api/
- Requests
- 189
ClaudeBot, Claude-User
- Our rule
- Allow, except /api/
- Requests
- 104
CCBot
- Our rule
- Disallow: /
- Requests
- none recorded
How do you allow AI search but block AI training?
Write separate groups for each operator's crawlers. OpenAI documents GPTBot for training, OAI-SearchBot for surfacing sites in ChatGPT search and ChatGPT-User for fetches a person triggers. Disallowing GPTBot asks OpenAI not to train on the pages; disallowing OAI-SearchBot removes them from ChatGPT search answers. Anthropic, Perplexity and Google split their crawlers the same way, under different names. Google's training opt-out, Google-Extended, is a robots.txt token only; Google's AI Overviews are fed by ordinary Googlebot.
Across the web, sites block training more than search. In Attensira's study of the top 10,000 Tranco domains, run on 3 September 2026 over 8,036 robots.txt files, 14.3% blocked GPTBot at the root, against 5.8% for OAI-SearchBot and 1.9% for Googlebot. Common Crawl's CCBot, a training-data crawler, was the most blocked of all at 15.1%.
How often do sites split OpenAI's crawlers?
Often enough to show the split is deliberate. Across 8,036 readable robots.txt files among the top 10,000 Tranco domains, GPTBot was blocked at the root more than twice as often as OAI-SearchBot. Plain Googlebot, which also feeds Google's AI Overviews, was almost never blocked.
- blocked GPTBot, OpenAI's training crawler, at the root
- 14.3%
- 1,147 of 8,036 files
- blocked ChatGPT-User, the fetcher a person triggers
- 7.1%
- 573 of 8,036 files
- blocked OAI-SearchBot, which puts sites in ChatGPT search
- 5.8%
- 467 of 8,036 files
- blocked Googlebot
- 1.9%
- 156 of 8,036 files
What mistakes cost sites their AI citations?
- A blanket block written for training.
Disallow: /under a rule that also matches the search crawler removes you from answers as a side effect. - Blocking a crawler you meant to throttle. Rate problems belong in your server or CDN, not in a disallow.
- Blocking CSS and JavaScript paths that a renderer needs to see the page.
- Expecting an instant effect. Allow a day for any change to reach the operators.
- Assuming robots.txt is the whole story. CDN bot rules and firewalls block crawlers without a line in robots.txt, which is why a file that says "allowed" overstates real access.
How does Attensira help with robots.txt?
Attensira is the service of an SEO agency at the price of a tool, and for robots.txt that means two things. The free robots.txt generator builds a file with a rule for each AI crawler, starting from "allow the ones that can cite you, block the ones that only train". In a workspace, the crew's web engineer reads your crawler logs and your robots rules, and when a rule is costing you answers it proposes the fix as a pull request; robots.txt at the root is one of the files it may edit, and nothing merges without your approval. The AI crawler guide covers each operator's crawlers in full.
See your AI visibility in ChatGPT
7 days free · card required
Questions about Robots.txt
What is robots.txt?
Does blocking GPTBot remove my site from ChatGPT search?
Does robots.txt stop a crawler from fetching my pages?
How long until a robots.txt change takes effect?
How many sites block AI crawlers?
Can robots.txt keep a page out of Google's index?
Where do these facts come from?
5 sources, 6 statements: each statement with the page it came from and the day it was checked.
RFC 9309 requires a robots.txt parsing limit of at least 500 kibibytes, says crawlers should follow at least five consecutive redirects, and says a cached robots.txt should not be used for more than 24 hours.
rfc-editor.org · retrieved
In Attensira's study of AI crawler access across the top 10,000 Tranco domains (run 3 September 2026, 8,036 robots.txt files read), 14.3% blocked GPTBot at the site root (1,147), 5.8% blocked OAI-SearchBot (467), 7.1% blocked ChatGPT-User (573), 15.1% blocked CCBot (1,215), 12.3% blocked Google-Extended (992) and 1.9% blocked Googlebot (156).
attensira.com · retrieved
OpenAI documents that sites disallowing OAI-SearchBot will not be shown in ChatGPT search answers, that disallowing GPTBot indicates content should not be used in training, that robots.txt rules may not apply to the user-initiated ChatGPT-User, and that it can take about 24 hours from a robots.txt update for its search systems to adjust.
developers.openai.com · retrieved
In Attensira's own workspace, read over the Attensira MCP on 4 October 2026, attensira.com received 143,601 AI-crawler requests in the 30 days from 5 September to 4 October 2026, labelled by the user agent each request claimed: 131,105 from Meta-ExternalAgent, 7,536 from OpenAI's agents, 3,505 from Bytespider, 621 from PerplexityBot, 541 from bingbot, 189 from Googlebot and 104 from Anthropic's agents. None was IP-verified.
In Attensira's own workspace, read over the Attensira MCP on 4 October 2026, a ChatGPT answer of 4 October 2026 to the tracked question 'how to block AI crawlers in robots.txt' described GPTBot and OAI-SearchBot as separate controls and called robots.txt an instruction, not an access-control mechanism.
Meta states that the Meta-ExternalAgent crawler crawls the web for use cases such as training foundation AI models or improving products by indexing content directly.
developers.facebook.com · retrieved
Want whatever it takes to win the answer?
7 days free · card required
