{
 "acronym": "",
 "adoption": {
  "level": "unmeasured",
  "by": null,
  "probe_run": null
 },
 "aliases": [
  "Pay per crawl"
 ],
 "analog": "HTTP 402 Payment Required, used for crawl access",
 "audience": [
  "site-owner",
  "platform"
 ],
 "collisions": [],
 "discovery": {
  "mechanism": "HTTP 402 response carrying a crawler-price header",
  "path": null
 },
 "dispute": null,
 "evidence": [
  {
   "claim": "Cloudflare's documentation says pay per crawl uses HTTP 402 with crawler-price, crawler-exact-price / crawler-max-price and crawler-charged headers, requires Web Bot Auth signing, and is in closed beta (documentation updated 2026-07-28).",
   "label": "VERIFIED",
   "url": "https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/",
   "date": "2026-07-28",
   "retrieved_at": "2026-10-15T22:21:25Z",
   "source_type": "issuer",
   "http_status": 200,
   "content_sha256": "a68830f4f3b86165b298aa0008a830c07e9d6091c66c4552909368a50f311e4c",
   "detector": "phase-a@2026-10-15"
  },
  {
   "claim": "Cloudflare's introductory post describes pay per crawl.",
   "label": "REPORTED",
   "url": "https://blog.cloudflare.com/introducing-pay-per-crawl/",
   "retrieved_at": "2026-10-15T22:21:25Z",
   "source_type": "secondary",
   "http_status": 200,
   "content_sha256": "fc55365cc818c94813ca676fb66084b7ad9de19f5e1a7bd1525bff0ed6f3bab2",
   "detector": "phase-a@2026-10-15",
   "date": null
  }
 ],
 "form": "http-header",
 "governance": "Cloudflare (single vendor)",
 "group": "HTTP 402 family",
 "history": [
  {
   "date": "2026-10-15",
   "note": "curated update 2026-10-15"
  },
  {
   "date": "2026-10-16",
   "note": "use-case tags (auto)"
  }
 ],
 "id": "cloudflare-pay-per-crawl",
 "implementation": "developer-trial",
 "last_verified": "2026-10-16",
 "name": "Cloudflare Pay per crawl",
 "native_status": "Closed beta; documentation updated 2026-07-28",
 "origin": {
  "org": "Cloudflare",
  "date": null
 },
 "pairs_with": [
  "web-bot-auth-signature-agent-card",
  "webbotauth",
  "x402",
  "mpp",
  "http-message-signatures"
 ],
 "part_of": null,
 "parties": [
  "agent-site",
  "agent-payment"
 ],
 "phase": "candidate",
 "probe": {
  "method": "GET",
  "path": "{origin}/{priced-path}",
  "parse": "HTTP 402 with a crawler-price response header; a crawler pays by sending crawler-exact-price or crawler-max-price, and the charged response carries crawler-charged. The crawler must sign requests with Web Bot Auth.",
  "on_absent": "A 200 or a 402 without a crawler-price header means this path is not priced by pay per crawl; the probe cannot see an unsigned-agent decision."
 },
 "question": "How can a site charge an AI crawler per request, and how does the crawler agree to pay?",
 "scope": "payments",
 "spec_url": "https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/",
 "step": "pay",
 "summary_md": "Pay per crawl is Cloudflare's way for a site to charge AI crawlers per request. The site answers with HTTP 402 and a `crawler-price` header; the crawler agrees by sending `crawler-exact-price` or `crawler-max-price`, and a charged response carries `crawler-charged` [1]. Crawlers must sign requests with Web Bot Auth, so a priced crawl is also an identified one [1].\n\nCloudflare documents it as a closed beta, and the documentation was last updated on 2026-07-28 [1]. It is a single-vendor mechanism, not an open standard, and sits in the HTTP 402 family with x402 and MPP.\n\nThe record could equally sit under permit; it is placed at pay because the exchange is a payment.",
 "track": "single-vendor",
 "use_cases": [
  "accept-agent-payments",
  "control-ai-crawling",
  "prove-agent-identity"
 ],
 "version": {
  "label": "closed beta",
  "date": "2026-07-28"
 },
 "watch": [
  {
   "type": "page",
   "url": "https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/",
   "selector": "main",
   "cadence": "weekly"
  }
 ],
 "prerequisites": [
  "http-message-signatures",
  "webbotauth"
 ],
 "freshness": "current"
}