Plan, create, and check your robots.txt

Build and Verify robots.txt Rules for AI Crawlers

Create a crawler-specific policy, publish it at /robots.txt, and test the live result. Separate AI training, AI search, user-triggered agents, regular search engines, dataset crawlers, and SEO bots before deciding what to allow or block.

Choose rules by crawler purpose Test the live file and URL path Open official crawler documentation Use the tools without an account

Start with the outcome

Choose a policy goal before choosing a crawler

A safe robots.txt policy begins with the result you want. Provider-wide blocking can combine training, search, and user-requested access even when those uses should be treated differently.

Understand the trade-offs

Choose rules by what each crawler does

Crawler names are grouped below by their published purpose. Use these differences to avoid blocking ordinary search, AI search, user-requested access, or third-party tools when your real goal is narrower.

AI training crawlers

Automated crawlers associated with model training or model improvement. These can often be restricted without blocking ordinary search.

User-triggered agents

Agents that fetch a page after a person asks an assistant to open or use it. They are not interchangeable with bulk training crawlers.

Product control tokens

Robots.txt tokens that express a product-use preference but may not operate as a normal standalone HTTP crawler user-agent.

Regular search crawlers

Crawlers that power conventional search indexing. Blocking them can directly reduce normal search visibility.

Applebot Googlebot Bingbot

Dataset and archive crawlers

Crawlers that build reusable web datasets or archives. Their downstream use can differ from both search and first-party AI products.

SEO crawlers

Third-party crawlers used for link intelligence, audits, and competitive SEO data rather than public search indexing.

Build a crawler policy around the result you want

A robots.txt file is most useful when each rule supports a clear publishing decision. “Block AI” is not one decision: a provider may use separate tokens for model training, AI search, user-requested page access, ordinary search indexing, or product-level controls. Blocking an entire provider without checking those roles can remove access that you intended to keep.

For example, OpenAI documents GPTBot, OAI-SearchBot, and ChatGPT-User as separate tokens. A publisher can therefore express a selective policy instead of treating training, search discovery, and user-triggered retrieval as the same activity:

User-agent: GPTBot
Disallow: /

User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

This example is a starting point, not a universal recommendation. Your policy may depend on search visibility, licensing, server load, customer expectations, and whether an assistant should be able to fetch a public page after a user requests it. Review the current provider documentation before relying on any token.

Publish and verify with a repeatable workflow

  1. Define the intended outcome. Decide whether you want to preserve conventional search, allow AI search discovery, permit user-triggered access, restrict training use, reduce dataset collection, or limit third-party SEO crawling.
  2. Generate crawler-specific groups. Use the generator to create separate User-agent groups instead of reaching immediately for User-agent: *.
  3. Review the complete file. Keep any existing rules, sitemap declarations, host-specific paths, and platform requirements that still apply. A generated file should not erase a working policy by accident.
  4. Publish at the root of the correct host. The file normally belongs at a URL such as https://example.com/robots.txt. A file placed inside a subdirectory does not govern the entire origin.
  5. Test the live response. Use the checker after deployment, select important crawlers and paths, and confirm the HTTP response, applicable group, and winning rule.
  6. Monitor real requests. Server logs can show which user-agents request the site, but a user-agent string alone does not prove that the request came from the organization named in that string.

What the live checker can confirm

The checker requests the public robots.txt file for the submitted host and evaluates a selected crawler and path. It can help identify:

  • whether the file is reachable and which HTTP status was returned;
  • which User-agent group applies to the selected crawler;
  • which matching Allow or Disallow rule is the most specific;
  • whether wildcard patterns and end anchors affect the tested path;
  • which sitemap declarations are present in the fetched file.

The checker cannot guarantee that every automated client will comply, authenticate a crawler from its user-agent string, or determine the legal meaning of a provider’s use of public content. Those questions require server-side verification, provider documentation, contractual review, or real access controls.

Use robots.txt as a policy signal, not a security boundary

Robots.txt is publicly readable and relies on voluntary compliance. It does not hide a URL, require a password, encrypt a file, prevent copying by a non-compliant scraper, or guarantee removal from search results. Never publish secrets, private customer data, paid content, administration paths, or confidential files and assume that a Disallow rule makes them safe.

Protect sensitive resources with authentication, authorization, server configuration, rate limits, network controls, and application-level checks. Use indexing controls supported by the relevant search engine when the goal is to prevent a page from appearing in search rather than merely controlling crawling.

Check the exact crawler name before you publish

Use the crawler directory to find the exact User-agent name, understand what the crawler is used for, and open the provider's official documentation. Use a template when your goal matches a common policy, or read the guides when you need to compare options and understand their consequences.

Crawler names and provider policies can change. Before publishing an important allow or block rule, confirm the current provider documentation, test the live file, and update the policy when a provider introduces or changes a crawler. Report a broken source or inaccurate description through the contact page.

Tools and reference material

Continue with the resource that matches your task

Use the generator to create a draft, the checker to test a live file, a template for a common policy, or a guide when you need to understand the trade-offs first.

Robots.txt generator controls and a generated rules document AI robots.txt Generator

Choose a preset or set individual crawler rules. The generator shows what will be allowed or blocked, highlights issues to review, and gives you a robots.txt file to publish yourself.

Robots.txt checker inspecting a website and reporting allowed and blocked crawler access robots.txt Checker

Enter the exact website address, choose a crawler, and test a path. The checker reads the live robots.txt file and explains the group and rule that determine access.

Crawler directory separating training, AI search, user-requested, conventional search, and SEO crawler purposes AI Crawler List

This directory groups crawler tokens by purpose so you can decide what to allow or block without treating every automated request as the same. Open a crawler page for its documented role, exact robots.txt token, policy trade-offs, and verification guidance.

Collection of reusable robots.txt policy templates Robots.txt Templates

Choose a copy-ready robots.txt template by the result you need: keep search open, limit selected AI crawlers, or adapt rules for WordPress, Shopify, and small-business sites. Merge it with the live file, customize it in the Generator when needed, and verify the published result in the Checker.

Practical crawler and robots.txt guides organized as a learning path AI Crawler and robots.txt Guides

Use these guides to move from a policy question to a verified live robots.txt file. They cover crawler roles, training versus search access, syntax, deployment, testing, status codes, wildcards, and the limits of robots.txt.

Robots.txt and crawler terminology organized into connected concepts Robots.txt and AI Crawler Glossary

Use this glossary for concise definitions of crawler roles, robots.txt directives, and newer AI-content control terms. Each entry explains what the term means, what it does not mean, and where it fits in a practical website policy.

Website selectively blocking AI training crawler routes while keeping search discovery routes open How to Block AI Crawlers with robots.txt

Use the exact published User-agent name for each crawler you intend to restrict, add Disallow: / to that group, preserve any search or user-requested access you still want, then publish and test the live file. Do not use User-agent: * unless you intend to restrict ordinary search crawlers too.

Website allowing an AI search discovery route while blocking a separate model-training route How to Allow AI Search but Block AI Training

Block only the documented training or product-use controls, such as GPTBot, ClaudeBot, Google-Extended, and Applebot-Extended. Leave AI search crawlers unblocked unless an existing rule blocks them; add explicit search groups only when necessary, and repeat any private-path restrictions inside those groups. Then test the live file by crawler and path.

AI crawler robots.txt FAQ

What is the safest default robots.txt policy for AI crawlers?

There is no universal default. Start with the outcome you want, keep ordinary search crawlers open when search visibility matters, and use each provider's published crawler name for the uses you intend to restrict.

Does blocking GPTBot also block OAI-SearchBot or ChatGPT-User?

No. OpenAI documents GPTBot, OAI-SearchBot, and ChatGPT-User as separate robots.txt tokens. Each needs its own rule when you want different treatment for training, search, and user-triggered access.

Can I block AI training without blocking Google Search?

Yes, when you use the relevant crawler or product tokens instead of blocking Googlebot or every crawler with User-agent: *. Google-Extended and Googlebot serve different control purposes and should be reviewed separately.

Can one robots.txt rule block every AI crawler?

There is no reliable AI-only wildcard that covers every current and future crawler. User-agent: * with Disallow: / is much broader and asks all compliant crawlers, including ordinary search engines, not to crawl the site.

Where must robots.txt be published?

Publish it at the root of the exact scheme and host it should govern, such as https://example.com/robots.txt. A file inside a subdirectory does not control the whole site.

How do I confirm which rule applies?

Use the live checker with the exact domain, crawler token, and path. Then review server logs when you need evidence of real requests, remembering that a claimed user-agent does not by itself authenticate the requester.

Can robots.txt protect private or paid content?

No. Robots.txt is a public voluntary instruction, not access control. Protect sensitive content with authentication, authorization, server rules, and other enforceable security controls.