Live demo Bot ManagementWorkersAI Audit Read the writeup → In the Northwind case file →

The Free Buffet for Bots

Publishers just accept that bots take everything. A Worker can identify AI crawlers at the edge and meter, license, or block them, turning a leak into a control point.

The pain

AI crawlers strip-mine your content for free, with no visibility and no say in it.

The fix

Identify AI bots at the edge and allow, charge (402), or block (403) them per policy.

So what

Protect content value and infra spend: turn an invisible leak into revenue or a hard "no".

Try it

Who's knocking? The edge decides.

Pick a caller. The edge classifies it and shows the policy it would apply, then enforce it for real.

~20 crawler signatures are recognized (OpenAI, Anthropic, Google-Extended, Perplexity, CCBot, Bytespider, Meta, and more). Enforcement returns a genuine HTTP 402 (license) or 403 (block), not a description of one.

How it works

Identify AI crawlers at the edge and decide per-caller: allow, charge, or block.

🤖
Caller
by User-Agent
request
🌐
Cloudflare edge
classify
Human → allowed
AI training → 402 license
Disallowed bot → 403

Add it to your site

1 dashboard toggle, or ~15 lines
No code: Cloudflare dashboard
Security → Bots → "Block AI bots" / "Pay per crawl"
One toggle. Cloudflare maintains the crawler signatures for you.
Custom policy: a Worker
const ua = request.headers.get('user-agent') || '';
const bot = classifyAiCrawler(ua); // GPTBot, ClaudeBot, CCBot, PerplexityBot…

if (bot?.policy === 'block')   return new Response('Forbidden', { status: 403 });
if (bot?.policy === 'license') return new Response('Payment required', { status: 402 });
return fetch(request); // humans pass straight through
01
Flip the AI-bots toggle in the dashboard (zero code)
02
Or deploy a Worker for custom allow / charge / block
03
Read the analytics: see exactly who is crawling you
Works with:Any site on CloudflareWorkersPages