Agent Exchange x402 census and directory

Agent Exchange x402 census and directory · census of 2026-10-01 · findings.json · CSV · llms.txt

28,827 listed x402 resources on 2,738 hosts: 67.7% answer a valid 402 today

On 2026-10-01 this host fetched every resource listed in the two public x402 catalogs (Coinbase's CDP Bazaar and PayAI's) plus our own, with an unpaid HEAD then GET. A listing is verified live only when the unpaid GET answered HTTP 402 with a usable accepts list. 6,631 of 9,793 probed resources did (67.7%); 2,403 (24.5%) were gone, unreachable or erroring; the rest hide the 402 behind a POST body, authentication or bot protection, or serve without any challenge.

Listed resources

28,827

2,738 hosts, 2,050 payTo addresses

Answer a valid 402

67.7%

6,631 of 9,793 probed (unpaid GET)

Dead listings

24.5%

2,403 gone, unreachable or 5xx

Not verifiable by GET

7.8%

POST-only, auth-walled, open or redirecting

In both catalogs

1,999

10.1% of CDP rows, 18.2% of PayAI rows

On-chain coverage

58.9%

1,208 payTo addresses with settlement history; 1,938 hosts

Testnet listings

11.7%

3,369 priced on Base Sepolia or devnets

Templated URLs

1,125

paths with :param or {param}; 18.5% still answer 402 as listed

Since the census, the hourly re-probe has checked 1,050 resources in 7 runs and found 987 verdict changes (list, feed); last run 2026-10-01 06:13 UTC.

What a live 402 looks like today (6,631 resources)

PropertyCount among live resources
402 carried inheader 3,004 (45.3%), header+body 2,963 (44.7%), body 664 (10.0%)
x402Version in the 402v1 188 (2.8%), v2 6,443 (97.2%)
PAYMENT-REQUIRED header5,967 (90.0%)
extensions.bazaar in the 4026,489 (97.9%)
MPP offer in WWW-Authenticate1,477 (22.3%)
CORS open (*)2,303 (34.7%)
RateLimit headers154 (2.3%)
Live amount equals the catalog price6,009 match, 622 differ, 0 not comparable
Live payTo equals the catalog payTo5,438 match, 1,193 differ
Median latency of the unpaid GET1,876 ms

Catalog overlap and how much of each catalog is live

CatalogListedProbedValid 402Dead
CDP Bazaar19,7316,2033,974 of 6,203 (64.1%)1,511 (24.4%)
PayAI10,9974,9944,029 of 4,994 (80.7%)910 (18.2%)
Both1,9991,4041,372 of 1,404 (97.7%)18 (1.3%)
CDP only17,7324,7992,602 of 4,799 (54.2%)1,493 (31.1%)
PayAI only8,9983,5902,657 of 3,590 (74.0%)892 (24.9%)
Our hosts (store + censuses)1010n/an/a

"Listed" counts resources after de-duplication by URL and method; the two catalogs report 19,731 and 11,006 rows respectively. A resource is in "both" when the same URL and method appear in each.

By network

NetworkListedValid 402Dead
Base23,9204,364 of 7,469 (58.4%)2,387 (32.0%)
Base Sepolia (testnet)3,3491,640 of 1,641 (99.9%)0 (0.0%)
Solana1,483627 of 683 (91.8%)16 (2.3%)
Polygon32n/an/a
Solana devnet19n/an/a
X Layer8n/an/a
Other networks7n/an/a
Arbitrum6n/an/a
Polygon Amoy (testnet)2n/an/a
No network declared1n/an/a

Prices (USDC on Base, 23,920 resources)

Median $0.01, quartiles $0.003 to $0.02, 90th percentile $0.06; 11,580 resources under one cent, 437 at one dollar or more. Most common price points: $0 (13), $1.00 (154), $2.00 (32), $3.00 (20), $4.00 (3), $5.00 (38).

Price bandListedValid 402Dead
under 1 cent12,0832,096 of 4,344 (48.3%)2,119 (48.8%)
1 to 10 cents10,9662,575 of 3,418 (75.3%)225 (6.6%)
10 cents to $11,889298 of 364 (81.9%)56 (15.4%)
$1 to $1042421 of 25 (84.0%)3 (12.0%)
$10 and above751 of 1 (100.0%)0 (0.0%)
free (zero amount)13n/an/a
no USD price (non-USDC asset or testnet)3,3771,640 of 1,641 (99.9%)0 (0.0%)

Top sellers by settled USDC volume

From public USDC settlements on Base (EIP-3009 transfers) to each host's payTo addresses, as seen in the outbound history of the 1,570 wallets analysed on 2026-09-30; a floor, not the market. "Sampler share" is the share of payments from wallets that pay dozens of sellers in bursts (monitors and indexers), not customers.

#HostUSDCPayersPaymentsSampler shareLive / listedWhat it sells
1apidashboard.cryptohunt.ai (+1 host on the same payTo)$294.002138n/a0 / 16 unverified/deposit/10; /deposit/1
2testmint.myproceeds.xyz (+7 hosts on the same payTo)$230.041250n/a0 / 1 unverifiedPurchase large amounts of testnet USDC instantly.
3nfl-form-x402.owenlvll.workers.dev$103.00117100.0%0 / 7 unverifiedNFL Team Form 2016-2025
4onchainpulse.theaslangroupllc.com (+29 hosts on the same payTo)$90.471091,06699.2%0 / 9 unverifiedOnchainPulse
5api.aidress.ai$55.995332,48392.4%2 / 12 liveOtto AI; IXS
6shop.blocklabs.nl$50.99220n/a0 / 5 unverifiedFull-text product search over the BlockLabs dropshipping ca…; Place a dropshipping order (price quoted per order). Ships …
7mcp.runbot.io$49.32118n/a0 / 7 unverified/v1/strategy-ultra; /v1/strategy-deep
8api.useatelier.ai$39.685291100.0%0 / 3 unverifiedAI Image Generation; Got an idea? Describe it and Nano Banana brings it to life …
9jatevo.ai$31.791735n/a0 / 6 unverified/api/credits/topup-x402; /api/x402/llm/kimi
10api.bitrefill.com$29.8619177100.0%3 / 8 partialBitrefill
11api.lastlookdata.com$29.1063138100.0%0 / 2 unverifiedLastLook Data — current 30-year US Treasury yield (DGS30). …; LastLook Data — EFFR vs IORB spread. Shows where the effect…
12api.interzoid.com (+1 host on the same payTo)$26.5997351100.0%0 / 14 unverifiedGenerate an AI-powered similarity key for individual/person…; Detect the language of input text and translate it to any s…
13mart402.com$25.033114100.0%0 / 23 unverifiedMart402
14blockrun.ai$23.711531,14398.8%5 / 87 liveBlockRun.AI
15netintel.dev$23.56121848100.0%37 / 124 liveNetIntel

Top sellers by distinct paying wallets

#HostUSDCPayersPaymentsSampler shareLive / listedWhat it sells
1api.aidress.ai$55.995332,48392.4%2 / 12 liveOtto AI; IXS
2x402.ottoai.services$10.151701,14492.7%9 / 77 liveOtto AI; Historical crypto market event summaries (up to 30 days, op…
3store.agentexchange.work ours (+10 hosts on the same payTo)$14.4016982732.6%0 / 85 unverifiedWorkers AI chat (OpenAI-compatible); Token Price Snapshot
4blockrun.ai$23.711531,14398.8%5 / 87 liveBlockRun.AI
5api.paysponge.com$6.54149524100.0%0 / 21 unverifiedService: AgentMail API (https://api.paysponge.com/v0/inboxe…; Service: Reducto (https://api.paysponge.com/parse)
6agent402.tools$12.401221,26461.3%597 / 641 partialText-to-speech; Image generation
7x402.shizu.me$1.9212248799.6%0 / 17 unverifiedCurrent Weather; Agent Bounty Board
8netintel.dev$23.56121848100.0%37 / 124 liveNetIntel
92s.io$6.21118833100.0%0 / 93 unverified2s
10vibesprings.net$4.28118809100.0%3 / 24 liveVibe Springs
11x402.agentutility.ai$15.931141,72899.9%0 / 52 unverifiedAgentUtility.ai
12blockrun-web-vbsbhh7lea-uc.a.run.app (+2 hosts on the same payTo)$22.7911397598.7%0 / 1 unverifiedAI chat completions API - pay per request with USDC on Base
13api.kadec0.xyz$5.56110363100.0%2 / 42 liveWeb Search (SERP); Geocoding & Reverse Geocode
14scout.hugen.tokyo (+10 hosts on the same payTo)$20.91109506100.0%0 / 12 unverifiedSearch GitHub repositories — discover open source projects,…; Curated x402 ecosystem directory — 277 human-reviewed proje…
15onchainpulse.theaslangroupllc.com (+29 hosts on the same payTo)$90.471091,06699.2%0 / 9 unverifiedOnchainPulse

1,569 hosts have two or more distinct payers on record; 13 hosts with settlement history are now dead. All sellers: /sellers.

Dead listings

2,403 resources (24.5% of probed) on 14 hosts answered nothing usable: gone 1,237, unreachable 1,166. Whole hosts dead: agentshelf.syntexa.ch (1,182), x402.asrai.me (318), x402.aurelianflo.com (178), ostland.halowerk.com (125), suedland.halowerk.com (125), mitteleuropa.halowerk.com (125), atlantikland.halowerk.com (125), baltikum.halowerk.com (125), nordland.halowerk.com (125), glim.sh (24), sat.ipintel.ai (3), api.exa.ai (2). Full list: /dead.

Discovery files on seller hosts (492 hosts checked)

FileHostsShareNotes
/.well-known/x402 manifest25952.6%shapes: object-list 139, string-list 120; 110 carry prices
/openapi.json (valid 3.x with paths)29459.8%202 declare x-payment-info on operations
/llms.txt33067.1%
/.well-known/agent-card.json13026.4%
All four7114.4%
None of the four8517.3%

Method

CDP Bazaar (api.cdp.coinbase.com/platform/v2/x402/discovery/resources) and PayAI (facilitator.payai.network/discovery/resources) walked completely with limit=1000; plus store.agentexchange.work/.well-known/x402 and /directory and the eight census hosts' /.well-known/x402 and /listings.json. one record per URL and HTTP method; id = first 12 hex of sha1(url) (sha1('METHOD url') when one URL is listed under two methods). every resource once: HEAD then GET with no payment header, user agent agentexchange-bazaar/1.0 (+https://network.agentexchange.work), 8 s timeout, at most 2 requests per second per host, 14 in flight; after 3 consecutive connection errors or 8 consecutive timeouts the host's remaining resources are recorded as unreachable without further requests (counted as probed and dead). Valid 402: the unpaid GET answered HTTP 402 and the JSON body or the PAYMENT-REQUIRED header carried a non-empty accepts list. Dead: connection error or timeout, 404/410, or a 5xx to the unpaid GET. Not verified: everything else: 405/400 on POST-only routes (the 402 sits behind the declared method), 401/403/429, 200 without a challenge, redirects. Prices: USD = atomic USDC amount / 1e6 for USDC assets on Base, Base Sepolia and Solana; other assets have no USD price here. On-chain: payTo addresses joined to ../x402-research/sellers-2026-09-30.json (x402-shaped USDC settlements (transferWithAuthorization / receiveWithAuthorization / Multicall3 batches) in the outbound history (<=500 newest) of every wallet that paid our store since 2026-06-01); sellers never paid by those wallets stay unresolved. one snapshot per resource on the build date; the hourly cron re-probes a rotating slice of 150 and records verdict changes. A "templated" URL (with :param or {param}) is probed as listed, so its verdict says whether the template itself answers; 18.5% do.

Why this index exists

The catalogs list what sellers registered; nobody publishes whether those routes still answer, what their 402 looks like, whether the advertised price is the live price, or whether anyone ever paid. This host measures exactly that, neutrally, for every listed resource, and republishes it as pages, JSON, CSV, an Atom feed of verdict changes, sitemaps and an MCP server, so agents and crawlers can read it without an account. Nothing is sold on the measurement itself; the only paid things are position (featured placement), an on-demand re-probe and an on-demand seller report, all paid per call in USDC with x402 and labelled where they appear.

Machine access

Questions

What does "valid 402" mean here?

The resource's URL, fetched with an unpaid GET and no payment header, answered HTTP 402 and the JSON body or the PAYMENT-REQUIRED header carried a non-empty accepts list with a payment requirement in it.

Why are POST-only routes not counted as live?

The census probes with HEAD then GET only and never posts a body. A route that answers 405 or 400 to GET is marked method-gated: the 402 may well be there behind the declared method, but an unpaid GET could not see it.

Where do the on-chain numbers come from?

Public USDC transfers on Base (EIP-3009 transferWithAuthorization and receiveWithAuthorization, Multicall3 batches) to each resource's payTo address, joined from a 2026-09-30 analysis of the outbound history of the wallets that had paid our own store. Sellers those wallets never paid stay unresolved; the numbers are a floor.

Does paying for a placement change a verdict?

No. Featured placement buys position on the report and search pages for 30 days and is labelled; verdicts, prices and on-chain facts come from the probe and the chain only.

How often is this updated?

The full census is rebuilt from the catalogs on the build date shown; every hour a rotating slice of 150 resources is re-probed and any verdict change is listed on /changes and in the Atom feed.