Back to Blog
SEO#robots.txt#Robots.txt Tester#AI Crawlers#Technical SEO#Access

Robots.txt Tester: How to Check What Google and AI Crawlers Can Actually Reach

By Liwaa BeainiOctober 14, 20266 min read
SEO article cover for “Robots.txt Tester: How to Check What Google and AI Crawlers Can Actually Reach” — 99Visibility

A robots.txt tester answers one question: does this file allow this crawler to fetch this URL? That is half the answer. The other half is whether your firewall or CDN lets the crawler in, and no robots.txt checker can see that.

This guide covers both tests: how to check robots.txt by hand and with Google's tools as of October 2026, then how to request a page as the crawler and read what comes back.

Where to find a site's robots.txt

Add /robots.txt to the root of the host: https://example.com/robots.txt. Google: "A robots.txt file applies only to paths within the protocol, host, and port where it is posted." The file on example.com does not cover shop.example.com, so test each host.

Open the file in a private window. Then note its status code, because that decides what crawlers do:

robots.txt returnsRFC 9309Google
200Crawler "MUST follow the parseable rules"Uses the file as served
4xxCrawler "MAY access any resources on the server"Every 4xx except 429 is treated "as if a valid robots.txt file didn't exist"
5xx or network errorCrawler "MUST assume complete disallow"Stops crawling for 12 hours, then uses the last good copy for the next 30 days

Under RFC 9309, a 404 opens the whole site and a 500 closes it. Fixes are not instant either: Google "generally caches the contents of robots.txt file for up to 24 hours".

How crawlers read the rules

A crawler uses the groups naming its product token, matched case-insensitively and merged. Only "if no matching group exists" does it fall back to the * group. Google spells out the consequence: "User agent specific groups and global groups (*) are not combined."

Inside the group, the longest matching path wins, not the first line. RFC 9309: "The most specific match is the match that has the most octets." On a tie, Allow wins. If nothing matches, the URL is allowed. For which token belongs to which product, see our AI crawler list.

A robots.txt test by hand: one file, four checks

User-agent: *
Disallow: /private/
Allow: /private/press/

User-agent: GPTBot
Disallow: /

User-agent: OAI-SearchBot
Allow: /blog/
CrawlerURL pathGroupDeciding ruleResult
Googlebot/private/press/kit.pdf*Allow: /private/press/ (15 characters beats 9)Allowed
Googlebot/private/notes*Disallow: /private/Blocked
GPTBot/blog/guideGPTBotDisallow: /Blocked
OAI-SearchBot/private/notesOAI-SearchBotNone matchesAllowed

The last row is the trap. The owner closed /private/ to everyone, then gave OAI-SearchBot its own group to open the blog, and that group replaced the * rules. A rule a named crawler must follow has to sit inside its own group. On WordPress, see our guide to editing your WordPress robots.txt.

Google's robots.txt testing tools in October 2026

The old robots.txt Tester is gone. On 15 November 2023, Google Search Central announced the Search Console robots.txt report and wrote: "As part of this update, we're sunsetting the robots.txt tester." Three tools replace it:

  1. The robots.txt report (Search Console, Settings). It "shows which robots.txt files Google found for the top 20 hosts on your site, the last time they were crawled, and any warnings or errors encountered", and lets you request a recrawl. Domain-level properties only.
  2. URL Inspection. Google's tool for one URL: "you can test the availability of the URL with the URL inspection tool." Read the "Crawl allowed?" field.
  3. Google's open-source robots.txt library: Googlebot's production code, slightly modified, with a program for "testing a single URL and user-agent against a robots.txt". A developer has to build it.

The report and URL Inspection show Google's view only. For AI crawlers, use the hand method above.

The test robots.txt can't do: request the page as the crawler

RFC 9309 is blunt: "These rules are not a form of access authorization." Your firewall, CDN and bot protection decide who gets in.

OpenAI names both gates. For ChatGPT search, "allow OAI-Searchbot to crawl the site and confirm that the website host or content delivery network allows traffic from OpenAI's published searchbot IP addresses." Protection services, OpenAI warns, "can mistakenly block legitimate crawlers, often returning 403 Forbidden errors." Defaults change too: see Cloudflare's AI crawler default change.

How to run it

  1. Request the page as a browser. This is your control.
  2. Request it again with the crawler's user-agent string, copied from the vendor. OpenAI publishes OAI-SearchBot's, noting "the version number may change".
  3. Request /robots.txt the same way. Anthropic warns that IP blocking "impedes our ability to read your robots.txt file".
  4. Compare the codes, then open both saved pages.
curl -s -o browser.html -w "%{http_code}" -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36" https://example.com/pricing

curl -s -o crawler.html -w "%{http_code}" -A "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" https://example.com/pricing

No terminal? In Chrome DevTools' Network conditions panel, untick "Use browser default", paste the crawler's string and reload.

Read the status code, not a pass/fail label

The crawler getsWhat it means
200 and the real pagePassed
200 and a "verify you are human" pageA challenge. OpenAI: such checks "may block access even if the crawler successfully passes earlier layers"
401The request "lacks valid authentication credentials"
403The server "understood the request but refuses to fulfill it"
429The client "has sent too many requests in a given amount of time"
503"A temporary overload or scheduled maintenance". If the control got a 200, it was aimed at the crawler
Another 4xx, such as 418Still a refusal. Cloudflare lets a site pick its block code "in the range 400-499"

Any code the crawler gets and the browser does not is a finding. A checker that counts only a fixed list of codes as blocks will call a 418 reachable. Read the number yourself.

Check the control first

If the browser request fails too, the test measured nothing. The site is down or blocking your network, and every crawler result is noise.

What a test request can and can't prove

Your request carries the crawler's name but your IP address. OpenAI publishes its crawler IP ranges, and Google documents how to verify requests from troublemakers "claiming to be from Google". A firewall that checks addresses can treat your test differently from the real crawler, in either direction.

So a block means a rule matched your request: find it in your CDN or firewall and check what it keys on. A pass does not clear an IP-based rule. Send a few requests, not a burst, or bot protection may block your own IP.

Robots.txt test checklist

CheckHow to run itWhat a failure looks like
File on each hostOpen /robots.txt per subdomain and protocolA 5xx, or a host with no file
Google can read itSearch Console robots.txt reportNot Fetched, or errors under Issues
Right groupFind the crawler's group, else *A named group drops the * rules
Key URLsLongest match by hand; URL Inspection for GooglebotA Disallow wins on a page you need
Crawler reaches robots.txt and pagesRequest both with the crawler's user agent, beside a browser control401, 403, 418, 429, 503, a challenge, or any code the control did not get
Retest after changesWait a day; request a recrawlOld rules still applied

Run both tests on the pages that matter

99Visibility checks whether AI crawlers can reach your site, comparing what your robots.txt allows with what each crawler actually gets back, and audits what 5 AI platforms say about your brand. No automated check recognises every way a site can refuse a crawler, so when a result surprises you, request the page yourself and read the code. Your first audit is free, with no credit card, and covers ChatGPT and Google AI Overviews. See the plans for all five platforms. Inside the dashboard, Agent V reads your audit and your site and drafts the robots.txt lines for you to paste. It never edits your site itself.

FAQ

How do I check the robots.txt file on a website?

Add /robots.txt to the protocol and host, then open it: https://example.com/robots.txt. Each subdomain and protocol has its own file.

Does Google still have a robots.txt tester?

Not the old one, retired in November 2023. Use the Search Console robots.txt report, URL Inspection, and Google's open-source robots.txt library.

If robots.txt allows a crawler, can it reach my site?

Not necessarily. Your CDN or firewall can still answer with a 403, a challenge or another refusal code. Request the page as the crawler and compare it with a browser request.

See what crawlers actually get from your site. Run a free audit: no credit card.

Share

Want more of our research in Google Search and AI Mode? Add us as a preferred source.

Add 99Visibility as a preferred source on Google

Can AI crawlers reach your site?

Your free audit requests your site as each AI crawler, reads robots.txt bot by bot, and shows every place your firewall disagrees with it.

Start Free Audit

Related Articles