Coinbase’s
x402
Bazaar is the closest thing the emerging paid-agent internet has to a
public catalog: any HTTP endpoint gated behind a 402 that routes through
the CDP facilitator ends up auto-indexed at
api.cdp.coinbase.com/platform/v2/x402/discovery/resources.
Every endpoint in that catalog carries a
quality.l30DaysUniquePayers field —
the number of distinct wallets that have paid it in the last 30 days.
That field is CDP’s own count, not something we compute; using it
as the trust filter costs nothing and cannot be self-reported around.
This report is the whole-catalog answer to a simple question: how many of those endpoints have anyone actually paying them?
The cohort ladder
Payer thresholds, applied verbatim from the snapshot. Denominator is the full indexed endpoint total — not a subset — so the percentages read as “share of the catalog,” not “share of endpoints with any usage data.”
| Cohort (last 30 days) | Endpoints | Share of catalog |
|---|---|---|
| ≥1 unique payer | 14,465 | 99.5% |
| ≥5 unique payers | 642 | 4.42% |
| ≥10 unique payers | 236 | 1.62% |
| ≥100 unique payers | 31 | 0.213% |
As of 2026-08-29T09:01:06Z. Snapshot source: local scan of
https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources.
The near-universal ≥1 line (99.5% of the catalog) is why a bare “has anyone paid this endpoint?” filter is meaningless as a trust signal. Real usage breadth lives at the ≥5-payer line and above, and there the cohort collapses to 642 endpoints (4.42%). At ≥10 unique payers the cohort narrows further to 236 endpoints (1.62%).
Full unique-payer distribution
Exclusive buckets — counts sum to the full indexed total. Nothing
is silently dropped: endpoints with a missing / non-numeric payer field
land in the no CDP quality data
bucket. The long tail on the right is the trust cohort; the mass on
the left is the listing surface.
| Payer bucket (30d) | Endpoints | Share |
|---|---|---|
| no CDP quality data | 36 | 0.248% |
| 0 payers (30d) | 35 | 0.241% |
| 1 payer (30d) | 10,632 | 73.1% |
| 2 payers (30d) | 2,169 | 14.9% |
| 3–4 payers (30d) | 1,022 | 7.03% |
| 5–9 payers (30d) | 406 | 2.79% |
| 10–49 payers (30d) | 169 | 1.16% |
| 50–99 payers (30d) | 36 | 0.248% |
| 100+ payers (30d) | 31 | 0.213% |
Methodology
Source:
https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources
— the public Coinbase CDP x402 Bazaar discovery API. Unauthenticated,
paginated, JSON. Every entry carries an
accepts[] array (price + network +
payTo) and a quality sub-object with
l30DaysUniquePayers and
l30DaysTotalCalls.
Snapshot date: 2026-08-29T09:01:06Z.
N: 14,536 endpoints indexed (CDP’s own reported catalog total on the same page fetch: 14,536). The catalog is fluid: successive daily snapshots move by hundreds of endpoints as new registrations land and stale entries drop. Churn is part of the finding, not an embarrassment — the shape (a large listing surface with a small paid-usage cohort) is stable across snapshots. The live companion at /x402-bazaar-market-map refreshes daily so current-day numbers are always one click away, and the JSON export exposes the same aggregate the page above renders from.
What counts as a “unique payer”. A
distinct paying wallet address as counted by CDP’s facilitator
in the trailing 30 days. Not calls; not sessions. We use CDP’s
number verbatim — nothing self-reported, nothing scored by us.
Endpoints without a
quality.l30DaysUniquePayers field are
excluded from every threshold (they have not been shown to cross one)
but appear in the histogram’s no CDP quality data
bucket so the denominator stays honest.
Honest correction. Our earlier internal reporting bucketed “endpoints with any usage signal” against a subset of the catalog rather than the whole indexed total, which made the trust-filter minority look smaller than it is. The market map and this report both now use the same denominator (full indexed endpoint total) and the same JSON export exposes the identical numbers so any reader can reproduce this table end-to-end. Owning that correction is part of what makes this a reference surface rather than a marketing surface.
What the shape says
1. Listing is not demand. The x402 Bazaar catalog is a payment-discovery surface: register any 402-gated endpoint and it appears. Some fraction of the total gets any paid traffic at all; only 4.42% of the whole indexed set crosses the ≥5-payer 30-day bar. The distribution is classical long-tail with a near-empty head.
2. The trust-filter positioning is the load-bearing one. The strong-filter cohort is small enough to fit on one page. That is the entire point of our positioning: we index and score the tiny top-of-catalog cohort, not the whole listing surface. Being the largest index is a vanity metric when the underlying paid-usage set is this thin.
3. There is no incumbent to unseat yet. The whole agent-intelligence / ERC-8004-reputation corner of the catalog (mapped in Report 06 for the 2026-08-15 snapshot window) has no vendor across ten paid calls and five unique payers in a rolling 30-day window. First-mover positioning is still available.
How to cite this
Headline finding. As of 2026-08-29T09:01:06Z, 642 of 14,536 (4.42%) x402 paid endpoints in the public Coinbase CDP Bazaar catalog reported ≥5 unique payers in the last 30 days.
Citation.
On-Chain Agent Intel. "x402 Bazaar Demand Concentration — Report 07 ""(2026-08-15)." Snapshot 2026-08-29T09:01:06Z. https://onchainagentintel.io/blog/x402-demand-concentration-2026-08
License. Published under CC BY 4.0 — free to reuse, including in commercial work, provided you attribute “On-Chain Agent Intel” and link back to https://onchainagentintel.io/blog/x402-demand-concentration-2026-08.
Machine-readable primary dataset. Live market map · JSON export · CSV export — same source, same normalization, refreshed daily. Cite the live URL for current numbers; cite this URL for the 2026-08-15 snapshot specifically.