AI Crawler Types, Actually Explained
GPTBot and ChatGPT-User both come from OpenAI, and blocking the wrong one can either fail to protect your content or accidentally break a live user's request. Here's every AI crawler type, what each one actually does, and how to tell them apart.
Same Company, Different Bots, Different Jobs
The single most common mistake site owners make with AI crawlers is treating "AI bots" as one thing to allow or block. In reality, a single AI company typically runs several separate crawlers, each with a different name, a different purpose, and a different consequence if blocked. OpenAI alone operates at least three: GPTBot, which gathers content that may improve future model training; OAI-SearchBot, which indexes pages so they can be surfaced and cited in ChatGPT's search feature; and ChatGPT-User, which fetches a single page in real time when a live ChatGPT user's question requires it.
Blocking all three with one blanket rule solves a training-data concern but also removes a site from ChatGPT's citations and breaks live requests real people are actively making through the assistant. Anthropic follows the same pattern with ClaudeBot (training), Claude-SearchBot (search quality), and Claude-User (real-time queries), and Perplexity, Google, Apple, and Meta all maintain comparable splits, though with varying degrees of transparency about which bot does what.
A single AI company often runs three or more separate crawlers under different names, each serving a distinct purpose.
Training, Search, and Agent Crawlers
Training Crawlers
Bulk-crawl content specifically to fold it into a model's training data, permanently and without per-use compensation. Examples: GPTBot, ClaudeBot, CCBot, Bytespider, Meta-ExternalAgent.
Search/Citation Crawlers
Build a searchable index so a page can be surfaced and linked to inside an AI-generated answer. Examples: OAI-SearchBot, Claude-SearchBot, PerplexityBot.
Agent/User Crawlers
Fetch a single page in real time because a live person's question or task requires it right now, not on a scheduled crawl. Examples: ChatGPT-User, Claude-User, Perplexity-User.
Mixed-Use Crawlers
Combine functions in one bot identity, most notably Googlebot, which handles both search indexing and AI training under a single user agent, unlike most other major AI companies.
Named Crawlers and What Each One Does
| Crawler | Operator | Type | What Blocking It Does |
|---|---|---|---|
| GPTBot | OpenAI | Training | Opts out of future model training; doesn't affect ChatGPT search citations |
| OAI-SearchBot | OpenAI | Search | Removes the site from ChatGPT search results and citations |
| ChatGPT-User | OpenAI | Agent | Breaks live requests when a real ChatGPT user asks about that page |
| ClaudeBot | Anthropic | Training | Opts out of Claude model training |
| Claude-SearchBot | Anthropic | Search | Affects search result quality for Claude's browsing features |
| Claude-User | Anthropic | Agent | Breaks live requests when a Claude user's query needs the page |
| PerplexityBot | Perplexity | Search | Removes the site from Perplexity's cited answer sources |
| Google-Extended | Training | Opts out of Gemini/AI training; does not affect Google Search ranking | |
| CCBot | Common Crawl | Training | Opts out of the open dataset widely reused for third-party AI training |
How to Set Rules for Each Type
List crawlers individually in robots.txt
A single wildcard rule treats every AI bot the same; naming each user agent separately, with its own Allow or Disallow line, keeps full control over which crawler type gets through.
Decide your policy per category, not per company
A reasonable default for many publishers: allow search and user-action crawlers (visibility in AI answers) while disallowing pure training crawlers (no permanent data absorption).
Verify against actual server logs
robots.txt only states a preference; checking access logs for the actual user-agent strings confirms which crawlers are genuinely visiting and whether they're honoring the rules.
Re-check after any bot-management platform change
Cloudflare, WordPress SEO plugins, and similar tools sometimes bundle multiple crawler types into one toggle; confirm what a single switch actually controls before flipping it.
Robots.txt Is a Request, Not a Lock
It's worth being clear-eyed about what robots.txt actually accomplishes. It's a plain-text file that compliant crawlers voluntarily honor, not an enforcement mechanism. Most major, named AI crawlers from established companies do respect it, partly because ignoring it carries real reputational and, increasingly, legal risk as publishers and courts pay closer attention to AI training data sourcing. But it's been reported in various contexts that some crawlers, including PerplexityBot in certain configurations and Bytespider, have not always fully honored disallow rules, and a malicious or poorly built scraper can simply ignore the file altogether.
For site owners who need stronger guarantees than a text file provides, firewall-level blocking based on IP ranges or verified bot detection (the kind Cloudflare's AI Crawl Control and similar services offer) provides actual enforcement rather than a request. robots.txt remains the right first layer for legitimate crawlers that behave as documented; it just isn't the only layer worth having if training-data control genuinely matters to a site's business.
Checking server access logs for actual AI crawler user-agent strings confirms whether robots.txt rules are being honored in practice.
Verification matters because user-agent strings are self-reported. Anyone can write a script that announces itself as GPTBot or ClaudeBot, and impostors do exactly that, either to bypass rules that only apply to specific named bots or to make suspicious scraping look like legitimate AI company traffic. The major AI operators publish the IP address ranges their real crawlers use, and OpenAI, Anthropic, and others document these ranges specifically so site owners can confirm that a request claiming to be a given bot actually originates from that company's infrastructure. Cross-checking a suspicious user agent against the published ranges is the most reliable way to tell a genuine crawler from a spoofed one.
The category distinction also affects how a site should think about the tradeoff between visibility and control. Search and citation crawlers are effectively the new distribution channel for a growing share of readers: when someone asks an assistant a question and receives an answer with linked sources, the sites linked are the ones whose content a search-oriented crawler was allowed to read. Training crawlers offer no comparable return. Once content is absorbed into a model, there is no per-use link, no referral, and no way for a reader to trace an answer back to the page that informed it. That asymmetry is why many publishers now treat the two categories completely differently, welcoming one and refusing the other, rather than applying a single policy to everything labeled AI.
The Bottom Line
"AI crawler" is not one thing. Nearly every major AI company splits its bots into at least a training crawler, a search/citation crawler, and a live agent crawler, each with a different name and a different consequence if blocked. Blocking GPTBot doesn't remove a site from ChatGPT search — that's OAI-SearchBot's job — and blocking the wrong bot can either fail to protect training data or accidentally break real people's live requests.
Frequently Asked Questions
What's the difference between GPTBot and ChatGPT-User?
GPTBot is OpenAI's bulk training crawler, collecting content that may help improve future models. ChatGPT-User is a completely different bot that fetches a single page in real time when a live ChatGPT user's query requires it. Blocking GPTBot opts a site out of training; blocking ChatGPT-User can break requests a real person is actively making.
Does blocking GPTBot remove a site from ChatGPT's answers?
No. GPTBot only affects model training. The crawler that determines whether a page can be surfaced and cited in ChatGPT's search feature is a separate bot called OAI-SearchBot. A site can block GPTBot entirely while still allowing OAI-SearchBot and appearing in ChatGPT search results.
Do AI crawlers actually respect robots.txt?
Most major, named AI crawlers from OpenAI, Anthropic, and similar companies do respect robots.txt directives, since ignoring them risks reputational and legal exposure. Some crawlers, including PerplexityBot and Bytespider, have been reported in various contexts to not fully honor blocking rules.
How can I see which AI crawlers have actually visited my site?
Server access logs record the user-agent string of every request, so filtering logs for known AI crawler names shows actual visits. Cloudflare's AI Crawl Control dashboard and similar third-party bot-analytics tools also surface this without needing to parse raw logs manually.
Should I block every AI crawler by default?
Not necessarily. Blocking every AI crawler removes a site from a fast-growing discovery channel: AI-referred search visits have grown sharply year over year. A more targeted approach preserves visibility in AI answers without giving away content for permanent model training.
More AI Guides, Written Clearly
Browse our full library of AI explainers and how-tos, updated as the tools change.
More from the creator
Explore two other projects from the same creator.