OAI-SearchBot: the crawler behind ChatGPT search
By David Quaid Published
OAI-SearchBot is the crawler OpenAI uses to surface websites in ChatGPT search, and the only OpenAI crawler whose robots.txt rule decides whether your pages can appear there. GPTBot gathers training data and ChatGPT-User fetches pages people ask ChatGPT about, so blocking GPTBot does NOT take you out of ChatGPT search, and blocking OAI-SearchBot does.
What OAI-SearchBot is
OAI-SearchBot is OpenAI's search crawler, the ChatGPT crawler that fetches pages so ChatGPT's search features can surface them, and OpenAI's crawler documentation says a site that opts out of it won't be shown in ChatGPT search answers (though it can still turn up as a navigational link).
OpenAI's help center adds that ChatGPT search sometimes partners with other search providers, rewriting your question into targeted queries it sends them (who they are is covered in what search engine ChatGPT uses). That's a search engine at work, which is why I call AI search SEO with a new front end, and OAI-SearchBot is your switch on OpenAI's side of it.
OAI-SearchBot user agent and IP ranges
The OAI-SearchBot user agent is the only one of the OpenAI user agents dressed as desktop Chrome, with OAI-SearchBot/1.4 near the end, and its IP ranges are listed at https://openai.com/searchbot.json.
OpenAI notes the version number may change:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36; compatible; OAI-SearchBot/1.4; +https://openai.com/searchbot
It does change: a copy of OpenAI's page from August 2024 shows OAI-SearchBot/1.0 with no Chrome part, and the December 2025 archive shows 1.3. So match OpenAI user agents on the name, never the full string, and never trust the name alone (anyone can fake it).
The IP files are the proof. https://openai.com/gptbot.json and https://openai.com/chatgpt-user.json sit beside searchbot.json, and on October 7, 2026 they listed 18 and 234 IPv4 ranges against OAI-SearchBot's 39, with the ChatGPT-User file stamped hours before I opened it. If you allowlist them, refresh the lists on a schedule.
OAI-SearchBot vs GPTBot
OAI-SearchBot vs GPTBot is search versus training: OAI-SearchBot gets your pages shown in ChatGPT search, while GPTBot crawls content that may be used to train OpenAI's foundation models.
Its string has no Chrome part:
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot
OpenAI calls the two settings independent, and its own example splits them: allow OAI-SearchBot, disallow GPTBot. So blocking GPTBot, the training crawler, leaves you eligible for ChatGPT search, and blocking every bot with OpenAI's name on it opts you out of search along with training. Two bots, two questions.
ChatGPT-User: the ChatGPT user agent
The ChatGPT-User bot is the ChatGPT user agent that visits a page when someone asks ChatGPT (or a Custom GPT) a question that needs it, and OpenAI says it isn't used to crawl the web automatically.
Its string is still version 1.0:
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot
What changed is robots.txt. OpenAI's August 2024 page listed ChatGPT-User among its robots.txt tags, with its rule controlling which sites those requests could reach. The current page says: "Because these actions are initiated by a user, robots.txt rules may not apply." PPC Land reported the rewrite on December 9, 2025, and OpenAI says ChatGPT-User doesn't decide what appears in search. So treat it as someone's assistant: a Disallow line is a request it may not follow, and a firewall block on its IP file turns away people asking ChatGPT about your page, the last visitors I'd refuse.
OpenAI crawlers in robots.txt: what to allow
OpenAI crawlers in robots.txt need one decision each, and the OAI-SearchBot robots.txt rule is the one that matters for ChatGPT search: allow it, treat GPTBot as a separate training question, and don't count on robots.txt for ChatGPT-User.
Here's OAI-SearchBot beside the other two (OpenAI's page and IP files, October 7, 2026):
| OAI-SearchBot | GPTBot | ChatGPT-User | |
|---|---|---|---|
| Job | Surfaces sites in ChatGPT search | Crawls content that may train OpenAI's models | Visits pages a user's request needs |
| Obeys robots.txt | Yes | Yes | Not reliably (OpenAI: may not apply) |
| IP list | searchbot.json (39 ranges) | gptbot.json (18) | chatgpt-user.json (234) |
| Blocking it does | Keeps you out of ChatGPT search answers | Asks OpenAI not to train on your content | At the firewall, stops user-triggered visits |
| Blocking it does NOT | Stop training or user visits | Remove you from ChatGPT search | Remove you from ChatGPT search |
For the usual setup, in search and out of training:
User-agent: OAI-SearchBot
Allow: /
User-agent: GPTBot
Disallow: /
If training doesn't bother you, make the second group Allow: /. Two traps, both from RFC 9309, the robots.txt standard: a crawler with its own group ignores the * group, so private paths disallowed under User-agent: * need repeating under OAI-SearchBot, and with no OAI-SearchBot group, a leftover staging Disallow: / under * blocks it too.
Why OAI-SearchBot gets blocked when robots.txt allows it
OAI-SearchBot gets blocked when robots.txt allows it because robots.txt is only a note the crawler reads, and whatever answers the request first (CDN bot settings, a firewall rule, a security plugin, your host's server rules) can refuse it with a 403 or a challenge page; RFC 9309 itself says its rules aren't access control.
OpenAI's help center allows for this: eligibility takes two steps, letting OAI-SearchBot crawl and making sure your host or CDN lets in OpenAI's published searchbot IPs.
Behind Cloudflare, start with AI Crawl Control, which Cloudflare's docs say can allow or block each AI crawler by name (more in our Cloudflare AI Crawl Control guide). Then hunt for old scraper rules that block full user-agent strings or anything bot-shaped.
How to check if OAI-SearchBot can reach your page
To check if OAI-SearchBot can reach your page, test both layers in order: what your robots.txt tells OAI-SearchBot about that URL, then what your server answers a request carrying its user agent.
By hand, that's curl with -A and the string above, then without; a 200 without it and a 403 with it means something keys on the name. Then check real OAI-SearchBot hits in your logs against searchbot.json.
Or run the page through our free AI visibility checker. AI Visibility tests OAI-SearchBot and ChatGPT-User against your robots.txt and sends real requests with their user agents from our server, so a firewall that blocks what robots.txt allows shows up. Our requests don't come from OpenAI's IPs, so if only the bot request fails, check whether your rule blocks the name outright or just admits OpenAI's published ranges (that second kind is what OpenAI asks for).
What most people overlook about OAI-SearchBot
What most people overlook about OAI-SearchBot is that letting it in makes a page eligible for ChatGPT search, not cited by it.
OpenAI's help page says ChatGPT ranks results on multiple factors and placement isn't guaranteed, and when ChatGPT hands a rewritten query to a search provider, it reads what that provider ranks. That's Rank = Authority + Relevance, unchanged in my 20-plus years of SEO. Robots.txt only gets you in the room.
OAI-SearchBot FAQ
Here are the OAI-SearchBot questions that come up next.
How long until a robots.txt change reaches OAI-SearchBot?
A robots.txt change reaches OAI-SearchBot in about 24 hours: OpenAI says its search systems can take that long to adjust. Firewall and CDN changes apply as soon as they go live.
Does blocking GPTBot remove my site from ChatGPT search?
Blocking GPTBot does not remove your site from ChatGPT search, because OpenAI treats training and search as independent settings, and search is OAI-SearchBot's call.
Does OAI-SearchBot run JavaScript?
OAI-SearchBot doesn't appear to run JavaScript: OpenAI documents no rendering, and Vercel's December 2024 analysis of crawler traffic on its network found none of OpenAI's three agents executed it. Put the content you want cited in the HTML.
Is ChatGPT a web crawler?
ChatGPT is not a web crawler itself, but OpenAI runs crawlers for it: OAI-SearchBot for search, GPTBot for training and ChatGPT-User for visits a user triggers. A fourth, OAI-AdsBot, only visits landing pages submitted as ads on ChatGPT.
Why do my logs show GPTBot but not OAI-SearchBot?
Your logs can show GPTBot but not OAI-SearchBot (or the reverse) when you allow both, because OpenAI says it may use one crawl for both jobs to avoid crawling twice. If you allow both and see neither, check the firewall first.
References
- Overview of OpenAI Crawlers, OpenAI. developers.openai.com/api/docs/bots
- OAI-SearchBot IP ranges (searchbot.json), OpenAI.
- GPTBot IP ranges (gptbot.json), OpenAI.
- ChatGPT-User IP ranges (chatgpt-user.json), OpenAI.
- Searching the web with ChatGPT, OpenAI Help Center. help.openai.com/en/articles/9237897-searching-the-web-with-chatgpt
- OpenAI Crawlers and Bots (a copy of OpenAI's crawler page, posted August 21, 2024), WebmasterWorld. www.webmasterworld.com/gpt/5110946.htm
- Overview of OpenAI Crawlers, archived December 12, 2025, Internet Archive. web.archive.org/web/20251212001025/https://platform.openai.com/docs/bots
- OpenAI revises ChatGPT crawler documentation with significant policy changes, PPC Land (Luis Rijo, December 9, 2025). ppc.land/openai-revises-chatgpt-crawler-documentation-with-significant-policy-changes/
- RFC 9309: Robots Exclusion Protocol, IETF (M. Koster, G. Illyes, H. Zeller, L. Sassman, September 2022). www.rfc-editor.org/rfc/rfc9309.html
- Manage AI crawlers, Cloudflare Docs. developers.cloudflare.com/ai-crawl-control/features/manage-ai-crawlers/
- The rise of the AI crawler, Vercel (Giacomo Zecchini, Alice Alexandra Moore, Malte Ubl, Ryan Siddle, December 17, 2024). vercel.com/blog/the-rise-of-the-ai-crawler