Skip to content

Guide10 min readPublished

robots.txt for AI agents: which bots to allow and block

The AI bots a store meets, what each vendor says its bot is for and what robots.txt does for it, which to allow and which to block, with a generator for your file and a checker for the one you have.

Which AI bots should a store allow in robots.txt? For most stores, the search bots (OAI-SearchBot, Claude-SearchBot, PerplexityBot and Googlebot) and the fetchers that visit when a shopper asks a question, with everyone asked to skip the cart and checkout. Training crawlers such as GPTBot and ClaudeBot are a choice of preference, because their vendors say blocking them does not touch their search bots. Whatever you choose, robots.txt is a request: it asks, and it cannot enforce.

This guide lists the AI bots a store meets, says what each vendor states its bot is for and what robots.txt does for it, and gives you a generator for your own file and a checker for the one you have. Storewalk is ours: we build the scan, and this guide is part of its site. The vendors' words come from their own pages, read on 3 November 2026; the advice and the groupings are ours. For how the file works and who signs their requests, read bots, crawlers and agents first, or after.

Which AI bots read robots.txt, and what is each one for?

Most AI companies run more than one bot, and each has its own name, called a product token, which is what you write after User-agent: in robots.txt. They fall into four main kinds. Search bots build the index an assistant searches when it answers. Fetchers for a user visit one page because someone asked a question just now. Training crawlers collect pages for training models. And two vendors, Google and Apple, publish control tokens, names that no bot sends but that you can address to opt out of training. One bot fits none of these: OpenAI's OAI-AdsBot, which checks pages submitted as ads on ChatGPT.

OpenAI says "Each setting is independent of the others", and Perplexity and Amazon say the same of theirs, so a block on one name does not reach the others. Highlight a kind to see who is in it:

The AI bots a store meets, and what each vendor says about robots.txt
Highlight

Showing every bot.

  • OAI-SearchBot

    OpenAI. Search

    For: “OAI-SearchBot is used to surface websites in search results in ChatGPT’s search features.”

    robots.txt: “we recommend allowing OAI-SearchBot in your site’s robots.txt file”

    If you block it (ours): Your store can drop out of ChatGPT’s search results.

    Source: OpenAI: Overview of OpenAI crawlers

  • Claude-SearchBot

    Anthropic. Search

    For: “Claude-SearchBot navigates the web to improve search result quality for users.”

    robots.txt: “Disabling Claude-SearchBot on your site prevents our system from indexing your content for search optimization, which may reduce your site’s visibility and accuracy in user search results.”

    If you block it (ours): Less visibility in Claude’s search answers, by Anthropic’s account.

    Source: Anthropic: Does Anthropic crawl data from the web?

  • PerplexityBot

    Perplexity. Search

    For: “PerplexityBot is designed to surface and link websites in search results on Perplexity.”

    robots.txt: “we recommend allowing PerplexityBot in your site’s robots.txt file”

    If you block it (ours): Your store can drop out of Perplexity’s search results.

    Source: Perplexity: Perplexity crawlers

  • Googlebot

    Google. Search

    For: “Crawling preferences addressed to the Googlebot user agent affect Google Search (including Discover and all Google Search features)”

    robots.txt: “always obey robots.txt rules when crawling automatically”

    If you block it (ours): Your listing in Google Search. Do not block it.

    Source: Google: Google’s common crawlers

  • Applebot

    Apple. Search

    For: “The data crawled by Applebot is used to power various features, such as the search technology integrated into many user experiences”

    robots.txt: “the Apple robot will follow Googlebot instructions.”

    If you block it (ours): Search features in Spotlight, Siri and Safari. With no Applebot group, Apple follows your Googlebot rules instead.

    Source: Apple: About Applebot

  • Meta-WebIndexer

    Meta. Search

    For: “The Meta-WebIndexer crawler navigates the web to improve Meta AI search result quality for users.”

    robots.txt: “Allowing Meta-WebIndexer in your robots.txt file helps us cite and link to your content in Meta AI’s responses.”

    If you block it (ours): Fewer citations and links in Meta AI’s answers, by Meta’s account.

    Source: Meta: Web crawlers

  • Amzn-SearchBot

    Amazon. Search

    For: “Amzn-SearchBot is used to improve search experiences in Amazon products and services.”

    robots.txt: “If robots.txt files don’t mention Amzn-SearchBot but allow other search bots, Amzn-SearchBot will crawl in accordance with the robots.txt directives given to other search bots.”

    If you block it (ours): Search experiences such as Alexa, in Amazon’s example.

    Source: Amazon: Amazonbot and other crawlers

  • ChatGPT-User

    OpenAI. Fetches for a user

    For: “When users ask ChatGPT or a CustomGPT a question, it may visit a web page with a ChatGPT-User agent.”

    robots.txt: “Because these actions are initiated by a user, robots.txt rules may not apply.”

    If you block it (ours): Little you can count on, since the rules may not apply. A block mostly says you would rather it did not visit.

    Source: OpenAI: Overview of OpenAI crawlers

  • Claude-User

    Anthropic. Fetches for a user

    For: “When individuals ask questions to Claude, it may access websites using a Claude-User agent.”

    robots.txt: “Disabling Claude-User on your site prevents our system from retrieving your content in response to a user query”

    If you block it (ours): Claude cannot read your page when a shopper asks it about your products.

    Source: Anthropic: Does Anthropic crawl data from the web?

  • Perplexity-User

    Perplexity. Fetches for a user

    For: “When users ask Perplexity a question, it might visit a web page to help provide an accurate answer and include a link to the page in its response.”

    robots.txt: “Since a user requested the fetch, this fetcher generally ignores robots.txt rules.”

    If you block it (ours): Little you can count on, since it generally ignores the file.

    Source: Perplexity: Perplexity crawlers

  • Google-Agent

    Google. Fetches for a user

    For: “Google-Agent is used by agents hosted on Google infrastructure to navigate the web and perform actions upon user request.”

    robots.txt: “Because the fetch was requested by a user, these fetchers generally ignore robots.txt rules.”

    If you block it (ours): Little you can count on, since these fetchers generally ignore the file.

    Source: Google: User-triggered fetchers

  • meta-externalfetcher

    Meta. Fetches for a user

    For: “The Meta-ExternalFetcher crawler fetches individual links at a user’s request”

    robots.txt: “Accordingly, this crawler may bypass robots.txt rules.”

    If you block it (ours): Little you can count on, since it may bypass the file.

    Source: Meta: Web crawlers

  • Amzn-User

    Amazon. Fetches for a user

    For: “Amzn-User supports user actions, such as responding to Alexa queries that require up-to-date information.”

    robots.txt: “it may not follow all robots.txt directives”

    If you block it (ours): Little you can count on, since it may not follow every rule.

    Source: Amazon: Amazonbot and other crawlers

  • GPTBot

    OpenAI. Training and datasets

    For: “GPTBot is used to make our generative AI foundation models more useful and safe.”

    robots.txt: “Disallowing GPTBot indicates a site’s content should not be used in training generative AI foundation models.”

    If you block it (ours): None for ChatGPT search: OpenAI says each setting “is independent of the others”.

    Source: OpenAI: Overview of OpenAI crawlers

  • ClaudeBot

    Anthropic. Training and datasets

    For: “ClaudeBot helps enhance the utility and safety of our generative AI models by collecting web content that could potentially contribute to their training.”

    robots.txt: “When a site restricts ClaudeBot access, it signals that the site’s future materials should be excluded from our AI model training datasets.”

    If you block it (ours): None for Claude’s search or user fetches, which have their own tokens.

    Source: Anthropic: Does Anthropic crawl data from the web?

  • meta-externalagent

    Meta. Training and datasets

    For: “The Meta-ExternalAgent crawler crawls the web for use cases such as training foundation AI models or improving products by indexing content directly.”

    robots.txt: “In order to block these crawlers, add a disallow for the relevant crawler to robots.txt.”

    If you block it (ours): Meta’s page names training and indexing for this one token, so a block covers both.

    Source: Meta: Web crawlers

  • Amazonbot

    Amazon. Training and datasets

    For: “Amazonbot is used to improve our products and services.”

    robots.txt: “may be used to train Amazon AI models”

    If you block it (ours): Amazon lists search under its own token, Amzn-SearchBot.

    Source: Amazon: Amazonbot and other crawlers

  • CCBot

    Common Crawl. Training and datasets

    For: “an open repository of web crawl data that is universally accessible and analyzable by anyone”

    robots.txt: “To prevent Common Crawl from crawling your website, include the following in your robots.txt”

    If you block it (ours): Your pages stay out of a public dataset. The page does not name who uses it; our grouping puts it with training.

    Source: Common Crawl: CCBot

  • Bytespider

    ByteDance. Training and datasets

    For: No vendor page we could check.

    robots.txt: No vendor page we could check.

    If you block it (ours): ByteDance publishes no crawler page we could check. Our agent list files it as a training crawler.

  • Google-Extended

    Google. Control token

    For: “Google-Extended is a standalone product token”

    robots.txt: “Google-Extended does not impact a site’s inclusion in Google Search nor is it used as a ranking signal in Google Search.”

    If you block it (ours): None for Google Search, by Google’s account.

    Source: Google: Google’s common crawlers

  • Applebot-Extended

    Apple. Control token

    For: “Applebot-Extended does not crawl webpages.”

    robots.txt: “Web publishers can opt-out from having their content used to train generative foundation models by disallowing Applebot-Extended in the robots.txt file.”

    If you block it (ours): None for search: “Your content will remain discoverable through Spotlight, Siri, and Safari”.

    Source: Apple: About Applebot

  • OAI-AdsBot

    OpenAI. Other

    For: “OAI-AdsBot is used to validate the safety of web pages submitted as ads on ChatGPT.”

    robots.txt: The page says nothing about it.

    If you block it (ours): Matters only if you advertise on ChatGPT.

    Source: OpenAI: Overview of OpenAI crawlers

Words in quotation marks are each vendor’s, read on 3 November 2026. The kinds and the costs are ours.

Two names behave differently from what their spelling suggests. Google-Extended is not a crawler: Google calls it "a standalone product token" and says it "does not impact a site's inclusion in Google Search". Applebot-Extended is the same idea for Apple, which says it "does not crawl webpages". Apple also has a fallback: if your file has no group for Applebot but has one for Googlebot, Apple says "the Apple robot will follow Googlebot instructions."

What does blocking each kind of bot cost a store?

Blocking a search bot costs you a place in that assistant's search results. OpenAI writes "we recommend allowing OAI-SearchBot", Perplexity says the same of PerplexityBot, and Anthropic says that disabling Claude-SearchBot "may reduce your site's visibility and accuracy in user search results".

Blocking a training crawler costs you nothing in search, by its vendors' accounts. OpenAI says "Disallowing GPTBot indicates a site's content should not be used in training generative AI foundation models", and the setting is independent of OAI-SearchBot. Anthropic says a block on ClaudeBot "signals that the site's future materials should be excluded from our AI model training datasets". Whether you want your product copy in a training set is a business question, and we do not think there is one right answer.

Blocking a fetcher for a user is the odd one. It may not work. OpenAI says of ChatGPT-User: "Because these actions are initiated by a user, robots.txt rules may not apply." Perplexity says its user fetcher "generally ignores robots.txt rules", Google says the same of its user-triggered fetchers, Meta says its fetcher "may bypass robots.txt rules" and Amazon says Amzn-User "may not follow all robots.txt directives". Anthropic is the exception: it says its bots respect "do not crawl" signals, Claude-User included, and that disabling Claude-User "prevents our system from retrieving your content in response to a user query". For a store, a fetcher is a shopper's assistant reading your product page on the shopper's behalf, so we would not block it even where the block works.

How do you write the rules?

A robots.txt is a list of groups. Each group starts with one or more User-agent: lines, followed by Allow: and Disallow: lines with paths. A bot uses the group that names it, or the * group if none does, and inside the group the longest matching path wins. So a bot named in its own group does not also read the * group. That catches people out when they block one bot and expect it to keep obeying the cart rules. RFC 9309, the standard, calls these rules ones "that crawlers are requested to honor", and our robots.txt check reads them the same way.

Changes are not instant. OpenAI says "it can take ~24 hours from a site's robots.txt update for our systems to adjust", Perplexity says up to 24 hours, and Amazon about the same. Anthropic supports a Crawl-delay line too, if you want to slow ClaudeBot down rather than stop it.

The generator below writes a file from your choices. Start from one of three presets, change any bot, and copy the result. Under the file it prints how our own robots.txt check reads it.

A robots.txt generator for a store
Start from

Nothing is blocked. Your pages can be used for search, for answers and for training.

Search
  • OAI-SearchBot
    OAI-SearchBot
  • Claude-SearchBot
    Claude-SearchBot
  • PerplexityBot
    PerplexityBot
  • Googlebot
    Googlebot
  • Applebot
    Applebot
  • Meta-WebIndexer
    Meta-WebIndexer
  • Amzn-SearchBot
    Amzn-SearchBot
Fetches for a user
  • ChatGPT-User
    ChatGPT-User
  • Claude-User
    Claude-User
  • Perplexity-User
    Perplexity-User
  • Google-Agent
    Google-Agent
  • meta-externalfetcher
    meta-externalfetcher
  • Amzn-User
    Amzn-User
Training and datasets
  • GPTBot
    GPTBot
  • ClaudeBot
    ClaudeBot
  • meta-externalagent
    meta-externalagent
  • Amazonbot
    Amazonbot
  • CCBot
    CCBot
  • Bytespider
    Bytespider
Control token
  • Google-Extended
    Google-Extended
  • Applebot-Extended
    Applebot-Extended
Other
  • OAI-AdsBot
    OAI-AdsBot
User-agent: *
Content-Signal: search=yes, ai-input=yes, ai-train=yes
Disallow: /cart
Disallow: /checkout
Disallow: /account

Sitemap: https://example.com/sitemap.xml

By the rule of our DISC-001, this file is WARN: no agent is fully blocked, but each inherits some Disallow lines, such as cart or checkout. That is normal for a store and costs little.

robots.txt is a request. RFC 9309 calls its rules ones “that crawlers are requested to honor”, and a bot that ignores the file is not stopped by it. The file is built in your browser; nothing is sent.

Paste the result into your platform's robots.txt editor, or ask whoever runs your site to. On Shopify that is a theme template, and on BigCommerce and Magento a settings box; each platform guide has the path. Keep your platform's own lines for search and filter pages, since they keep crawlers out of URLs that would multiply forever.

What should a store put in robots.txt, then?

Our advice, for a store that wants to be found and bought from:

  • Allow the search bots, Googlebot and Applebot among them.
  • Allow the fetchers for a user. Most of them may ignore the file anyway, and they are the closest thing to a shopper you have.
  • Ask everyone to skip the cart, checkout and account pages. Our DISC-001 reports this as a WARN rather than a PASS, because every agent inherits those lines, and we consider that fine for a store.
  • Decide training by preference. If you block it, use the training names and the control tokens, never User-agent: * with Disallow: /. The vendors say a training-only block does not stop their search or shopping bots, and our DISC-001 flags such a file as a warning rather than a failure. Block a search bot or a fetcher for a user, and it fails.
  • List your sitemap.

The mistake we would most like to save you from is the blanket block. A Disallow: / under * asks every search engine to leave as well, which is a high price for keeping one training crawler out. Robots files are like shop signs: "No dogs" is fine, "No customers" is bad for business.

What are Content Signals and the new training token?

Robots.txt says where a bot may go. Two newer ideas say what it may do with what it reads.

The first is Cloudflare's Content Signals, a Content-Signal: line inside a group with three categories: search, ai-input (using your pages for real-time answers) and ai-train. Our VER-004 looks for it. Like the rest of the file, it states a preference and enforces nothing. Cloudflare's own docs add a fourth key on sites that use its managed file, use=reference, which it explains as "Index, excerpt, and link back".

The second is a shared token for training. Microsoft wrote on 30 October 2026 that "Starting February 1, 2027", Bing will honour a robots.txt group under the name __usage_ai-training, replacing its older NoArchive and NoCache tags for this purpose. The same day, an Internet-Draft by K. Kelley of Anthropic described the same idea; it says "It introduces no new directive names and no new grammar". Google wrote in October that when a site uses "this policy token" to opt out of training, and does not name Google-Extended, "Google plans to interpret that as if the publisher had disallowed Google-Extended". It adds "We aim to support this new control along with other AI providers in 2027". Google's post never names the token, but its crawler documentation does name __usage_ai-training. It is a draft and a set of plans, so the generator offers the group as an extra, off by default. Adding it costs nothing, because bots that do not know the name have no group to match.

Does Cloudflare change your robots.txt for you?

It can. Cloudflare's managed robots.txt, which its docs say "is available on all plans", adds a block that disallows eight crawlers: Amazonbot, Applebot-Extended, Bytespider, CCBot, ClaudeBot, Google-Extended, GPTBot and meta-externalagent, with a Content-signal: search=yes, ai-train=no, use=reference line for everyone else. Its newer Bot Preference Sync writes the file from your bot settings in the dashboard. Cloudflare says it is "available to all customers from the Free tier to Enterprise", that its lines are "prepended to the existing material", and that "For all new customers, Bot Preference Sync will be on by default".

The managed block leaves the search bots alone, and Bot Preference Sync follows whatever you set in the dashboard. Either way, the file your store serves may not be the file you wrote. Open /robots.txt in a browser before you edit anything, and check what is there. Cloudflare is candid about the limits too: "robots.txt compliance is voluntary".

How do you check what your file does?

Paste your file below, type a path, and see which bots are asked to skip it and which rule decided. It starts with a sample from the generator.

Does your file reach them? Each bot’s verdict for one path

3 of 10 bots are asked to skip it.

Which bots may fetch /products/linen-shirt
BotVerdict and the rule that decided it
GooglebotAllowedno rule matches
OAI-SearchBotAllowedno rule matches
ChatGPT-UserAllowedno rule matches
GPTBotBlockedby Disallow: /
Claude-SearchBotAllowedno rule matches
Claude-UserAllowedno rule matches
ClaudeBotBlockedby Disallow: /
PerplexityBotAllowedno rule matches
Google-ExtendedBlockedby Disallow: /
ApplebotAllowedno rule matches

Matched by the rules of RFC 9309 in your browser: a bot follows its own group, or the * group when it has none, and the longest matching rule wins. Applebot follows your Googlebot group when you have one and no Applebot group, as Apple says it does. Nothing you paste is sent.

To see whether bots follow your file, you need traffic data. Cloudflare's AI Crawl Control has a robots.txt tab whose violations table "identifies AI crawlers that have requested paths explicitly disallowed by your robots.txt file". Your server logs show the same if you match the user agents against each vendor's published IP list, since anyone can type a bot's name. Our scan reads your file with the robots.txt check, and the agent readiness checklist puts it in context with the rest of the store.

Frequently asked questions

Should I block GPTBot on my store?

It is your choice. OpenAI says disallowing GPTBot means your content "should not be used in training", and that each of its settings is independent, so ChatGPT search (OAI-SearchBot) is unaffected. Block GPTBot by name if you do not want your pages in training; never block *. Our scan's robots.txt check flags a block like that as a warning, not a failure.

Does blocking Google-Extended remove my store from Google Search?

No. Google says Google-Extended "does not impact a site's inclusion in Google Search nor is it used as a ranking signal in Google Search". It only covers how Google may use your content for its AI models.

Can I block AI shopping agents with robots.txt?

Not reliably. Several vendors say their fetchers for a user may ignore robots.txt, because a person asked for the page. Anthropic says it honours the file for Claude-User. If you need to stop a bot, that takes a firewall or bot management, and we would think twice before turning a shopper's assistant away.

How long do robots.txt changes take to apply?

OpenAI says about 24 hours for its search systems, Perplexity up to 24 hours, and Amazon about 24 hours.

What is the __usage_ai-training token?

A shared name for opting out of AI training in robots.txt. Microsoft says Bing will honour it "Starting February 1, 2027". Google says it plans to support a shared training token in 2027, though its post does not name this one; its crawler page, updated on 30 October 2026, does: Google "intends to support the AIPREF shared machine-readable training preference signal (with "user-agent: __usage_ai-training") in early 2027." It is described in an Internet-Draft, which is a proposal, not yet a standard.

The sources below were last checked on the date shown.