Is that request really Googlebot?
A user agent is a string anyone can send. Paste an IP address from your logs. This free tool checks it against what each operator publishes. It needs no sign-up and no install.
How the check works
Each operator documents one of two methods.
Forward-confirmed reverse DNS
A reverse lookup turns the address into a hostname. If the hostname is under a domain the operator documents, a second lookup resolves that hostname forward. It must return the address you started with. The owner of an address can set its reverse record to any name, including a Google one. Only the owner of the domain can make that name resolve back to the address.
This check uses it for Google, whose crawlers resolve under googlebot.com, google.com. Google's page also names googleusercontent.com. This check does not accept that domain: any Google Cloud customer machine resolves under it, so it shows who hosts the address, not who sent the request. The fake Googlebot guide walks through the same checks by hand.
Published address ranges
Operators whose crawlers have no reverse DNS instead publish a machine-readable list of the addresses they crawl from. The check fetches those lists and tests whether the address falls inside one of them.
What a result does and does not tell you
A match means the operator's own published evidence lists the address. It does not show whether the request was welcome, whether the client read your robots.txt, or what it did on arrival.
No match is the normal result: most addresses on the internet belong to none of these operators. Act on a mismatch, where the User-Agent header names an operator whose published evidence does not list the address. Mismatches are common. On the median site in our crawler verification data, 1 in 7 requests calling itself Googlebot did not come from Google.
A verified identity is not authorisation. You may still want to block a verified crawler on some routes. To turn a confirmed identity into an access decision, read verifying AI agents. To see what robots.txt can and cannot enforce, read the robots.txt guide.
Where each operator publishes its crawler IPs
This table lists every crawler in the bot directory whose operator documents a way to verify it, with the reverse DNS domains or address list the operator names. We checked each row against the operator's documentation on 2026-10-10.
| Crawler | Operator | Published evidence | Checked by this tool |
|---|---|---|---|
| AdsBot-Google | Reverse DNS: google.comIP list | Yes, reverse DNS | |
| AhrefsBot | Ahrefs | Reverse DNS: ahrefs.com, ahrefs.netIP list | No |
| AhrefsSiteAudit | Ahrefs | Reverse DNS: ahrefs.com, ahrefs.netIP list | No |
| Amazonbot | Amazon | IP list | No |
| Applebot | Apple | Reverse DNS: applebot.apple.comIP list | No |
| Baiduspider | Baidu | Reverse DNS: baidu.com, baidu.jp | No |
| Barkrowler | Babbar | Reverse DNS: babbar.euIP list | No |
| Bingbot | Microsoft | Reverse DNS: search.msn.comIP list | No |
| CCBot | Common Crawl | IP list | No |
| ChatGPT-User | OpenAI | IP list | Yes, published list |
| Claude-SearchBot | Anthropic | IP list | Yes, published list |
| Claude-User | Anthropic | IP list | Yes, published list |
| ClaudeBot | Anthropic | IP list | Yes, published list |
| Discordbot | Discord | IP list | No |
| DuckAssistBot | DuckDuckGo | IP list | No |
| DuckDuckBot | DuckDuckGo | IP list | No |
| Google-CloudVertexBot | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| Google-InspectionTool | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| Googlebot-Image | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| Googlebot-News | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| Googlebot-Video | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| Googlebot | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| GoogleOther | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| GPTBot | OpenAI | IP list | Yes, published list |
| Mediapartners-Google | Reverse DNS: google.comIP list | Yes, reverse DNS | |
| MistralAI-Index | Mistral AI | IP list | No |
| MistralAI-User | Mistral AI | IP list | No |
| OAI-SearchBot | OpenAI | IP list | Yes, published list |
| Perplexity-User | Perplexity | IP list | No |
| PerplexityBot | Perplexity | IP list | Yes, published list |
| PetalBot | Huawei | Reverse DNS: petalsearch.com | No |
| Pinterestbot | Reverse DNS: pinterest.com, pinterestcrawler.com | No | |
| SeznamBot | Seznam.cz | Reverse DNS: seznam.czIP list | No |
| Storebot-Google | Reverse DNS: googlebot.comIP list | Yes, reverse DNS | |
| YandexBot | Yandex | Reverse DNS: yandex.ru, yandex.net, yandex.com | No |
| Yeti | Naver | Reverse DNS: naver.com | No |
| YouBot | You.com | Reverse DNS: search.you.com | No |
Sources this checks
Every source is the operator's own. None of it is a Centinel list, so you can check any answer here against the same file.
- Google crawler verification (reverse DNS)
- OpenAI: GPTBot (published ranges)
- OpenAI: OAI-SearchBot (published ranges)
- OpenAI: ChatGPT-User (published ranges)
- Anthropic: ClaudeBot and its other crawlers (published ranges)
- Perplexity: PerplexityBot (published ranges)
This tool does not check Bingbot. Bing's verification page did not load when this page was built, and in a verification tool an unconfirmed method is worse than none.
More free tools
- User agent parser. Names the bot a user agent string claims to be, with its operator, type and robots.txt token.
- robots.txt checker. Reads a site's robots.txt and reports what it says to each AI bot, and whether the site has an llms.txt.
- llms.txt generator. Turns a sitemap or a list of page URLs into an llms.txt draft, grouped by section.
See which bots reach your site, and which of them are who they claim to be.
Request a site audit