Skip to content

OAI-SearchBot IP ranges

Indexes pages for the search features inside ChatGPT. OpenAI publishes the address ranges OAI-SearchBot crawls from so sites can tell it from a scraper carrying its name. This is that file, synced daily by the same job that feeds the IP lookup, with the date of the copy and how to check a visitor against it.

OAI-SearchBot at a glance

OperatorOpenAI
What it doesSearch indexing
Answered ascrawler: OAI-SearchBot · crawler_kind: search
Published filehttps://openai.com/searchbot.json
Prefixes today39 IPv4, 0 IPv6
Copy synced2026-09-12

The ranges

Every prefix in OpenAI's file as of 2026-09-12, IPv4 first, each family in address order. An address inside any of them is OAI-SearchBot as far as its operator is concerned.

IPv4 · 39

4.227.36.0/25
13.66.216.176/28
20.14.99.96/28
20.25.151.224/28
20.42.10.176/28
20.168.18.32/28
20.169.6.224/28
20.169.7.48/28
20.169.77.0/25
20.171.53.224/28
20.171.123.64/28
23.102.145.48/28
40.67.175.0/25
40.90.214.16/28
51.8.102.0/24
74.7.175.128/25
74.7.228.0/25
74.7.228.128/25
74.7.229.0/25
74.7.229.128/25
74.7.230.0/25
74.7.241.128/25
74.7.242.128/25
74.7.243.0/25
74.7.244.0/25
104.210.140.128/28
135.234.64.0/24
172.182.193.80/28
172.182.193.224/28
172.182.194.32/28
172.182.194.144/28
172.182.195.48/28
172.182.209.208/28
172.182.211.192/28
172.182.213.192/28
172.182.224.0/28
172.203.190.80/28
172.203.190.112/28
172.203.190.128/28

IPv6 · 0

How to verify a visitor is OAI-SearchBot

Take the request's source address and check it against the prefixes above; the User-Agent header is a claim anyone can type and proves nothing on its own. OpenAI documents the ranges as the way to verify OAI-SearchBot; a reverse DNS name is not part of its guidance, so do not rely on one.

What the API answers for one of its addresses

A lookup of an address inside these ranges answers is_crawler true, names it in crawler and classes it in crawler_kind. A crawler carries no risk weight, and the datacenter weight is skipped for it: its operator is known and its infrastructure is the point.

curl https://spaw.co/api/v1/ip \
  -H "Authorization: Bearer $SPAW_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ip": "4.227.36.0"}'
"is_crawler": true,
"crawler": "OAI-SearchBot",
"crawler_kind": "search",
"risk_signals": [{ "signal": "datacenter", "weight": 0, "dataset": "datacenter-ranges" }]

A range proves the operator, not intent. Whether OAI-SearchBot is welcome on a site is a robots.txt decision; this page and the lookup only settle whether a request that says it is OAI-SearchBot really came from OpenAI.

Other crawlers

crawler-ranges 2026-09-12 · checked 2026-09-13

Wrong result, or is it about you? If this tool said something you think is wrong, tell us and a person reads it. If Spaw is holding data about you and you never signed up here — a customer may have had your address verified, or reported that a message to it bounced — erase it yourself, confirmed by mail to that address and with no account needed.

More free tools

All free tools

Need this at scale?

The Spaw API answers is_crawler, the crawler's name and its kind for any address, from these ranges and a forward-confirmed reverse DNS check — 10 free lookups a month, no card required.

Get your API key