On September 15, 2026 Cloudflare changed the meaning of its AI crawler settings and the defaults it offers new domains. A site that earns money from ads is now steered, at onboarding, to refuse AI training and to block user-directed agents on pages that carry an ad, while search crawlers stay allowed. Cloudflare fronts a large share of the web, so a default, rather than a publisher's choice, now decides whether an AI agent can read many pages.
This census is for two readers. The site owner on Cloudflare who has to decide whether to keep the default, and the builder whose agent fetches web pages and is about to start seeing refusals. It lists the 20 bots in Cloudflare's bot reference, the category Cloudflare assigns each, what the new ad-page default does to it, and what the operator's own page says the bot is for. Cloudflare's September 15 announcement and its July 1 announcement of the same change are the primaries. All pages were read on September 16.
- 01Agents are blocked on ad pages by default, for new ad-funded domains.Cloudflare's preset for a domain that monetises with ads sets Agent to "Block on pages with ads" and Training to "Disallow AI Training". Search stays on Allow.
- 02Block now hits search crawlers too.Since September 15, Block and Block on pages with ads apply to mixed-use crawlers such as Googlebot, Bingbot and Applebot. Refusing training without losing search now needs the new Disallow AI Training setting.
- 03Six of the twenty bots are agents.ChatGPT-User, Claude-User, Perplexity-User, Meta-ExternalFetcher, DuckAssistBot and MistralAI-User carry Cloudflare's AI Assistant category, which the new Agent control governs.
- 04The numbers behind the default are Cloudflare's.Cloudflare says under 1 percent of its sites block search bots while 17 percent enable some block on training. It does not say how it detects an ad on a page.
01 — The changeWhat changed on September 15
Cloudflare announced the shape of this change on July 1 and switched it on September 15. The July post said that on September 15 new defaults would apply to every new domain onboarding: the Training and Agent categories blocked by default on pages that display ads, Search allowed. It also said that from that date multi-purpose crawlers, the ones that crawl for search and training at once, would be allowed or blocked according to all of their behaviours, and that existing customers could opt out of that part ahead of time in their security settings.
The September 15 post delivers that, with one refinement the July post did not have. A new Training setting called Disallow AI Training publishes a no-training preference in the site's robots.txt, keeps crawling allowed for what Cloudflare calls Accountable mixed-use crawlers, and blocks every other training crawler. Cloudflare names Apple, Google and Microsoft as Accountable mixed-use operators, and Amazon, Anthropic, Meta and OpenAI as Accountable operators whose training crawlers are separate from their search crawlers and can be blocked without touching search. The post says the controls are "available to all customers, on all plans", and that the ad-supported presets are offered to customers onboarding a new domain.
Allow: every crawler allowed unless another rule blocks it. Disallow AI Training: the no-training preference is published in robots.txt, Accountable mixed-use crawlers keep crawling for search, all other training crawlers are blocked. Block on pages with ads: crawlers, mixed-use included, are blocked only on pages Cloudflare detects as serving an ad. Block: every crawler, mixed-use included, is blocked. Cloudflare says it can detect which pages serve ads but does not document how, and it says the list is too large and changes too often to publish in robots.txt.
Two smaller changes matter for the census. The old "Block AI Bots" switch is deprecated in favour of the three category controls, and existing domains that used it are migrated to Disallow AI Training plus Block on pages with ads for agents. And Cloudflare says there is no Disallow setting for agents yet, because the web has no established way to express that preference to an agent; it points at the IETF's AI preferences work as the place that may change.
02 — DefinitionsThe three categories, defined
Cloudflare classifies bots by behaviour and says one bot can show more than one. Its September 15 definitions, quoted: Search is "crawling to build a search index"; Training is "crawling to train or fine-tune a model"; Agent is "user-directed agents visiting a page on behalf of a human, such as chat fetch bots and browser-use agents". The bot reference uses older labels for the same idea, AI Search, AI Crawler and AI Assistant, plus Search Engine for Googlebot and Bingbot. The census keeps both, so a reader can see how the reference's label maps to the control that now governs the bot.
The Agent category is the one that changes an agent builder's week. A chat assistant that fetches a page to answer a question, or a browser-use agent that navigates a site to complete a task, is now blocked by default on any ad-bearing page of a new ad-funded Cloudflare domain. That is a class of traffic that was, until this month, treated much like a human visit.
Bots in Cloudflare's reference, by the control that governs them
Cloudflare AI Crawl Control bot reference, read September 16, 2026. 20 bots.03 — DatasetThe census: 20 bots
The "default on ad pages" column describes what happens to the bot on a page that serves ads, on a new domain that accepted Cloudflare's ad-supported preset from September 15. A blocked training crawler is blocked everywhere on that domain, not only on ad pages, because the preset uses Disallow AI Training; an agent is blocked only where an ad is detected; a search crawler is allowed. Existing domains keep whatever they had, migrated as described above.
| Bot · operator | Cloudflare category → control | Default on ad pages (new ad-funded domain) | Operator's stated purpose and token |
|---|---|---|---|
| GPTBotOpenAI | AI Crawler→ Training | Blocked | Crawls content that may be used to train OpenAI's foundation models; robots token GPTBot. OpenAI bots page. |
| ChatGPT-UserOpenAI | AI Assistant→ Agent | Blocked on ad pages | Visits a page when a ChatGPT user asks a question or a GPT action runs; token ChatGPT-User. OpenAI bots page. |
| OAI-SearchBotOpenAI | AI Search→ Search | Allowed | Surfaces sites in ChatGPT search results; token OAI-SearchBot. OpenAI bots page. |
| ClaudeBotAnthropic | AI Crawler→ Training | Blocked | Collects web content that may contribute to model training; token ClaudeBot. Anthropic support article. |
| Claude-UserAnthropic | AI Assistant→ Agent | Blocked on ad pages | Accesses a site when a Claude user asks a question; token Claude-User. Anthropic support article. |
| Claude-SearchBotAnthropic | AI Search→ Search | Allowed | Indexes content to improve search result quality; token Claude-SearchBot. Anthropic support article. |
| PerplexityBotPerplexity | AI Search→ Search | Allowed | Surfaces and links sites in Perplexity search; Perplexity says it is not used to crawl for foundation models. Perplexity docs. |
| Perplexity-UserPerplexity | AI Assistant→ Agent | Blocked on ad pages | Visits a page to answer a user's question and links it; not used for crawling. Perplexity docs. |
| GooglebotGoogle | Search Engine (mixed-use)→ Search + Training | Allowed for search; training refused via robots token | Google's search crawler. Training opt-out is the separate Google-Extended robots token, which Google says does not affect Search inclusion or ranking. Google crawler docs. |
| Google-CloudVertexBotGoogle | AI Crawler→ Training | Blocked | Crawls at a site owner's own request to build Vertex AI agents; token Google-CloudVertexBot; no effect on Search. Google crawler docs. |
| BingbotMicrosoft | Search Engine (mixed-use)→ Search + Training | Allowed for search; robots no-training support still being built | Bing's standard crawler. Cloudflare says Microsoft is building robots.txt no-training support, targeted for early 2027; until then the NOARCHIVE tag carries the preference. Bing webmaster help; Cloudflare, Sep 15. |
| ApplebotApple | AI Search (Cloudflare reference); mixed-use (Cloudflare, Sep 15)→ Search + Training | Allowed for search; training refused via robots token | Powers Spotlight, Siri and Safari search and may train Apple foundation models. Opt out of training with the Applebot-Extended token. Apple support page. |
| BytespiderByteDance | AI Crawler→ Training | Blocked | No ByteDance operator documentation was reachable on September 16; its webmaster platform is sign-in-walled. Purpose recorded from Cloudflare's category alone. |
| CCBotCommon Crawl | AI Crawler→ Training | Blocked | Builds Common Crawl's open web archive; token CCBot. Common Crawl page. |
| Meta-ExternalAgentMeta | AI Crawler→ Training | Blocked | Crawls for training foundation models or improving products by indexing; token meta-externalagent. Meta developer docs. |
| Meta-ExternalFetcherMeta | AI Assistant→ Agent | Blocked on ad pages | Fetches links at a user's request, including agentic tasks; Meta says it may bypass robots.txt. Meta developer docs. |
| FacebookBotMeta | AI Crawler→ Training | Blocked | Not described on the Meta crawler page read on September 16; category recorded from Cloudflare alone. |
| AmazonbotAmazon | AI Crawler→ Training | Blocked | Improves Amazon products and may train Amazon AI models; token Amazonbot. Amazon developer page. |
| DuckAssistBotDuckDuckGo | AI Assistant→ Agent | Blocked on ad pages | Crawls pages in real time for DuckDuckGo's AI-assisted answers, which cite their sources; DuckDuckGo says the data is not used to train AI models. Opt-out takes effect after 72 hours; token DuckAssistBot. DuckDuckGo help page. |
| MistralAI-UserMistral | AI Assistant→ Agent | Blocked on ad pages | Visits a page for a user's question in Vibe; Mistral says it is not used for crawling or training. Mistral robots docs. |
Several operator tokens have no Cloudflare row. Google-Extended and Applebot-Extended are robots.txt tokens with no crawler of their own; they exist so a site can refuse training by the mixed-use crawler without refusing search, which is what Disallow AI Training publishes on your behalf. Amazon documents Amzn-SearchBot and Amzn-User alongside Amazonbot, and Mistral documents MistralAI-Index and MistralAI-Training alongside MistralAI-User. Those are search and training bots the operators separate out, and they are not in the reference read for this census. Whether Cloudflare classifies them elsewhere we could not confirm, because the Radar bots directory the reference points to is an interactive application that returned no bot list at any fetch tier.
Evidence tier: primary documentation, two Cloudflare announcements and eleven operator pages
- As-of date
- September 16, 2026. Cloudflare's change took effect September 15; every page was read the following day.
- Method
- Bot list and categories taken from the Cloudflare AI Crawl Control bot reference. Controls and defaults from Cloudflare's September 15 post, cross-checked against the July 1 post. Purpose and robots token from each operator's own crawler page, quoted or paraphrased; where the operator page could not be read the row says so and carries Cloudflare's category only.
- Reconciliation
- The July 1 post scoped the September 15 defaults to all new domains onboarding, with Training and Agent both "blocked by default on the pages that display ads", and said existing customers could opt out of the mixed-use crawler change in advance. Cloudflare's August 21 post on Bot Preference Sync moved the Training default for an ad-monetised domain to a site-wide Disallow, and the September 15 preset table confirms Training = Disallow AI Training while Agent alone stays ads-scoped. The September 15 post describes the presets as offered at onboarding for new domains and the controls as available to all customers on all plans, with existing domains migrated to equivalent settings. Applebot is listed as AI Search in the bot reference and treated as a mixed-use crawler in the September 15 post; the row records both.
- Sources
- Cloudflare, "Have it both ways" (Sep 15, 2026); Cloudflare, "Say it once: introducing Bot Preference Sync" (Aug 21, 2026); Cloudflare, "Your site, your rules" (Jul 1, 2026); Cloudflare AI Crawl Control bot reference; OpenAI bots page; Anthropic support article on crawlers; Google common crawlers documentation; Apple's Applebot support page; Meta web crawlers documentation; Perplexity bots documentation; Amazon's Amazonbot page; Bing crawler help; Common Crawl's CCBot page; Mistral robots documentation.
- Limits
- Cloudflare's reference is "a selection" of bots, not its full verified-bot directory. ByteDance's webmaster platform is sign-in-walled, and Meta's page does not describe FacebookBot. Cloudflare does not document its ad detection method. The 1 percent and 17 percent figures are Cloudflare's own and are not independently checkable.
04 — Decision oneThe site owner's decision
If your site is on Cloudflare and runs ads, the preset costs you two things and protects one. It protects your pages from being used as training data by the eight training crawlers in the table, and it does so without touching Google, Bing or Apple search. It costs you the visit an AI assistant makes on a reader's behalf, on ad pages only, and with it whatever citation or link that assistant would have shown. And it may cost you agent traffic you wanted, such as a shopping agent completing a purchase, on the same pages.
Cloudflare's own framing of the trade is worth reading: ad revenue depends on a human seeing the page, training replaces the visit with an answer, and an agent fetches the page with nobody there to see the ad. That is true for a publisher. It is not obviously true for a retailer or a service business, where the agent may be carrying a customer. We set out how to decide that case in our decision matrix for AI crawler access, and the traffic shares behind it in our AI crawler traffic reference. Neither of those is repeated here.
05 — Decision twoThe agent builder's decision
If you build agents that fetch web pages, the practical effect is that a growing set of pages will refuse your fetch, and the refusal will depend on whether an ad was detected on that page, which you cannot see in advance. Three things follow.
Declare what you are. Cloudflare's controls act on verified, declared bots. An agent that fetches with a browser's user agent and no identity is not in the Agent category; it is in the undeclared-bot category, which Cloudflare blocks by default. The July post also narrowed what the Verified label buys: verified bots are no longer default-allowed, and the allowed category now decides what a verified bot may reach. Use an operator token, publish your IP ranges, and expect to be classified.
Respect the block, and log it. A 403 on an ad page is now a policy outcome, not an error. Record it as such so the agent can tell the user the page declined rather than retrying. Meta's documentation says its fetcher may bypass robots.txt because a user requested the fetch; Cloudflare's block is enforced at the network, not in robots.txt, so that argument does not get a fetcher through it.
Measure the refusal rate. The share of pages that refuse your agent is now a number that changes with Cloudflare's defaults and with how many domains onboard under the ad preset. Our 30-day agentic crawler log study shows what that traffic looked like from the site's side before the change; the builder's side is worth logging from now. If your agent depends on the open web and you want that measured before it becomes a support ticket, our agentic SEO practice runs the fetch audit from both sides.
06 — Next stepThe default now decides, unless the owner does
Check your Cloudflare Agent setting today, and declare your agent
Site owners: open the domain's security settings, confirm what the migration set for Search, Training and Agent, and change Agent to Allow if agents carry customers to you rather than readers away from you. Builders: give your agent a token and published IP ranges, treat a 403 on an ad page as a declined request, and start counting how often it happens. This table will be refreshed when Cloudflare changes a category or a default.