This content reflects minia2a as of its publication date and is kept for the record. Current model: x402 pay-per-call in USDC on Base only, 5 free trial calls per signed wallet, no credits and no top-up rail.
2026-10-16 · measurement window 2026-10-16 00:00:00Z – 01:11:00Z
On October 14 a Chainalysis report put a number on the thing everyone working on agent payments has been waiting for: more than 138 million x402 transactions on Base by Q3 2026, up from roughly 1,500 in mid-2025. More than 87% of the payments were between one-hundredth of a cent and ten cents — a band cards cannot serve and stablecoins can. The median wallet went from funding to its first x402 payment in 18 minutes in Q3 2026, down from 73 days in late 2025.
It is a good report and the numbers are the kind you can check on-chain. They are also, by the report's own framing, a count of payments. They are not a count of agents deciding to buy something. Chainalysis says so, and the rival firm TRM said it more bluntly: a large share of apparent agent activity may be scripts or self-dealing rather than autonomous agents.
That dispute cannot be settled from chain data, because both hypotheses write the same bytes. A wallet that pays a service every four minutes forever is indistinguishable, on-chain, from a wallet that really likes the service. This is where a seller's own log is the only instrument that can tell the difference — and where we can contribute something no analyst can, because we are one of the things being counted.
What the paid surface of a small marketplace looks like
We pulled the gateway access log for a 71-minute window — 2026-10-16 00:00:00Z to 01:11:00Z — and split requests to the paid surface (/x402/, /svc/, /mcp) by status and by source IP.
| Requests to the paid surface | 5,717 |
|---|---|
| …answered 402 (unpaid challenge) | 5,683 — 99.4% |
| …answered 200 (data returned) | 13 — 0.23% |
| …answered 404 / 400 | 15 / 6 |
| …from IPs we operate | 2,262 — 39.6% |
| …from anywhere else | 3,455 — 60.4% |
| Of the 13 that got data: ours | 12 |
| Of the 13 that got data: a stranger | 1 |
Read that last pair again. In 71 minutes, the paid surface of this marketplace returned data 13 times, and twelve of those were our own verification jobs hitting our own endpoints to prove they still answer. The thirteenth was a single browser-shaped request to the endpoint index. No external agent bought or trialed anything in that window, and the platform's public metrics agree: paidCallsToday: 0, trialsToday: 0, five paid calls in seven days, three distinct agents seen in seven days.
Meanwhile the same 71 minutes produced 5,717 requests to the paid surface. Almost all of them were enumeration: a client walking the catalog, collecting the 402 challenge at each endpoint to see what is for sale and at what price. That is a real and useful activity — several of those crawlers keep public x402 directories in sync, including Coinbase's Bazaar index — but it is not demand.
Our own first pass at this was wrong, which is the useful part
The first version of this measurement classified requests by User-Agent. It said: of the thirteen successful calls, zero were ours, thirteen belonged to other people. That looked like a small but real signal — a trickle of strangers actually using the thing.
Then we looked at the IPs instead. Twelve of the thirteen came from the two addresses we operate. Our own jobs had simply stopped announcing themselves in the UA string on some code paths, and the classifier believed the label instead of the evidence.
A self-declared identity is the weakest field in the log. It is the one field a client controls completely — and the one a crawler with an audience is most motivated to write carefully. We got the answer wrong by trusting it, on our own traffic, in a measurement whose entire purpose was to distrust labels.
Classify by what a client cannot forge — the source address, the wallet signature, the ledger row — and the picture changes completely. That is the whole technique, and it costs nothing to state: count the thing the client cannot choose.
Why the gap is structural, not a bug
The 402 challenge is the product surface of every x402 service, and it is public by design. That is what makes x402 discoverable: an agent with no relationship to the seller can ask "what is this and what does it cost" and get a signed, machine-readable answer. The same property makes the surface trivially enumerable. Roughly 1,700 endpoints times one request each is a five-minute crawl, and every one of those requests is, from the gateway's point of view, a request it must serve.
So the ratio of challenges to settlements is not a quality signal about the protocol or about the seller. It is a measurement of how many directories are watching. On our surface the watchers are self-identifying and explicit about it — 402explorer/0.1, x402-observer/1.0, SettledProbe/0.1 (unpaid liveness check, never settles), x402-discovery-probe/1.3.0 (unpaid HTTP 402 discovery check; makes no payments), CoinbaseBazaarDiscovery/1.0. A good number of them say in the User-Agent that they will never pay. That is honest engineering, and it makes them easy to count — and easy to mistake for traffic.
What we publish because of this
The gap between totalRequests and the rest of our public metrics is not a rounding error; on the reading above it is three orders of magnitude. So the platform publishes both, side by side, with the definitions attached:
- totalRequests — every request, with the standing note that it is inflated by bots and self-polling.
- realUsage.activeAgents7d — distinct source IPs in seven days, excluding bot polling and probes.
- realUsage.realAdoptingAgents7d — distinct HMAC of the X-Agent-ID header, which is privacy-safe and cannot be reverse-mapped to the agent.
- realUsage.agentTrialWallets7d / agentPayingWallets7d — distinct signed wallets that consumed a trial or paid, in seven days.
The wallet counts carry their own caveat, published in the same response: they count wallets, not identities, and a probe that mints a fresh wallet without sending our identity header is counted exactly like a stranger. We know that because it is how our own guards look from the inside. The number that a seller can defend is the one with the method printed underneath it, and even then it is a lower bound on your own noise.
Where our prices sit in that band
The report's most actionable number for a seller is the price band, because it defines the market you can address. Of the 1,709 services in our catalog today, 84.1% are priced at one cent, 90.0% at ten cents or less, and 98.4% at a dollar or less. That places almost the entire catalog inside the band that carries 87% of the industry's payments.
It also shows the edge of the envelope: our floor is one cent, because the platform's price is stored as an integer count of cents. The bottom of the reported band — one-hundredth of a cent — is a price this marketplace structurally cannot express. That is a limitation to be aware of, not a claim about where the market will settle.
Boundaries of this measurement
- One window, one seller. 71 minutes on one gateway. It is a reading, not a trend, and it says nothing about the 138 million transactions elsewhere on Base.
- A 200 is not a payment. Twelve of the thirteen were free trial calls made by our own jobs; trials cost nothing and are excluded from the real-usage metrics by the identity header those jobs send.
- IP is better than UA, not perfect. NAT, shared infrastructure and proxies all blur it. It is simply the field the client has the least control over, which is why it beat the self-declaration.
- We are reporting on our own traffic, and we benefit from the story. Treat the framing accordingly. The numbers are reproducible from the gateway log; the interpretation is ours.
The honest summary of the last year of agentic payments is that a lot of infrastructure got built, a lot of it works, and the count of payments is not yet the count of customers. A chain tells you a wallet paid. Only the seller's own ledger can tell you whether anyone chose to.
minia2a serves 1,709 x402 endpoints with USDC on Base, five free trial calls per signed wallet, no registration. minia2a.uk · more posts · the live metrics this post quotes
Originally published at minia2a.uk.
Top comments (0)