· By John Kavanagh

HTTP 402 finally Found a Purpose

Abstract image used to represent HTTP 402 finally Found a Purpose
Image by William Warby.

In Brief

HTTP 402 has moved from a reserved status code to a practical signal for machinetomachine access negotiation. Cloudflare and AWS give it real crawlerpayment patterns, but 402 still only says payment may be required. Pricing, identity, fraud control, attribution, licence terms and postaccess usage rights remain separate problems.

HTTP 402 Payment Required has always sounded more useful than it was.

The name is excellent. The status code looks like it should sit beside 401 Unauthorized, 403 Forbidden and 404 Not Found as part of normal web life. But for decades it mostly existed as a reserved idea. RFC 9110 still describes 402 as reserved for future use. MDN calls it nonstandard, with no standard use convention and different implementations doing different things.

For a long time, 402 felt like a status code waiting for the web to catch up.

Machinemediated discovery may have finally given it a job.

Not because every page on the web is about to require a micropayment. That old dream has failed often enough to deserve caution. The change worth taking seriously is narrower: machines are now making many more requests where access, value, identity and payment can be negotiated without a human staring at a paywall.

That follows from the machinereadable web in the previous article. Once pages and APIs become source material for systems, the next question is whether access is free, blocked, licensed, metered, or paid.


Why 402 never quite worked for people

Micropayments on the human web have always had a friction problem.

People do not want to approve tiny payments every few pages. Publishers do not want to manage endless small transactions without scale. Payment providers take fees. Users worry about trust, privacy, and surprise costs. Browsers never settled on a universal payment flow. Subscription bundles became easier to understand than paying pennies on demand.

That history matters because it stops the argument becoming too neat. The web has repeatedly discovered that technically possible payment flows do not automatically become publishing models. The assumption that "small payments will save content" has usually underestimated friction, trust and habit.

So 402 stayed mostly theoretical. Some APIs and services used it in their own ways, but the web never developed a shared convention.

The human experience was the blocker. A browser showing "Payment Required" is not a payment system. It is a disappointed sign.

Machines change the shape of the problem.

An AI crawler, retrieval service, browser agent or API client can make an economic decision programmatically. It can identify itself, receive terms, decide whether the price is acceptable, pay, cache a receipt, fetch the content, and move on. That does not make the payment problem easy, but it makes the interaction more plausible than asking a person to click through a micropayment prompt every time they read a paragraph.


Cloudflare and AWS made 402 practical

Cloudflare's Pay Per Crawl private beta is one clear example.

The site owner can configure whether AI crawlers are allowed, charged or blocked. If a crawler requests content that requires payment, Cloudflare can respond with 402 Payment Required and include a price. The crawler can also send a maximum price in the request. If the terms work, the request can proceed.

AWS WAF AI Traffic Monetization gives the same status code a second practical infrastructure pattern. For CloudFrontbacked resources, an AWS WAF rule with a Monetize action can return 402 Payment Required with x402 payment instructions. A compatible agent can submit signed payment authorisation, AWS WAF can verify it, the content can be fetched, and settlement can run through thirdparty facilitator services.

Those are not identical products. Cloudflare's model is framed around allow, charge, or block decisions for crawlers at the CDN and WAF layer. AWS's model is tied to CloudFront distributions, AWS WAF Bot Control classification, x402 payment instructions, and thirdparty settlement. The shared point is still large enough: 402 is moving from a reserved idea into an edgeaccess negotiation mechanism.

That gives 402 a real job: not a generic consumer paywall, but machinetomachine access negotiation.

It fits the AI crawler problem because the transaction is not only about the page. It is about usage. A crawler may be reading for search visibility, training, answer grounding, content extraction, comparison, or commercial reuse. The site owner may want different terms for different identities or categories.

402 becomes a way to say: this resource is available, but not under a freeaccess assumption.


x402 Points at a Wider Agentic Payment Model

Cloudflare is not the only signal.

The x402 project describes an open payment protocol for HTTP APIs using 402 Payment Required. The idea is that an API can return a 402 response describing payment requirements, and a client can retry with a payment proof. Coinbase's x402 repository frames it as a way for AI agents, APIs and services to pay for resources on demand.

AWS's use of x402 inside WAF does not settle the whole question of agent payments. It does make the pattern less theoretical. A major infrastructure provider is now using 402 and x402 to express price and payment requirements in the request path for protected web resources.

Whether x402 becomes widely adopted is a separate question. Standards, wallets, identity, fraud controls, compliance, refunds, pricing, volatility, user consent, and developer experience all matter.

But the direction is important.

Agentic systems will need to buy things. Not only products. They may need to pay for data, reports, API calls, premium documents, compute, verification checks, scheduling actions, reservations, licensing, or content access.

The old web could not make 402 normal because humans were poor micropayment clients. Agents may be better clients, provided the surrounding governance is serious enough.


Payment is Also a Permission Signal

402 is not only a way to say "pay me".

It can become part of a permission conversation.

A server can already say plenty without a payment code. 200 OK says here is the resource. 401 Unauthorized asks for authentication. 403 Forbidden refuses access. 404 Not Found hides or denies the resource. 429 Too Many Requests tells the client to slow down. 451 Unavailable For Legal Reasons says the refusal has a legal cause.

402 Payment Required gives a different signal: the resource exists, and access may be possible, but payment or commercial terms are required.

That is useful in AI crawling because blocking everything is too blunt. A publisher may want to allow search snippets, block training, charge for largescale extraction, allow usertriggered agent access, and negotiate separately for premium archives. A professional data provider may expose public summaries but charge for detailed feeds. A platform may allow normal users to browse but require paid API access for automated comparison.

The status code does not solve the policy. It gives the policy somewhere to surface.


Identity Has to Come First

Payment without identity is weak.

If a server cannot tell who is asking, it cannot price access sensibly. If a crawler can spoof another crawler, the commercial model collapses. If a usertriggered agent looks the same as a bulk training crawler, the site owner cannot make a fair policy choice.

Crawler identity matters because those distinctions are the minimum needed for policy.

OpenAI documents separate agents such as GPTBot, OAI-SearchBot and ChatGPT-User, each with different stated purposes. Google documents different crawlers and the Google-Extended token. Cloudflare's model depends on crawler authentication and classification. AWS's monetisation flow also depends on Bot Control classification and verification tiers.

Those distinctions are not bureaucracy.

Before 402 can become useful at scale, sites and agents need reliable identity, signatures, reputational controls, and audit trails. Otherwise the web gets another arms race where good actors pay and bad actors pretend to be someone else.


Pricing Content is Harder than Pricing Bandwidth

One trap in paypercrawl thinking is to price the request rather than the value.

Not all pages are equal. A homepage, an old blog post, a breaking news article, a premium research report, a product feed, a location page, a public support answer and a proprietary dataset do different jobs.

Not all uses are equal either. Crawling a snippet for search discovery is not the same as using the full article for model training. Fetching a page because a user asked a direct question is not the same as harvesting the whole site to build a competing product. Paying for one API lookup is not the same as licensing a corpus.

So 402 may work best where the resource and use are wellscoped: paid API calls, premium datasets, publisher article access, commercial AI crawling, verified reports, rightsmanaged media metadata, specialist documentation, ratelimited automated comparison, and agentic purchasing or reservation flows.

For ordinary public service pages, free access may still make more sense. A business usually wants agents to know its locations, services, opening hours, and contact routes.

The better question is not "can we charge machines?" It is "which machine uses create enough value or cost that terms are needed?"


The Implementation Caveats are Not Footnotes

AWS's documentation is useful because it makes the rough edges visible.

The Monetize action is tied to web ACLs associated with Amazon CloudFront distributions. It is designed for automated AI agent traffic, not normal human browser traffic. A standard browser cannot interpret an x402 price manifest and complete a machine payment flow, so the rule design has to avoid presenting paidagent challenges to ordinary visitors.

Classification is still probabilistic. Verified bot traffic is stronger evidence than a bare user agent, but no classification system turns identity into a solved problem. Payment processing also introduces latency and new failure modes. AWS describes payment verification and settlement as synchronous in the request path, with possible delays, thirdparty facilitator failures, blockchain network congestion, and throttling under high payment volumes.

Those details matter because they stop 402 becoming a magic answer. Pricing a request is easier than pricing content. A request price does not decide what an agent may do with the material after access. It does not settle attribution, licence scope, training rights, fraud controls, commercial contracts, refunds, customer consent, or auditability.


402 will not replace subscriptions or licensing

Expectations need to stay modest.

402 is not a complete business model. It does not decide prices, licensing terms, attribution, settlement, tax, refunds, fraud, consent, data rights, privacy, rate limits, content freshness, or dispute handling.

It is a signalling mechanism.

That is still valuable. The web is built from small signalling mechanisms that become powerful when they are widely understood. Status codes, headers, redirects, canonical tags, sitemaps, structured data, robots directives and content types all work because machines can make decisions from them.

402 can play that kind of role if enough systems agree on what it means in specific contexts.

Cloudflare's Pay Per Crawl uses it for AI crawler access. AWS WAF AI Traffic Monetization uses it with x402 for machinetomachine payment at the edge. Other implementations may vary. The risk is fragmentation, where every platform invents slightly different headers, receipts, wallets, and negotiation flows.

Standardisation matters here. A useful 402 ecosystem needs more than clever infrastructure. It needs boring agreement.


The Access Assumption to Test

Starting with implementation gets the order wrong.

The better starting point is understanding which resources have machine value.

For a publisher, that may be original reporting, expert explainers, archives, data journalism, and analysis. For a product company, it may be catalogue feeds, documentation, compatibility data, pricing, and reviews. For a service business, it may be public fit information, proof, case studies, and comparison material. For a platform, it may be API access, aggregated data and workflow actions.

The access policy follows from that value. Some resources may remain free and crawlable because visibility matters. Some may be crawlable but not available for training. Some may be available for search grounding but not bulk extraction. Some may deserve paid commercial crawler access. Some may belong behind an API rather than page scraping. Some may be blocked because the content is sensitive, stale or not meant for automated use.

Only after that does the implementation question make sense.

A site with poor content ownership, inconsistent metadata and broken logs is not ready for paid crawler access. It cannot price what it cannot identify. It cannot protect what it cannot classify. It cannot measure what it cannot log.


The Bigger Shift is Machine‑to‑Machine Negotiation

The bigger point is that 402 points beyond crawler payment.

As agents become more capable, they will need to negotiate access and actions. Can I read this report? Can I fetch this dataset? Can I reserve this appointment, buy this product, compare these plans, pay for one premium answer, or retrieve the detailed API response rather than the public summary?

Some of those actions need payment. Some need authentication. Some need consent. Some need a human in the loop. Some need a signed record. Some must be refused.

The web already has many of the pieces: HTTP status codes, authentication, APIs, redirects, headers, structured data, payment providers, wallets, signatures, and policy files. What has been missing is a strong reason to make small, automated, rightsaware transactions part of everyday web architecture.

Machinemediated decision making may be that reason.


Wrapping Up

HTTP 402 Payment Required has spent decades as a promise without a normal job.

AI crawling and agentic access do not solve every old micropayment problem. They do create a better use case than human readers paying tiny amounts by hand.

When a machine asks for a resource, the server can answer with terms. The client can decide whether the resource is worth the price. The request can proceed, fail, authenticate, retry, log, or move on.

That is a small protocol idea, but it fits a large change: the web is moving from open crawling by assumption towards more explicit machine access, licensing, attribution, and payment.

402 will not fix publisher economics by itself. It will not make bad content valuable. It will not stop bad crawlers. It will not replace commercial contracts.

But it may finally have a reason to exist.

The larger story is not the status code. It is the same shift underneath the rest of the series: websites and APIs increasingly have to expose terms, rights and payment signals to software acting before or around the human decision. Once those systems start creating cost or value, access terms stop being a side issue.

Key Takeaways

  • HTTP 402 Payment Required is still reserved/nonstandard in HTTP semantics, but AI crawling gives it a practical use case.
  • Cloudflare Pay Per Crawl uses 402 as part of machinetomachine access negotiation for AI crawlers.
  • AWS WAF AI Traffic Monetization uses 402 and x402 for machinetomachine payment on CloudFrontbacked resources.
  • x402 points at a wider pattern where agents and API clients can pay for resources programmatically, but it does not replace licensing, identity, attribution, or commercial governance.
  • Reliable identity, authentication, audit trails and crawler purpose are prerequisites for paid machine access.
  • 402 is a signal, not a full business model. Pricing, licensing, rights, attribution, refunds, latency, and fraud still need governance.
  • Machine value and access policy come before payment implementation becomes useful.

Need a senior engineer involved?

I can work directly in the codebase, review the architecture, or support the team through delivery when the work needs more than extra hands.