CrawlForge MCP
首页Playground应用场景集成价格文档博客
AI Crawler List 2026: Every Bot + Should You Block Them?
AI Engineering
返回博客
AI 工程

AI Crawler List 2026: Every Bot + Should You Block Them?

C
CrawlForge Team
工程团队
2026年8月25日
阅读时长 12 分钟

本页内容

快速解答

As of August 2026 the major AI vendors run three distinct crawler classes, and the class matters more than the bot name. OpenAI operates GPTBot (training), OAI-SearchBot (ChatGPT search index), ChatGPT-User (user-triggered fetch) and OAI-AdsBot; Anthropic operates ClaudeBot (training), Claude-SearchBot (search index) and Claude-User (user-triggered). Blocking training crawlers costs no AI-search visibility, because search runs on separate bots. Blocking search or user-triggered crawlers removes you from ChatGPT, Claude and Perplexity answers entirely. Google-Extended is a robots.txt token, not a crawler, and blocking it does not affect Google Search ranking. Verify bots by published IP ranges — user-agent strings are trivially spoofed.

Anthropic last updated its crawler documentation on 7 April 2026. Most AI-crawler lists ranking on Google predate that update, and they agree on something now wrong: that ClaudeBot fetches citations during chat sessions and anthropic-ai is the training crawler.

Anthropic's documentation says the opposite. ClaudeBot is the training crawler. Claude-User fetches pages when a person asks Claude about them, and Claude-SearchBot builds the index behind Claude's search results. Allow ClaudeBot because a list called it the citation fetcher, and you have allowed training for no citation benefit.

Memorising bot names is the wrong exercise. The names churn; the three classes underneath them do not, and the class determines what you lose the moment you write Disallow.

Table of contents

  • What are the three types of AI crawler?
  • The complete AI crawler list for 2026
  • Why do crawler lists disagree about ClaudeBot?
  • Should you block GPTBot and ClaudeBot?
  • What does Google-Extended actually control?
  • How do you block (or allow) AI crawlers in robots.txt?
  • Do AI crawlers respect robots.txt?
  • What do you do when a crawler overloads your server?
  • Does robots.txt carry legal weight?
  • Where CrawlForge fits into this

What are the three types of AI crawler?

Every bot below belongs to one of three classes. Getting the class right is the whole job.

ClassWhat it feedsWhat blocking it costs youExamples
TrainingThe corpus a foundation model is trained onExclusion from future training runs. No effect on whether AI products can find or cite you today.GPTBot, ClaudeBot, Applebot-Extended, CCBot
Search indexThe retrieval index an AI product queries at answer timeInvisibility in that product's answers. This is the expensive one.OAI-SearchBot, Claude-SearchBot, PerplexityBot, DuckAssistBot
User-triggeredA single page fetch, initiated by a human right nowThe assistant cannot open your page even when a user asks for it.ChatGPT-User, Claude-User, Perplexity-User, MistralAI-User

The asymmetry matters. Training crawlers affect a model shipping in six months. Search-index and user-triggered crawlers affect whether someone gets your page in an answer this afternoon.

A blanket Disallow: / for everything AI-shaped — what most "block AI bots" snippets do — collapses those three into one decision. That is how sites quietly disappear from AI answers while believing they only opted out of training.

The complete AI crawler list for 2026

Sources: OpenAI's bot documentation, Anthropic's crawler support article, and Momentic's maintained AI crawler list (updated November 2025). Where a vendor contradicts a third-party list, the vendor wins. Tokens match case-insensitively but are reproduced exactly as published.

BotOperatorClassrobots.txt tokenBlocking it costs you
GPTBotOpenAITrainingGPTBotExclusion from OpenAI model training. No effect on ChatGPT search.
OAI-SearchBotOpenAISearch indexOAI-SearchBotYou leave ChatGPT search answers; navigational links may still show.
ChatGPT-UserOpenAIUser-triggeredChatGPT-UserChatGPT cannot open your page when a user asks about it.
OAI-AdsBotOpenAIAds validationOAI-AdsBotSubmitted ad landing pages cannot be validated. Never used for training.
ClaudeBotAnthropicTrainingClaudeBotFuture content excluded from Claude training datasets.
Claude-SearchBotAnthropicSearch indexClaude-SearchBotReduced visibility in Claude's search results.
Claude-UserAnthropicUser-triggeredClaude-UserClaude cannot retrieve your page for a user's question.
anthropic-aiAnthropicTraining (legacy token)anthropic-aiNothing measurable today; cheap belt-and-braces rule.
claude-webAnthropicUndocumentedclaude-webUnknown; Momentic observes it fetching content for Claude.
PerplexityBotPerplexitySearch indexPerplexityBotAbsent from Perplexity's index, so never cited.
Perplexity-UserPerplexityUser-triggeredPerplexity-UserYour page fails to load when a user clicks your citation.
GooglebotGoogleSearch indexGooglebotYou leave Google Search, and so AI Overviews.
Google-ExtendedGoogleTraining/grounding tokenGoogle-ExtendedNo Gemini training or grounding use. No ranking effect.
GoogleAgent-MarinerGoogleAgentic browserGoogleAgent-MarinerMariner agents cannot act on your site.
BingbotMicrosoftSearch indexBingbotYou leave Bing Search and Copilot answers.
ApplebotAppleSearch indexApplebotNo Siri or Spotlight results.
Applebot-ExtendedAppleTrainingApplebot-ExtendedApple's models exclude your content; Siri and Spotlight unaffected.
AmazonbotAmazonSearch indexAmazonbotNo Alexa, Fire OS AI, or product-recommendation surfaces.
BytespiderByteDanceTraining + searchBytespiderOut of TikTok search and ByteDance AI features.
DuckAssistBotDuckDuckGoSearch indexDuckAssistBotNot used in DuckAssist answers.
YouBotYou.comSearch indexYouBotAbsent from You.com's AI search.
TimpibotTimpiSearch indexTimpibotOut of Timpi's decentralized index. Low volume either way.
MistralAI-UserMistralUser-triggeredMistralAI-UserLe Chat cannot fetch your page for citations.
cohere-aiCohereTrainingcohere-aiExcluded from Cohere model training data.
CCBotCommon CrawlOpen datasetCCBotYou drop out of Common Crawl snapshots, which feed many models.
AI2BotAllen InstituteResearch datasetAI2BotExcluded from Semantic Scholar and AI2 corpora.
DiffbotDiffbotStructured dataDiffbotAbsent from Diffbot's knowledge graph.
omgiliOmgiliForum indexomgiliForum and comment content goes unindexed.
FacebookBotMetaLink previewFacebookBotNo link previews on Facebook or Instagram.
meta-externalagentMetaFallback fetchermeta-externalagentMeta's backup fetch fails when FacebookBot does.
LinkedInBotLinkedInLink previewLinkedInBotNo preview cards for LinkedIn shares.

Which AI crawlers cannot be blocked in robots.txt?

A growing category of AI traffic is not a crawler at all. Agentic browsers drive a real browser for a user, and several are indistinguishable from Chrome traffic in your logs.

AgentOperatorIdentifiable asCan robots.txt control it?
ChatGPT AtlasOpenAIStandard Chrome user-agent stringNo — identical to Chrome. IP rules only.
Operator / agent modeOpenAINo known user agent; a remote browser resembling ChromeNo
GrokxAIGrokBot/1.0, xAI-Grok/1.0, Grok-DeepSearch/1.0 documented but rarely observed; iPhone user-agent strings reported insteadNot reliably
Claude computer use / Claude for ChromeAnthropicScreenshot-driven control of the user's own browserNo — it is their browser

If your policy depends on stopping these, robots.txt is the wrong layer. You need IP rules, a WAF, or authentication — each of which blocks the humans using those tools too.

Why do crawler lists disagree about ClaudeBot?

Because the roles were reassigned and third-party lists have not caught up. Anthropic now documents exactly three crawlers — ClaudeBot for training, Claude-User for user-initiated fetches, Claude-SearchBot for search indexing — on a page dated April 2026. Momentic's November 2025 list, one of the better-maintained ones, still describes ClaudeBot as the chat-citation fetcher and anthropic-ai as the primary training crawler.

When a third-party list and vendor documentation disagree, follow the vendor and keep the legacy token anyway. An extra User-agent: anthropic-ai block costs nothing and covers the case where the older behaviour is still live somewhere.

Should you block GPTBot and ClaudeBot?

Blocking training crawlers is a policy decision, not an SEO one. The part worth internalising: blocking GPTBot and ClaudeBot costs zero AI-search visibility today, because ChatGPT search runs on OAI-SearchBot and Claude search on Claude-SearchBot. OpenAI states the settings are independent — allow OAI-SearchBot while disallowing GPTBot — noting only that if both are allowed it may reuse one crawl for both.

So the decision splits cleanly:

  • You publish to be found. Allow all three classes. Search and user-triggered bots are the new referral channel; blocking them is a noindex on your fastest-growing discovery surface.
  • Your content is the product (documentation you sell, licensed research, a paywalled archive). Block training, allow search and user-triggered fetches: discoverable, but out of the corpus.
  • The content is genuinely sensitive. robots.txt is not access control. Use authentication.

What not to do is block everything AI-sounding because a checklist said so. That combination makes you invisible in AI answers while doing nothing authentication would not do better.

What does Google-Extended actually control?

Google-Extended is a robots.txt token, not a crawler. No request in your logs will ever carry it as a user agent. Googlebot fetches; the token controls whether that content may be used for Gemini training and grounding. Two consequences follow, both routinely mishandled:

Blocking Google-Extended does not affect your Google Search ranking. It is a use-restriction on already-crawled content, evaluated separately from indexing.

You cannot opt out of AI Overviews without opting out of Search. They are generated as part of Google Search, from the Search index. The only lever that removes you is disallowing Googlebot — an expensive way to avoid a summary.

How do you block (or allow) AI crawlers in robots.txt?

Here is a complete file for the second case above: search and user-triggered crawlers allowed, training crawlers blocked, expensive endpoints protected. If you are in the first case — publishing to be found — move the section 3 groups up into section 1 and allow them too. That is what CrawlForge's own robots.txt does, training crawlers included. Serve it at /robots.txt on every host and subdomain you own — robots.txt is per-origin, so blog.example.com needs its own copy.

# 1. AI search crawlers — allow these or you vanish from AI answers User-agent: OAI-SearchBot User-agent: Claude-SearchBot User-agent: PerplexityBot User-agent: DuckAssistBot User-agent: YouBot User-agent: Amazonbot Disallow: /search Disallow: /cart/ Disallow: /*/compare/ Allow: / # 2. User-triggered fetchers — a human asked for this page User-agent: ChatGPT-User User-agent: Claude-User User-agent: Perplexity-User User-agent: MistralAI-User Allow: / # 3. Training crawlers — opt out of the corpus User-agent: GPTBot Disallow: / User-agent: ClaudeBot Disallow: / User-agent: anthropic-ai Disallow: / User-agent: Google-Extended Disallow: / User-agent: Applebot-Extended Disallow: / User-agent: CCBot Disallow: / User-agent: cohere-ai Disallow: / # 4. Everyone else, including Googlebot and Bingbot User-agent: * Disallow: /search Disallow: /cart/ Disallow: /*/compare/ Allow: /

Two syntax notes. Every User-agent line needs at least one Allow or Disallow after it, or the group does nothing. And path wildcards (*, $) are honoured by major crawlers but not universally, so plain prefixes are safest for rules you cannot afford to have ignored.

The grouping rule that breaks most robots.txt files

The most common mistake in AI-crawler configs, and RFC 9309 is worth reading to internalise it: a crawler obeys exactly one group — the most specific one whose user-agent line matches it. It does not merge that group with User-agent: *.

So section 4's Disallow: /search above protects Googlebot and every unnamed bot. It does not apply to OAI-SearchBot, which has its own group in section 1 — which is why section 1 repeats those lines. Put your expensive-endpoint rules only under User-agent: *, add named AI-bot groups, and you have exempted every AI crawler from your crawl traps.

Do AI crawlers respect robots.txt?

The reputable ones do, with three real caveats.

User-triggered fetches are explicitly outside it. OpenAI documents that because ChatGPT-User actions are initiated by a user, robots.txt rules may not apply. That is the same reasoning that lets your browser fetch a page your robots.txt disallows.

Changes take time to land. OpenAI puts robots.txt propagation at roughly 24 hours, so expect a day of continued traffic before concluding a bot is misbehaving.

It is voluntary. robots.txt is a request, not an enforcement mechanism. Anthropic is explicit that robots.txt is its supported opt-out and that IP blocking "may not work correctly or persistently guarantee an opt-out" — precisely because blocking IPs stops the crawler reading the robots.txt carrying your opt-out. If content must not be fetched, put it behind authentication.

How do you verify a crawler is genuine?

A user-agent string is an unauthenticated header. Anyone can send ClaudeBot/1.0, and plenty do — it is the cheapest way to inherit the reputation of a bot you allowlisted. Verify against published IP ranges instead:

CrawlerPublished IP list
GPTBotopenai.com/gptbot.json
OAI-SearchBotopenai.com/searchbot.json
ChatGPT-Useropenai.com/chatgpt-user.json
All Anthropic botsclaude.com/crawling/bots.json

These are JSON files in the format Google and Bing publish, so one fetch-and-match routine covers all of them. A request claiming to be GPTBot from an address outside those ranges is not GPTBot.

What do you do when a crawler overloads your server?

Block-or-allow is a false binary. Most pain attributed to AI crawlers is a rate problem, not an access problem.

A September 2025 r/webdev thread titled "ClaudeBot is hammering my server with almost a million requests in one day" — roughly 1,800 upvotes and over 200 comments — describes ClaudeBot hitting one site about 881,000 times in 24 hours. On the GitLab forum in May 2026, administrators describe returning 403 to a user-agent regex covering GPTBot, ClaudeBot and others — not to opt out of AI, but because crawlers were hitting expensive routes such as /-/blame.

That is the general shape of the problem: crawlers follow every link, including ones that trigger a database-heavy diff render. Three fixes, in order of preference:

  1. Disallow the expensive routes, not the bot. Blame views, diff endpoints, faceted-search permutations, calendar pages with infinite date ranges. Remember the grouping rule — repeat those lines in every named group.
  2. Slow it down. Anthropic supports the non-standard Crawl-delay extension, so User-agent: ClaudeBot followed by Crawl-delay: 1 is honoured. Support elsewhere is inconsistent; use WAF rate rules keyed on the verified IP ranges above.
  3. Report it. Anthropic asks that suspected bot malfunctions go to its support channel with the affected domain. A million requests a day from one origin is usually a fixable bug on their side.

Does robots.txt carry legal weight?

Increasingly, yes — indirectly. The EDPB's Guidelines 03/2026 — adopted 7 July 2026, in public consultation until the end of October 2026 — treat robots.txt and ai.txt signals as legally relevant to whether scraping for AI training satisfies the GDPR legitimate-interests balancing test. A machine-readable opt-out that a scraper ignored is now evidence in that assessment — a real change from robots.txt as pure etiquette. Full picture: is web scraping legal for AI in 2026.

Where CrawlForge fits into this

The disclosure is owed: CrawlForge is a web scraping platform, which puts us on the other side of this table. Our 28 tools fetch pages for AI agents, respecting robots.txt and rate limits when they do.

That is also the point. The policy you write for ChatGPT-User and Claude-User governs every AI agent built on a scraping API — including the one a prospective customer points at your docs while evaluating you.

If you decide to be readable by AI, make it cheap for them. A generated llms.txt gives agents a machine-readable map of the pages you want read, cutting the crawl volume needed to understand your site. If you run an MCP server yourself, the fetching side has its own hazards — see SSRF in MCP servers.


Building agents that read the live web? Start free with 1,000 credits — robots.txt compliance and rate limiting on by default. See the llms.txt generator or how CrawlForge compares to other scraping MCP servers.

亲自试一试——无需注册

在 Playground 中运行 CrawlForge 的 29 个抓取与提取工具中的任意一个,然后免费开始,获取 1,000 credits。

1,000 免费 credits • 一次性 • 无需信用卡

标签

AI crawlersrobots.txtGPTBotClaudeBotGEO

关于作者

C

CrawlForge Team

工程团队

我们正在打造功能最全面的 Web 抓取 MCP server。我们开发的工具帮助开发者为 AI 应用提取、分析和转换 Web 数据。

及时获取最新洞察

将教程、产品更新与 Web 抓取技巧直接发送到你的收件箱。

拒绝垃圾邮件,随时可取消订阅。

付诸实践

在任意 URL 上测试 CrawlForge 的工具——免费,无需注册。

本页内容

Frequently Asked Questions

What is the difference between GPTBot and OAI-SearchBot?+

They serve completely different purposes and are controlled independently. GPTBot crawls content that may be used to train OpenAI's generative foundation models, so disallowing it signals that your content should not enter training data. OAI-SearchBot powers ChatGPT search: allowing it lets your pages appear in ChatGPT search answers, and blocking it removes you from those answers, though navigational links may still surface. You can allow OAI-SearchBot while disallowing GPTBot with no penalty. OpenAI notes that if both are allowed it may reuse a single crawl to serve both purposes, and that robots.txt changes take roughly 24 hours to propagate.

Does blocking Google-Extended hurt my Google Search rankings?+

No. Google-Extended is a robots.txt token rather than a separate crawler, so no request in your logs will ever identify as Google-Extended. Googlebot performs the fetch; the token controls only whether that content may be used for Gemini training and grounding. Blocking it is a use-restriction applied after crawling and is evaluated separately from Search indexing. The related limitation is that AI Overviews are generated as part of Google Search from the Search index, so there is no way to opt out of AI Overviews without disallowing Googlebot and leaving Google Search entirely.

Can I stop ChatGPT from reading my page when a user pastes the URL?+

Not reliably with robots.txt. ChatGPT-User fetches pages on demand when a person or a Custom GPT asks about a specific URL, and OpenAI documents that because these actions are initiated by a user, robots.txt rules may not apply to them. The same reasoning applies to Claude-User, Perplexity-User and MistralAI-User. This class of traffic behaves like a browser acting for a human rather than an automated crawl. If a page genuinely must not be fetched by anyone, robots.txt is the wrong control: put it behind authentication.

How do I check which AI crawlers have already visited my site?+

Grep your access logs for the user-agent tokens. On Nginx or Apache, a filter such as grep -Ei "gptbot|oai-searchbot|chatgpt-user|claudebot|perplexitybot|bingbot" access.log will surface the hits, and each line gives you the source IP, timestamp, path and status code. Then verify the IPs against the vendors' published ranges at openai.com/gptbot.json, openai.com/searchbot.json, openai.com/chatgpt-user.json and claude.com/crawling/bots.json, because user-agent strings are trivially spoofed. If a bot you expect is missing entirely, check whether a robots.txt rule is blocking it before assuming it has no interest in your site.

Is a single User-agent: * rule enough to control AI crawlers?+

No, for two reasons. Under RFC 9309 a crawler obeys exactly one group — the most specific one matching its token — and does not merge that group with the wildcard group. So the moment you add a named block such as User-agent: OAI-SearchBot, that bot stops seeing every rule you wrote under User-agent: *, including your crawl traps and expensive-endpoint disallows. Any path you need protected must be repeated inside each named group. Separately, some AI bots do not honour the wildcard group at all, and agentic browsers such as ChatGPT Atlas send a standard Chrome user agent that no robots.txt rule can address.

相关文章

自托管的网页搜索 MCP server
AI Engineering

自托管的网页搜索 MCP server

大多数号称“自托管”的搜索 MCP server 只是把进程跑在本地。CrawlForge 可以让 search_web 指向你自己的 SearXNG 实例——以及,哪一部分仍然不是自托管的。

C
CrawlForge Team
|
8月28日
|
4 分钟
为 AI 智能体提供 Reddit 数据:MCP 路线
AI Engineering

为 AI 智能体提供 Reddit 数据:MCP 路线

未经修饰的真实观点都在 Reddit 上,而它又是全网对智能体最不友好的主流网站。本文讲解如何通过一个 MCP 工具,让你的 AI 智能体获得真正可用的 Reddit 搜索 — 帖子、评论和完整讨论串。

C
CrawlForge Team
|
8月24日
|
6 分钟
智能体爬虫:它是什么,以及如何构建一个
AI Engineering

智能体爬虫:它是什么,以及如何构建一个

智能体爬虫追的是目标,不是选择器。这意味着什么、构建它的三种方式、可用代码、真实的失败模式,以及一笔用 credits 算清的成本账。

C
CrawlForge Team
|
8月22日
|
13 分钟

页脚

CrawlForge MCP

面向 AI Agent 的企业级网页抓取。29 个专业 MCP 工具,专为构建智能系统的现代开发者而设计。

产品

  • 功能
  • Playground
  • 价格
  • 应用场景
  • 集成
  • 替代方案
  • 更新日志

资源

  • 快速上手
  • API 参考
  • 模板
  • 指南
  • 博客
  • 术语表
  • 常见问题
  • 网站地图

开发者

  • MCP 协议
  • Claude Desktop
  • Cursor IDE
  • LangChain
  • LlamaIndex

公司

  • 关于我们
  • 联系我们
  • 隐私政策
  • 服务条款
  • 可接受使用政策
  • Cookie

保持更新

获取新工具和新功能的最新动态。

基于 Next.js 和 MCP 协议构建

© 2025-2026 CrawlForge。保留所有权利。