AI Training Crawlers

GPTBot user agent

Operated by OpenAI

AI trainingOfficial docs Your choice

GPTBot is OpenAI's web crawler that collects public pages which may be used to train OpenAI's foundation models.

The GPTBot bot at a glance

  • GPTBot is operated by OpenAI and collects public web pages that may be used to train AI models.
  • The robots.txt token for GPTBot is GPTBot.
  • Blocking an AI training crawler has no effect on Google or Bing rankings.
  • GPTBot robots.txt support: Yes.
  • Recommendation for Generative Engine Optimization (GEO): Your choice.

What is GPTBot?

GPTBot crawls public web pages that OpenAI may use to train its generative AI models, including the models behind ChatGPT.

OpenAI runs GPTBot separately from OAI-SearchBot, so a site can opt out of training while staying visible in ChatGPT search.

  • Blocking GPTBot does not remove a site from ChatGPT search results.
  • OpenAI publishes GPTBot's IP ranges as a JSON file.

Should you block GPTBot?

Blocking GPTBot is a business decision: it protects your content but can lower how well AI products know your brand.

Effect on search rankingsBlocking an AI training crawler has no effect on Google or Bing rankings.
Effect on AI visibilityBlocking keeps your future pages out of that company's training data, so its models may know less about your brand over time. It does not remove you from that company's AI search, which uses a separate bot.
Follows robots.txtYes
RecommendationYour choice

How to block or allow GPTBot

Put the robots.txt rule in the file at the root of every domain and subdomain, for example https://example.com/robots.txt. The token GPTBot is matched case-insensitively.

robots.txt: block

# Block GPTBot
User-agent: GPTBot
Disallow: /

robots.txt: allow

# Allow GPTBot
User-agent: GPTBot
Allow: /

robots.txt: partial

# Keep GPTBot out of private areas only
User-agent: GPTBot
Disallow: /wp-admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Allow: /

Nginx

# Nginx: return 403 to GPTBot
if ($http_user_agent ~* "(GPTBot)") {
    return 403;
}

Apache

# Apache .htaccess: return 403 to GPTBot
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (GPTBot) [NC]
RewriteRule .* - [F,L]

Cloudflare WAF

# Cloudflare > Security > WAF > Custom rule, action: Block
(http.user_agent contains "GPTBot")

How to verify real GPTBot traffic

OpenAI publishes the IP ranges that GPTBot uses. A request with the GPTBot user agent from an IP outside that list is an impersonator.

Official GPTBot IP list (JSON)

How to find GPTBot in your server logs

Search the web server access log for the token. The command below counts GPTBot requests per URL on Nginx or Apache.

grep -i "GPTBot" access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -20

For a full report per AI bot, upload the log to the AI Log File Analyzer, a free tool by Justin Hà.

GPTBot user agent string

The full user agent OpenAI publishes for GPTBot. Version numbers such as Chrome/W.X.Y.Z change over time, so match the token, not the whole string.

Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot

GPTBot FAQ

GPTBot identifies itself with the robots.txt token "GPTBot". A typical request header reads: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot

Yes. OpenAI states that GPTBot follows robots.txt rules written for the "GPTBot" token.

Blocking an AI training crawler has no effect on Google or Bing rankings. Blocking keeps your future pages out of that company's training data, so its models may know less about your brand over time. It does not remove you from that company's AI search, which uses a separate bot.

Add two lines to the robots.txt file at the root of each domain and subdomain: "User-agent: GPTBot" followed by "Disallow: /". The token is case-insensitive. Changes can take up to 24 hours to be picked up.

Yes. OpenAI publishes the IP ranges GPTBot uses. Check the request IP against that list; a matching user agent from any other IP is an impersonator.

Search your server access log for "GPTBot", for example with: grep -i "GPTBot" access.log. The AI Log File Analyzer by Justin Hà counts visits per AI bot from an uploaded log file.

Sources: OpenAI crawler documentation. Last reviewed by Justin Hà.

See which of these bots actually reach your website

The AI Log File Analyzer by Justin Hà counts visits from GPTBot, ClaudeBot, PerplexityBot and other AI crawlers in your server log, for free. The GEO Technical Package sets up robots.txt, llms.txt and crawler access for AI search.

Zalo logo Chat Zalo WhatsApp logo Chat WhatsApp