x402 Preflight

x402 Preflight · blog · census

x402 Bazaar census: what 26,692 paid endpoints actually return

We probed every resource published in the x402 Bazaar: 26,692 endpoints across 2,470 hostnames and 1,188 registrable domains. No wallet, no credentials, no payment — just the unpaid call that a buying agent makes first. This is what came back.

The short version: the plumbing works far better than the folklore says, the economics are smaller than anyone assumes, and the catalogue has a concentration problem that no status code reveals.

Method, in one paragraph

We downloaded the full catalogue from the x402 discovery endpoint on 18 October 2026 (26,697 listings; the API reported 26,701 and the difference is pagination drift during the download). Each resource was probed with a plain GET; when the paid verb was not GET — or the route answered 405, 404 or 200 — we made one POST with an empty body. Two classes, rate limiting (429) and no response, were re-probed at low concurrency so that our own load could not be mistaken for the endpoint's behaviour.

What the catalogue returns

ClassResourcesShare
Healthy — 402 on GET20,11175.3%
Healthy — 402 only on POST3,29812.4%
Template URL, not verifiable1,1244.2%
Rate limited by the endpoint (429)7032.6%
Dead listing (404 or 410 on both verbs)4911.8%
No response4761.8%
405 with no reachable challenge2060.8%
Other (400/406/415/5xx)1680.6%
Returns 200 without charging690.3%
Auth gate before the challenge460.2%

87.7% of the catalogue charges correctly, and every one of those healthy endpoints returned a challenge we could decode: amount, network, asset and receiver were all readable without guessing. The protocol layer is not the weak point.

Finding 1 — the dead-catalogue story is wrong

It is common to hear that most x402 listings are broken. On this data, the defensible defect rate is 3.0%: 491 dead listings, 206 routes that answer 405 without ever offering a challenge, 69 that return the payload for free, and 46 that put a login in front of the payment gate.

What is broken is discovery, not payment. 1,124 resources (4.2%) are URLs with an unresolved template parameter — :address, {id}, <id> — published exactly as they were written in the code. An agent cannot call those, and no status code says so: the URL is simply not a URL yet.

Finding 2 — the economy is fractions of a cent

Of 23,268 challenges with a readable amount, the median price is 0.01 USD. The distribution is even more lopsided than the median suggests:

Price bandResources
≤ 0.001 USD2,249
0.001 – 0.01 USD13,530
0.01 – 0.1 USD6,102
0.1 – 1 USD1,219
> 1 USD168

Fifty-eight percent of the catalogue sits between a tenth of a cent and one cent. Card rails cannot serve that price point; that is the entire reason x402 exists, and the data shows sellers already price like it.

Finding 3 — a handful of operators inflate the catalogue

26,692 resources do not mean 26,692 businesses. The catalogue is heavily concentrated:

One domain can hold more endpoints than the next hundred operators combined. Any claim about "the size of the x402 economy" that counts listings instead of operators is measuring a handful of farms.

Finding 4 — the amount unit is not interoperable

We normalised amounts assuming USDC's six decimals, which is what the protocol expects. Most challenges parse cleanly. A slice of them do not: the declared amount only makes sense if it is already in dollars, or in wei, or in some other unit the seller chose.

The symptom is a mean price in the billions of dollars — obviously absurd, and the reason this article reports the median and the bands instead of an average. The consequence is not cosmetic: an agent that reads 1000000 cannot know whether it is being asked for one cent or one million dollars without a second source of truth.

Where the payments happen

Base dominates: 22,033 readable challenges name eip155:8453, plus 172 that spell it as the literal string base — an inconsistency worth fixing in discovery. Solana accounts for 898, 141 declare no network at all, 116 point at the Base testnet, and the rest scatter across a few chains. In other words: x402 is multi-chain in specification and effectively Base in practice.

How fast the gate answers

Median response time to the unpaid call is 968 ms, with a p90 of 4.2 s. That matters for agents that preflight a list of candidates: a slow gate is not a broken gate, but it changes which endpoint an agent tries first.

What this census does not prove

It proves that the payment gate is reachable and legible without credentials. It does not prove that a payment settles, that the paid response is delivered, that the data behind it is correct, or that a catalogue indexes the resource. Those need an actual purchase and a settlement check — a different, more expensive test.

Two classes also deserve their caveat: 429 can be a deliberate limit on anonymous clients rather than a defect, and "no response" includes hosts that accept a connection and never answer. Both were re-probed; the numbers above are the stable result, not the first pass.

Check your own endpoint

The same read-only check is free, one request, no wallet:

curl -s -X POST https://x402.chikocorp.com/api/preflight/inspect \
  -H 'content-type: application/json' \
  -d '{"resource_url":"https://your-api.example.com/resource","method":"GET","max_price_usd":1}'

If it returns a decision with evidence, the numbers in this article are the context your endpoint is being judged in: 87.7% of the catalogue is healthy, so the bar is not "does it charge" — it is "can an agent read it on the first call".

Frequently asked questions

How many endpoints are in the x402 Bazaar?

On 18 October 2026 the discovery endpoint reported 26,701 listings; we audited 26,692 unique resources across 2,470 hostnames and 1,188 registrable domains.

What percentage of x402 endpoints actually charge?

87.7%: 20,111 on GET and another 3,298 only on POST. All of them returned a decodable challenge.

What is the typical price?

Median 0.01 USD, with more than half of the catalogue between 0.001 and 0.01 USD.

Does a healthy 402 prove the paid API works?

No. It proves the gate is reachable and legible. Settlement, delivery and correctness require an actual purchase.

More field notes on x402 — back to x402 Preflight.