AEO and AI search
How to allow AI crawlers (and which ones to block)
IN SHORT
To allow AI crawlers, add a robots.txt group for each bot you want, with Allow: / or no Disallow rule, and make sure your firewall does not block it. Allow the search and user-triggered bots, such as OAI-SearchBot, Claude-SearchBot and PerplexityBot, if you want to be cited. Training bots, such as GPTBot and ClaudeBot, are a separate business choice.
By Hristijan Najcheski, Head of SEO and AEO at Webtec: technical SEO and AI SEOReviewed October 11, 20269 min read
- AI companies run different bots for different jobs: training, search indexing and fetching a page for one user. Each has its own robots.txt rules.
- Blocking a training bot does not remove you from AI search answers. Blocking a search bot does.
- Robots.txt is a request, not a lock. Some user-triggered fetchers may ignore it, and a firewall can silently block bots that robots.txt allows.
- Changes can take about a day to reach the systems, so test, wait and re-check before drawing conclusions.
What an AI crawler is and why robots.txt matters
An AI crawler is an automated program that visits web pages on behalf of an AI company. Some collect text to train models. Some build a search index that an assistant draws on. Some fetch a single page because a person asked a question.
The file that tells them what they may visit is robots.txt. It is a plain text file at the top of your site, for example yourdomain.com/robots.txt. The standard behind it, RFC 9309, describes it as a set of rules that well-behaved crawlers follow. The same document states plainly that these rules are not a form of access authorization.
That is the first thing to understand. Robots.txt asks politely. It does not lock anything. Reputable companies honor it, and the rest can ignore it. If a page is private, protect it with a login, not with a robots.txt line.
It matters to you because an assistant cannot cite a page it was never allowed to read. If your file or your firewall turns the wrong bot away, you can disappear from answers without anyone noticing.
The three jobs an AI bot can do
Most confusion comes from treating all AI bots as one thing. The big companies now separate them, and the difference decides what you should allow. Think of three jobs.
- Training. A training crawler gathers content that may be used to train future models. Allowing it is a decision about your content being used to build the model, not about showing up in answers today.
- Search. A search crawler builds the index an assistant searches when it answers a question. Allowing it is what makes your pages eligible to be cited.
- User-triggered fetching. A user-triggered fetcher visits a page because someone asked the assistant about it or about a topic it covers. It is not a crawler that roams your site.
The bots to know, from each company’s own documentation
These descriptions follow the vendors’ pages as of their publication. Names and behavior change, so check the source before you edit your file.
- OpenAI documents three bots. GPTBot is for content that may train its models. OAI-SearchBot is for ChatGPT search, and OpenAI says sites that opt out will not appear in ChatGPT search answers. ChatGPT-User handles actions started by a user, and OpenAI says robots.txt rules may not apply to it.
- Anthropic documents ClaudeBot for training, Claude-User for fetching pages when a Claude user asks a question, and Claude-SearchBot for improving the relevance and accuracy of search results. Anthropic says its bots follow robots.txt and support the Crawl-delay extension.
- Perplexity documents PerplexityBot, which it says surfaces and links sites in its search results and is not used to crawl content for foundation models. Perplexity-User is a user-triggered fetcher that supports user actions and generally ignores robots.txt because a person requested the fetch.
- Google-Extended is a robots.txt control for Google, not a separate crawler. Google says it governs use of your content for training future Gemini models and for grounding in Gemini Apps, and that it does not affect inclusion in Google Search.
How to allow the crawlers you want, step by step
Open yourdomain.com/robots.txt in a browser first. Many sites already have a file written by a plugin or a developer years ago, and it may contain a blanket rule that catches AI bots.
A group starts with a User-agent line naming the bot, followed by rules. If a bot has no group of its own, it falls back to the group for the wildcard * if one exists. When several groups apply, the most specific path rule wins. That is why an old Disallow: / under User-agent: * can block every bot you did not name.
- To allow ChatGPT search: write User-agent: OAI-SearchBot followed by Allow: /.
- To allow Claude search and user fetches: write one group each for Claude-SearchBot and Claude-User with Allow: /.
- To allow Perplexity: write User-agent: PerplexityBot followed by Allow: /.
- To opt out of training only: write User-agent: GPTBot, then Disallow: /, and do the same for ClaudeBot and Google-Extended.
- Repeat the file on every subdomain you want covered, because each host has its own robots.txt.
The step most sites miss: your firewall and CDN
A correct robots.txt does nothing if your security layer refuses the bot before it reads the file. Content delivery networks and web application firewalls often ship with managed rules that challenge or block AI user agents by default.
Anthropic notes that blocking by IP address may not work reliably, because it stops the bot from reading your robots.txt at all. Perplexity publishes machine-readable lists of its IP ranges and says to treat them as the source of truth because they update regularly. Anthropic publishes a list too.
The practical step is to check your firewall or CDN dashboard for bot rules, allow each search crawler you chose, and verify a bot by its published ranges rather than by the name it claims. Anyone can pretend to be a bot in a request header.
Deciding about training bots
Blocking a training crawler is a legitimate choice, and many publishers make it. Because the vendors separate training from search, you can usually make that choice without leaving answers. OpenAI says disallowing GPTBot signals that your content should not be used for training, and OpenAI says its search bot is for search.
Weigh two things. If your content is your product, such as paid research, you have a clear reason to opt out. If your content exists to win customers, being learned by a model and mentioned by it may help you, but no one can promise that. Decide on purpose, write it down, and revisit it when the vendors change their policies.
Also remember Google’s position: the Google AI features page says there are no extra requirements to appear in AI Overviews or AI Mode beyond being indexed and eligible to show a snippet. Blocking Google-Extended is not how you leave those features. Blocking Googlebot is, and it removes you from Search too.
How to check that it worked
Start with the file itself. Load it, confirm it returns a normal page, and read it top to bottom. Under RFC 9309 a 4xx response means the file is treated as missing, so crawlers may visit anything. A 5xx response or timeout means crawlers must assume everything is disallowed, which is the failure you least want.
Next read your server logs or ask your host for them. Search for the bot names above and look at the status codes. A 200 means the bot got the page. A 403 or 429 means something is blocking it, often the firewall. No hits at all after a week can mean the bot has not found you yet, which is normal for a small site.
Then wait. OpenAI says its systems may take about 24 hours to adjust after a robots.txt change, and Perplexity gives the same figure. Re-test the following week, and re-test after any site migration or security change.
Examples by industry
- E-COMMERCE BRANDS
A fictional online shop selling outdoor gear, running on a hosted platform with a CDN in front.. The owner wants product questions answered by assistants, but the CDN’s bot protection was switched on years ago and nobody has reviewed it.
- Open the robots.txt and confirm no blanket Disallow applies to bots that are not named.
- Add explicit groups allowing OAI-SearchBot, Claude-SearchBot and PerplexityBot.
- Review the CDN bot rules and allow those three, verified against the vendors’ published IP lists.
- Read the logs a week later to confirm 200 responses on product pages.
Takeaway: The file was the easy part. The CDN rule decided whether any bot saw a product page.
- B2B SOFTWARE AND STARTUPS
A fictional software company with a public help centre and a gated customer app.. The team wants help articles cited, but does not want the product documentation used to train models.
- Allow the search bots across the marketing site and help centre.
- Add Disallow rules for GPTBot, ClaudeBot and Google-Extended, as a recorded decision.
- Keep the gated app behind login, because robots.txt is not security.
- Re-check after each release, since a deploy can overwrite the file.
Takeaway: Training and search are separate choices, so the company can opt out of one and stay in the other.
- LAW FIRMS
A fictional family law practice with a small blog written by its solicitors.. The practice is not sure whether to allow AI bots at all and has never opened its robots.txt.
- Read the existing file and find a staging-era Disallow rule still in place.
- Remove it and allow the search bots, leaving the training decision to the partners.
- Check the hosting provider’s security plugin for AI user-agent challenges.
- Note the decisions and the review date in the practice’s website log.
Takeaway: A forgotten rule can cost more visibility than any deliberate policy, so reading the file comes first.
HOW WEBTEC DOES IT
How we handle crawler access: how we do it
We treat access as the first technical check in an AEO project, because nothing downstream works if a bot is turned away.
- Read your robots.txt and firewall rules together, not separately
- Agree with you which training bots to allow or block, as a written decision
- Check server logs for the bots you allowed and fix any blocked responses
- Re-check after site changes, so a new plugin or migration does not undo the setup
Common mistakes
- Blocking every AI bot with one rule, which removes you from ChatGPT search and Claude search along with the training bots.
- Leaving an old blanket Disallow: / under User-agent: * from a staging site, which silently blocks any bot you did not name.
- Editing robots.txt but never checking the firewall, so the bot still gets a 403 and you assume the setup is done.
- Using robots.txt to hide private pages. Listed paths are public and compliance is voluntary, so use a login.
- Trusting a bot by its name. A request can claim any user agent, so verify against the vendor’s published IP list.
- Serving a broken robots.txt. A server error makes crawlers assume everything is disallowed.
- Expecting results the next day. Changes can take about 24 hours to reach some systems, and being cited is never guaranteed.
Checklist
- You have opened yourdomain.com/robots.txt this month and read all of it.
- It returns a normal 200 response, not an error or a redirect loop.
- OAI-SearchBot, Claude-SearchBot and PerplexityBot are allowed, or you wrote down why not.
- You made a deliberate decision about GPTBot, ClaudeBot and Google-Extended.
- Your firewall or CDN does not challenge the search bots you allowed.
- Server logs show 200 responses for at least one allowed AI bot.
- Every subdomain you care about has its own correct file.
- You have a date in your calendar to re-check after your next site change.
Questions
How do I allow AI crawlers on my website?
Add a robots.txt group for each bot with Allow: /, then make sure your firewall lets the bot through. Start with OAI-SearchBot, Claude-SearchBot and PerplexityBot, because these feed search answers. Then check your CDN or security plugin, since many block AI user agents by default. Finally confirm in your server logs that the bot receives a 200 response. OpenAI says changes can take about 24 hours to take effect, so check again the next day.
Should I block GPTBot and ClaudeBot?
It is a business decision, not a technical one. GPTBot and ClaudeBot are the vendors’ training crawlers, and both companies say disallowing them signals that your content should not be used for training. Blocking them does not remove you from their search products, which use separate bots. Block them if your content is the product you sell. If your content exists to win customers, many owners allow them, but no one can promise a benefit.
Will blocking Google-Extended remove me from AI Overviews?
No. Google says Google-Extended controls use of your content for training future Gemini models and for grounding in Gemini Apps, and that it does not affect inclusion in Google Search. Google’s AI features documentation says a page needs to be indexed and eligible to show a snippet to appear in AI Overviews and AI Mode. To control what Google shows, use snippet controls such as nosnippet or max-snippet, knowing they also affect normal results.
Do AI bots always obey robots.txt?
Not all of them, and not in every mode. The major crawlers, such as GPTBot, OAI-SearchBot, ClaudeBot and PerplexityBot, document that they follow robots.txt. The user-triggered fetchers behave differently: OpenAI says robots.txt rules may not apply to ChatGPT-User, and Perplexity says Perplexity-User generally ignores them. Robots.txt is also voluntary by design under RFC 9309. For anything private, use authentication.
How long until a robots.txt change takes effect?
OpenAI says it can take about 24 hours from a robots.txt update for its search systems to adjust, and Perplexity gives the same figure. The robots.txt standard says crawlers should not use a cached copy for more than 24 hours unless the file is unreachable. Plan on a day, then verify in your logs. If a bot still receives errors after several days, look at the firewall before the file.
Is it free to allow AI crawlers, and do I need a developer?
Allowing crawlers costs nothing in fees. The work is editing one text file and checking a firewall setting, which takes minutes on most sites and a short conversation with your host on others. Some platforms, such as hosted website builders, limit access to robots.txt, so you may need their settings page. If your site sits behind a managed security service, ask whoever runs it to allow the bots you chose and to confirm in writing.
Sources
- Overview of OpenAI crawlers (OpenAI developer documentation)
- Does Anthropic crawl data from the web, and how can site owners block the crawler? (Claude Help Center, Anthropic)
- Perplexity crawlers (Perplexity documentation)
- Google’s common crawlers (Google Search Central)
- AI features and your website (Google Search Central)
- Introduction to robots.txt (Google Search Central)
- RFC 9309: Robots Exclusion Protocol (IETF)

Hristijan Najcheski
Head of SEO and AEO at Webtec: technical SEO and AI SEO. Leads technical SEO and AI SEO at Webtec: crawling, indexing, site speed, structured data and how AI systems read a site. He also verifies the numbers in our case studies.
Related guides
Pick up where this one leaves off.
- 01Brand entity and mentionsA brand entity is how search and AI systems recognize your business as one distinct thing. Learn how Organization markup, sameAs and mentions build it.
- 02Google AI Overviews and AI ModeHow do AI Overviews work? Learn how Google builds AI Overviews and AI Mode answers, what makes a page eligible to be linked, and what controls you have.
- 03llms.txtllms.txt is a proposed Markdown file that points AI models to your best pages. What it holds, what Google says, what the data shows and whether to publish one.
- 04How AI assistants choose sourcesAI assistants retrieve pages that match the question and quote the clearest, best-evidenced passages. What is documented, what is unknown and how to be chosen.
Want this done for your business?
Explore our services
Start with the one closest to what you just read.
















































































