AI Visibility Tracking ToolFree checker

When Your CDN or Firewall Blocks AI Crawlers

99Visibility Research · Updated October 21, 2026 · 8 min read

Short answer

A CDN or web application firewall can refuse an AI crawler that your robots.txt allows. The crawler gets a 403, a rate limit or a challenge page, and your content never reaches that engine's index. OpenAI says ChatGPT search eligibility needs both: robots.txt permission and a host or CDN that lets its crawler's IP addresses through. Since 15 September 2026, Cloudflare's defaults can also block some AI crawler categories without the site owner changing anything.

Key takeaways

  • robots.txt is a request, while your CDN or firewall is the gate that actually answers, so check both for every AI crawler you care about.
  • OpenAI states that ChatGPT search eligibility requires allowing OAI-SearchBot and confirming your host or CDN accepts traffic from OpenAI's published search bot IP addresses.
  • From 15 September 2026, Cloudflare blocks its Training and Agent crawler categories by default on ad-displaying pages for new domains, new sites and existing free-tier customers, while Search stays allowed.
  • A test that spoofs a crawler's user agent from your own machine is a useful first look, but your CDN or origin logs for verified bots are the ground truth.
  • Passing the access gate makes you reachable, not cited: it removes a block and promises nothing about what an engine says.

Two gates, and only one of them is robots.txt

Every AI crawler passes two separate gates before your content can reach an engine's index. The first is robots.txt, a text file that tells each bot what it may fetch. The second is the network layer: your content delivery network, your web application firewall, your bot management rules and any IP allowlists.

The two gates do not talk to each other. robots.txt can say Allow while the firewall returns 403 Forbidden to the same bot. When that happens, the crawler never sees your page, and nothing in your CMS or analytics tells you.

OpenAI spells this out for ChatGPT search. Its help article says that to make a site eligible, you allow OAI-SearchBot to crawl and confirm that the host or CDN allows traffic from OpenAI's published search bot IP addresses. The word is "and". robots.txt alone is not enough behind a blocking firewall.

If you want the side-by-side version, read robots.txt vs firewall: the two gates for AI crawlers. The rest of this page is about the second gate.

How a firewall ends up refusing a bot you allowed

Firewalls and bot managers are built to stop automated traffic. AI crawlers are automated traffic. Most blocks are side effects of rules written for scrapers, credential stuffers or DDoS protection.

The common mechanisms are:

  • Bot score or challenge rules. The firewall serves a JavaScript challenge or CAPTCHA to anything that looks automated. OpenAI's own guidance notes that because its crawlers are automated systems, these checks may block access, and that such systems can mistakenly block legitimate crawlers, often returning 403 errors.
  • A one-click "block AI bots" setting. Many CDNs and security plugins offer a switch that blocks a whole list of AI user agents. That list usually mixes training crawlers with search crawlers. If you run WordPress, see whether security plugins block AI crawlers.
  • Rate limits. A crawler that fetches many URLs quickly hits a threshold and gets 429 Too Many Requests.
  • Country or ASN blocks. Rules that block datacenter IP ranges or whole regions catch crawler traffic that comes from cloud providers.
  • IP allowlists that are out of date. A site that only admits known IPs can miss new ranges. OpenAI publishes its IP ranges as JSON files, and as of its August 2026 files they listed IPv4 ranges only. An origin that only accepts IPv6 cannot be reached from those ranges at all.

One block has a knock-on effect. Anthropic warns that IP blocking impedes its ability to read your robots.txt file. If the crawler cannot fetch /robots.txt, your per-bot rules never get read.

What Cloudflare changed in September 2026

On 15 September 2026, Cloudflare changed its default bot settings. Its Training and Agent crawler categories are now blocked by default on pages that display ads. Search crawlers remain allowed by default. The change applies to new domains, to new sites added by existing customers, and to all existing free-tier customers.

This matters for one reason: a site can lose some AI crawler access without its owner editing a single setting. If you are on a free Cloudflare plan and run ads, your configuration may have changed under you.

What it means in practice depends on which category a bot falls into:

  • Blocking a training crawler such as GPTBot only affects whether your content is used to train future models. OpenAI states that each of its crawler settings is independent. Blocking GPTBot does not remove you from ChatGPT search.
  • Search crawlers, such as OAI-SearchBot, stay allowed under the new default. Those are the ones that decide whether you can appear in AI search answers.
  • Agent fetchers act on behalf of a user in real time. Cloudflare's default now blocks that category on ad-displaying pages.

The next move is simple. Open your Cloudflare dashboard, find the AI crawler or bot settings for each zone, and confirm that the categories match what you actually want. Nobody outside your account can see this setting.

What you control and what you don't

Access is the most controllable part of AI visibility. It is also the part with the clearest evidence, because the engine operators document the mechanism themselves.

In your control:

  • Which crawlers your robots.txt allows, per bot.
  • Whether your CDN, firewall and security plugins let those same crawlers through.
  • Whether /robots.txt itself is reachable to every crawler.
  • Whether your allowlists use user agent plus verified-bot programmes rather than IP lists alone. OpenAI publishes IP ranges and also warns against relying on IP-only allowlisting.

Not in your control:

  • Whether an engine retrieves your page for a given question. Retrieval is per query and at the engine's discretion.
  • Whether a retrieved page gets cited, and what the answer says.
  • How user-triggered fetchers behave. OpenAI says robots.txt rules may not apply to ChatGPT-User, and Perplexity says Perplexity-User generally ignores robots.txt rules. Your firewall still sees them.
  • What the model already knows from training, which no access change reaches this quarter.

Be plain with your team about the payoff. Fixing a firewall block removes a reason you are absent. It does not guarantee a single citation. Nobody has published how often robots.txt and firewall settings disagree across sites, so treat this as a thing to check, not a known epidemic.

How to test whether your firewall blocks AI crawlers

Run the test in this order. Each step catches something the previous one misses.

  1. Read your robots.txt per bot. List the retrieval crawlers you care about: OAI-SearchBot, PerplexityBot, Claude-SearchBot, Meta-WebIndexer, Googlebot and bingbot. Note which are allowed. Our per-bot robots.txt guide covers what each one controls.
  2. Request pages as each crawler. Send a request to your homepage, your pricing page and one deep content page using each crawler's documented user-agent string. Request /robots.txt the same way.
  3. Repeat from two networks. Send one set of requests from a datacenter connection and one from a residential connection. Many firewall rules treat the two differently.
  4. Classify every response using the table below.
  5. Check your logs for the real bots. Filter your CDN or origin logs to verified crawler traffic and look at the status codes those bots actually received.
  6. Check the CDN dashboard. Review bot categories, managed rules and any AI crawler settings, especially after 15 September 2026 on Cloudflare.
Response What it means Next move
200 with your real content The crawler got through Confirm the key facts are in the raw HTML
403 Forbidden A firewall or bot rule refused it Find the rule and add an exception for that verified bot
429 Too Many Requests Rate limit triggered Raise the limit for verified crawlers
200 with a challenge or CAPTCHA page The bot sees a wall, not your page Exempt verified bots from the challenge
Timeout or connection refused Network block, or an address the crawler cannot reach Check IP rules and IPv4 reachability

Steps 2 and 3 are a fast screen, not a verdict. A spoofed user agent from your laptop is not the real crawler. A good bot manager may correctly block your fake request while admitting the real one, or admit yours while blocking real crawler IPs. That is why AI crawler checkers can give different results, and why step 5 settles it. The full procedure is in our playbook on testing whether your firewall lets AI crawlers in.

For a quick first pass, the free AI Crawler Checker on 99Visibility requests a page as each AI crawler and shows which ones the firewall turns away.

Fixing a block without opening the door to everything

The goal is to admit the specific crawlers you chose, not to switch off bot protection.

  • Allow by verified identity. Cloudflare describes verified bots as those that prove identity through a cryptographic Web Bot Auth signature, a published IP list with a stable user agent, or reverse DNS. Use your CDN's verified-bot feature rather than a raw user-agent match, which anyone can fake.
  • Split training from search. Decide separately. You can block GPTBot for training and still allow OAI-SearchBot for ChatGPT search.
  • Exempt /robots.txt from challenges. Every crawler needs to read it before anything else works.
  • Retest after every change. Rerun the response checks and read the logs again a few days later.
  • Write it down. Note which rule you changed and why. The next person to tighten security should know that rule matters.

Common mistakes

  • Assuming robots.txt is the whole story. It is one gate of two. A clean robots.txt behind a blocking firewall is a silent failure.
  • Flipping a blanket "block AI" switch. Most of these lists mix training and search crawlers. Blocking the search crawler removes eligibility for that engine's search answers.
  • Believing GPTBot controls ChatGPT search. It governs training only. OAI-SearchBot is the search crawler.
  • Testing only the homepage. Firewall rules often differ by path. Test pricing, product and content pages too.
  • Trusting one spoofed test. Confirm with logs of verified bot traffic before you conclude anything.
  • Relying on IP lists alone. Ranges change, and OpenAI itself advises against IP-only allowlisting.
  • Forgetting the plan changed. A CDN default can change your access without any edit on your side. Recheck after vendor announcements.

Frequently asked questions

Does blocking GPTBot at the firewall hide me from ChatGPT search?

No. OpenAI documents its crawlers as independent. GPTBot crawls content that may be used for training. OAI-SearchBot is the crawler that decides whether your site can appear in ChatGPT search answers. You can block GPTBot and still allow OAI-SearchBot. The risk is a firewall rule that blocks both by accident, so check each one separately.

Will allowing AI crawlers through my CDN get me cited?

No one can promise that. Allowing a crawler makes your pages reachable and eligible for that engine's index. Whether an engine retrieves your page for a specific question, and whether it cites it, depends on the engine. Access removes a block. It is the step that has to work before anything else can, but it does not decide the answer.

Why does my crawler test show 200 but the real bot still gets blocked?

Your test sends a crawler's user-agent string from your own IP address. A bot manager may treat real crawler traffic differently, for example by checking IP ranges or reverse DNS. Your request can pass while real crawler IPs are refused, or the reverse. Your CDN or origin logs, filtered to verified bots, show what the real crawlers actually received.

Does the Cloudflare September 2026 change affect my site?

It can if your site is on a free Cloudflare plan, or was added as a new domain or new site after 15 September 2026, and its pages display ads. In those cases Training and Agent crawler categories are blocked by default, while Search crawlers remain allowed. Log in to your Cloudflare dashboard and check the bot settings for each zone.

Can a firewall block a crawler from reading robots.txt itself?

Yes. If the firewall blocks a crawler's IP address or challenges its requests, it cannot fetch /robots.txt either. Anthropic warns that IP blocking impedes its ability to read your robots.txt file. Exempt /robots.txt from challenges and rate limits so every crawler can read your rules before it requests anything else.

Sources

  1. Searching the web with ChatGPT
  2. Overview of OpenAI Crawlers
  3. Does Anthropic crawl data from the web, and how can site owners block the crawler?
  4. Perplexity Crawlers - Perplexity
  5. Bots · Cloudflare bot solutions docs

This page is AI-assisted. It was written from a verified evidence base and checked against our editorial policy. Engine behaviour changes often; facts are as of October 21, 2026.

Keep reading