We launched a small x402 seller on Base this week and asked the obvious question: who is going to pay us? Listings don't answer that, so we read the chain. Every x402 payment is a USDC Transfer to the seller's payTo, and anyone can index those with a free Base RPC node.
What the chain says
We took 81 sellers listed in two categories (x402 tooling and token/contract facts) and pulled every USDC payment they received.
52 of 81 sellers earned $0 in the last 24 hours. Being listed is not demand.
The best earned $6–15 a day, from 5–8 distinct payers.
One seller's revenue was 95% from a single wallet, so raw totals are misleading. Distinct payers are what count.
Then we looked at the payers instead of the sellers.
Five wallets that behave like a single operator paid 293 different sellers in 48 hours, about 1,250 payments a day, funded with roughly $80 over 3 days.
They work in sweeps: bursts of 260–560 payments a few times a day, plus small runs every couple of hours. They revisit each seller roughly every 7.5 hours and add new sellers in most sweeps.
93% of their payments are $0.005 or less (38% are exactly $0.001). Calls at $0.02 or more are 2%.
They pay about 40% of the CDP Bazaar search results we sampled, across every topic (crypto prices, weather, DNS, ENS, UUIDs…), and they pay POST-with-body listings as readily as GET ones.
If you're pricing an endpoint for agents today, that last table is the market.
Why your endpoint has no buyers (what we hit getting listed)
Catalogs index a route only after a payment settles through their facilitator. No sale, no listing. Each route needs its own first sale, and at least one every 30 days to stay listed (CDP).
Testnet is never indexed, and tunnel URLs (trycloudflare, ngrok) are rejected as ephemeral.
Descriptions over 500 characters are rejected by the CDP facilitator, and metadata that reads like instructions to agents ("you must…") gets screened out.
Return 402 before validating input. A 400 on an empty probe is a failed health check.
Free hosts that sleep fail health probes. A 60-second cold start loses the call and down-ranks you.
Ranking follows real usage. New listings sit at the bottom of search, even for near-exact phrases, until outside buyers arrive. Niche queries with few competitors are where a new listing can surface.
Be in more than one catalog. CDP Bazaar (agentic.market), x402scan, 402index and Poncho each index separately. 402index takes a free API registration and verifies your domain with a .well-known file.
Free check for any endpoint, no key needed:
curl -X POST https://api.cdp.coinbase.com/platform/v2/x402/validate \
-H 'content-type: application/json' -d '{"resource":"https://your.api/route","method":"POST"}'
What we built from this
We packaged the checks above as pay-per-call x402 endpoints on Base:
x402-listing-doctor ($0.005): runs the preflight, the CDP validator and catalog presence checks, and returns fixes.
x402-seller-revenue ($0.003): USDC any payTo received in 24 hours, distinct payers, and the top payer's share.
x402-preflight ($0.005) / x402-due-diligence ($0.01): lint a seller's 402 before you sign, plus on-chain demand.
Catalog: https://minty-sprout.onrender.com/llms.txt
How do you find buyers for your x402 endpoints? Comment with what's worked for you.
Top comments (0)