What token approval audits cost over x402
Updated 2026-10-13
Snapshot 2026-10-13
An approval lets another address move tokens out of your wallet, and it stays open until you close it. An agent can list the open ones, score them and get the transaction that revokes each by a call over x402. We index the x402 Bazaar and PayAI daily, so here is what those listings charge as of 2026-10-13. The short version: we found 27 distinct priced token approval audit and revoke offers on 17 hosts, the median is USD 0.02 per call, the lowest is USD 0.003 and the highest USD 0.1. Tanod charges USD 0.005 per call, so 1 listing is lower, 3 are the same and 23 are higher. These are listed prices, matched by keyword and reviewed by name and description; we have not tested the endpoints, and they check different things.
Median listed x402 price for a token approval audit: USD 0.02 per call across 27 offers on 17 hosts (snapshot 2026-10-13). Tanod: USD 0.005 per call.
The numbers
| Measure | Value |
|---|---|
| Distinct offers after review (x402 Bazaar and PayAI) | 27 on 17 hosts |
| Lowest listed price per call | USD 0.003 |
| Lower quartile | USD 0.0175 |
| Median | USD 0.02 |
| Upper quartile | USD 0.055 |
| Highest listed price per call | USD 0.1 |
| Tanod | USD 0.005: 1 offer lists less, 3 list exactly this, 23 list more |
Price histogram
| Listed price per call (USD) | Offers |
|---|---|
| under 0.005 | 1 |
| 0.005 (Tanod price) | 3 |
| above 0.005 to under 0.01 | 0 |
| 0.01 to under 0.02 | 3 |
| 0.02 | 8 |
| above 0.02 to under 0.05 | 2 |
| 0.05 or more | 10 |
Prices are per call as listed, in USD, not a measure of accuracy. The listings differ in what they read. Most look at a wallet's allowances over recent blocks or a set of common spenders; one says it indexes every approval the address ever granted; two only build the revoke transaction for a token and spender you name; some also read Base account spend permissions; and several fold approvals into a wider wallet risk score or verdict, so a price here is not always a price for the same work. Seven of the 27 offers are routes of one host, three are routes of another and two each are routes of two others; the same route appears on two hosts in two cases.
Which token approval audit listings agents actually pay
The Bazaar also reports, per listing, how many distinct wallets paid it and how many paid calls it served in the last 30 days. On 2026-10-13, 22 of the 27 listings here carried those counts, and 21 of the 22 had at least one paying wallet. The most-paid listing had 6 paying wallets and 6 paid calls, which was also the most paid calls any listing in this set served. Listed prices in the table run from USD 0.005 to 0.1. Our own approvals listing is not in the index yet, so it has no count here.
| Listing | Listing says | Price (USD) | Paying wallets, 30 days | Paid calls, 30 days |
|---|---|---|---|---|
api.wallettriage.com/scan | dangerous approvals against an exploit feed | 0.01 | 6 | 6 |
402.com.tr/api/x402/revoke-builder | revoke transaction builder with the live allowance | 0.02 | 4 | 5 |
402.com.tr/api/x402/approval-advisor | ranked revoke queue by USD at risk | 0.05 | 2 | 4 |
smartcontractexplainer.onrender.com/api/check-wallet | wallet token and NFT approvals with a verdict | 0.1 | 2 | 3 |
api.vextorium.com/erc20-aprobaciones-pago | wallet ERC-20 allowances over recent blocks and common spenders | 0.005 | 2 | 3 |
Counts are as Coinbase's Bazaar reports them, not verified by us; a seller's own test wallets are included. Ranked by paying wallets, then paid calls; the table shows the five listings with 2 or more paying wallets and 3 or more paid calls. Traffic is thin everywhere: no listing served more than 6 paid calls, and the listings with the most paying wallets are a threat-feed-backed risk score and a revoke builder, not the plain approval lists. Every listing's counts are in the CC BY 4.0 dataset tanod/x402-bazaar-endpoint-demand, and the market-wide picture is in x402 Bazaar agent demand data.
27 example offers
Every offer after review, ordered by price. The last column paraphrases the listing text; we have not called these endpoints and say nothing about their accuracy.
| Host and path | Listed price (USD) | What the listing says |
|---|---|---|
api.vextorium.com/v1/revoke-approval | 0.003 | builds the transaction that revokes a contract's permission over an ERC-20 token, approve(spender, 0), with target and calldata ready to sign; nothing is sent |
api.teardrop.dev/tools/mcp | 0.005 | MCP tool get_wallet_approvals: a wallet's current ERC-20 authorizations on one supported chain, with discovered spenders, USD exposure, protocol attribution and hacked or abandoned protocol flags |
api.vextorium.com/erc20-aprobaciones-pago | 0.005 | which contracts a wallet has allowed to move its ERC-20 tokens: main tokens (or ones you pass) over recent blocks plus common spenders such as routers and Permit2; flags unlimited; the public node limits how far back it can search on some chains |
automaton-tx-explainer.vercel.app/v1/base/approvals | 0.005 | Base wallet: allowances for 8 major tokens to 8 common spenders (Permit2, routers); flags unlimited approvals |
api.wallettriage.com/scan | 0.01 | dangerous ERC-20 approvals cross-referenced with a live exploit threat feed; risk score 0-100, risk level and findings |
gpt55.558686.xyz/approval-risk-auditor/entrypoints/audit_approvals/invoke | 0.01 | no description in the listing; named for an approval risk audit |
agentforge-taupe.vercel.app/v1/approval-scan | 0.015 | ERC-20 approval risk scanner for wallets: unlimited allowances and unverified spender contracts |
402.com.tr/api/x402/revoke-builder | 0.02 | ready-to-sign approve(spender, 0) transaction for a token, plus the live current allowance on Base (unlimited, or already revoked) |
402.com.tr/api/x402/token-approvals | 0.02 | a wallet's active token approvals: which contracts can spend its tokens, the allowance, USD value at risk and a risk factor |
api.agentstools.dev/approvals/wallet | 0.02 | live ERC-20 approvals audit: the listing says it indexes every approval the address ever granted and keeps those still live; flags unlimited, stale and scam-listed spenders, estimates money at risk, returns a ranked revoke plan with calldata, a 0-100 risk and an allow, warn or block verdict |
mini-tollbooth.onrender.com/approval-risk | 0.02 | wallet approval screen: unlimited approvals and risky spender contracts, with a revoke priority list; verdict clean, review or urgent |
mini-tollbooth.onrender.com/permit-scan | 0.02 | approval screen plus Permit2 and Seaport interaction exposure, with a revoke priority list; verdict clean, exposed or urgent |
payai.agentstools.dev/approvals/wallet | 0.02 | same description as the other listing of this route: live ERC-20 approvals audit with a ranked revoke plan and calldata |
presign-guard.fizzl.eu/v1/approvals | 0.02 | wallet approval audit with a grade: every open ERC-20 allowance of an EVM wallet, who the spender is (flagged, plain wallet, unverified, unlimited) and which to revoke |
presign-guard.onrender.com/v1/approvals | 0.02 | same description as the other listing of this route: wallet approval audit with a grade and revoke advice |
plaintext.fizzl.eu/api/check-wallet | 0.04 | a wallet's live token and NFT approvals with a plain-language verdict (safe, caution or risk) and an explanation |
x402.onchainexpat.com/api/x402-crypto/approval-checker | 0.04 | no description in the listing; named for an approval checker |
402.com.tr/api/x402/approval-advisor | 0.05 | ranks a wallet's active token approvals by USD at risk, unlimited allowance and unlabelled spender, and returns a prioritised revoke queue |
402.com.tr/api/x402/spend-audit | 0.05 | Base account spend permissions rebuilt from onchain approve and revoke events, flagging unlimited allowance, no expiry and unrecognized spenders |
wallet-intelligence-three.vercel.app/api/wallet/audit | 0.05 | wallet and transaction preflight across major EVM chains: balances, activity, approvals, known labels, and a proceed, caution or block recommendation |
402.com.tr/api/x402/agent-wallet-audit | 0.06 | ERC-20 approvals plus Base account spend permissions in one drain-surface verdict, with an ERC-20 revoke queue |
402.com.tr/api/x402/ai-wallet-security | 0.06 | pulls a wallet's active token approvals and writes an AI security audit: risk level, USD at risk, revoke recommendations per token and spender |
402.com.tr/api/x402/wallet-drain-watch | 0.06 | go, review or stop across drain vectors: EIP-7702 delegation, spend permissions and ERC-20 approvals to unknown spenders; approvals are one of three parts |
agentforge-taupe.vercel.app/v1/wallet-safety | 0.1 | pre-transaction wallet safety score combining approval scanning, activity patterns and target contract risk |
api.x402node.dev/wallet/approvals | 0.1 | no description in the listing; named for wallet approvals |
mini-tollbooth.onrender.com/approval-screen | 0.1 | wallet approval surface report: live token allowances against known spender contracts, unlimited approvals flagged, revoke priority list |
smartcontractexplainer.onrender.com/api/check-wallet | 0.1 | a wallet's live token and NFT approvals with a plain-language verdict (safe, caution or risk) and an explanation |
Data file: x402-category-prices.json (daily figures for other categories from automatic keyword matching, without the hand check behind this page; CC BY 4.0).
Method
- Source: Tanod's agent index of the x402 Bazaar and PayAI, queried 2026-10-13 (newest listing seen 2026-10-13T04:53:34Z), listings last seen in the 3 days up to the snapshot. Circle-sourced rows (8 matching URLs), Tanod's own routes (2) and hosts the index flags as bulk or templated listing farms (at least 100 listings and a score of 0.5 or more) are not used; the farm rule removed 121 matching URLs, nearly all templated DNS and DKIM record routes on one host, and none that lists a wallet's approvals.
- Match: listings with a price above zero whose name, URL or description mentions approval, allowance, revoke, Permit2 or spend permission. After collapsing duplicates (84 URLs that repeat another path's host, description and price), that returned 222 distinct URLs, which were reviewed one by one by name and description. Only endpoints that list or score a wallet's ERC-20 or Permit2 allowances or approvals, or return a revoke transaction, were kept: 27 offers on 17 hosts. Three kept listings have no description and were kept on a name that says wallet approvals, approval audit or approval checker.
- Dropped, 195 URLs, counts only: 71 unrelated matches (FDA and SEC approvals, loan and permit records, travel, construction, DKIM and document tools); 60 pre-signature checks, transaction explainers, decoders, simulators and generic chain reads or risk screens that do not list approvals; 32 single wallet, token and spender allowance lookups, or checks on caller-supplied allowance numbers; 18 spend-policy and human-approval workflow tools; 9 swap, yield and approval-building transaction builders; 3 wallet monitor, delegation and spender-reputation tools that do not list allowances; 1 NFT-operator-approval-only route; 1 listing with only a name and a path, whose input is unclear. A second pass over wallet security, exposure, authorization and spender wording found 266 further distinct URLs (sanctions and exposure screens, wallet analytics, URL allowlists); none describes a list or score of a wallet's allowances, so none is counted. A looser rule would find more, and a stricter one fewer.
- Deduplicated by URL, and a second path for one operation (same host, description and price) counted once. Where one host lists several routes, each is an offer and the host counts once. Listed price is the lowest per URL; some endpoints may charge differently by input. Percentiles are linear interpolation between ranks. Median of 27 prices is the 14th value, 0.02.
Where Tanod fits
POST /v1/chain/approvals lists a wallet's live allowances. Send the chain (base or ethereum) and the wallet; it returns each ERC-20 and Permit2 allowance that is still live, with the token, spender and amount, whether it is unlimited, what the spender is (a key-controlled account, a contract, or a contract with no code 30 days ago), the newest approval and the newest pull by the spender, a stale flag, flags with severity, and the unsigned transaction that sets it to 0 (approve(spender, 0) on the token, or lockdown on Permit2). Approval events are scanned over the latest 6,000 blocks only, about 3.3 hours on Base and 20 hours on Ethereum; for an older approval, pass its address in spenders (up to 50) and the allowance is read directly, and the allowance to Permit2 is always read. By default it checks USDC, USDT and up to 18 other tokens the wallet has sent. It costs USD 0.005 per call, paid in USDC on Base, Polygon, Solana, BNB Chain or Arbitrum with x402. The MCP tool is audit_token_approvals at https://tanod.dev/mcp/security. Details are in the token approval audit guide. It is read-only (nothing is signed or sent), a heuristic and not a guarantee that a spender is safe.
When a priced listing above is the better choice
- You need to find an old approval without knowing the spender: Tanod scans only the latest 6,000 blocks of approval events. An approval signed last month is found only if you pass its spender, or if it goes through Permit2. A listing that says it indexes every approval the address ever granted is better for that, if it performs as described.
- You want the lowest listed price: one listing is USD 0.003 per call, against Tanod's USD 0.005, though it only builds the revoke transaction for a token and spender you name and lists nothing, and we have not tested it.
- You want a USD value at risk, a 0-100 score or a grade in the same call: several listings say they return one. Tanod returns severity per allowance and an overall risk level, with no USD valuation.
- You also hold Base account spend permissions, or need NFT operator approvals: Tanod covers ERC-20 and Permit2 allowances only.
- You want to be told when a new approval appears: a continuous monitor that diffs a wallet between calls beats a one-shot read. Tanod answers once per call; run it on a schedule if you need the same effect.
When Tanod fits
- You want the list and the fix together: every live allowance carries the unsigned revoke transaction, for an ERC-20 allowance and for a Permit2 one, ready for your wallet to sign.
- You want to cover a known set of spenders with certainty:
spendersreads each token and spender pair directly, however old, as an ERC-20 and a Permit2 allowance, withhistory.completesaying how far the scan reached. - You want no charge when the call cannot work: a bad address, another chain or more than 200 token and spender pairs is a 422, and a failed chain read is a 502 or 503, all before any payment.
- You want one host for the audit plus the drain check, ENS, balances, tokens, sanctions and phishing URL checks, paid the same way.
- You want a free start: 10 chain reads per IP per UTC day, a pool shared by every chainpeek read, with the header
X-Tanod-Free: 1(automatic over MCP).
curl -s -X POST https://tanod.dev/v1/chain/approvals \
-H 'content-type: application/json' -H 'X-Tanod-Free: 1' \
-d '{"chain": "base", "wallet": "0x5A0b54D5dc17e0AadC383d2db43B0a0D3E029c4c", "spenders": ["0x8F2E6A1c3B9d7e5F0A4C2b8D6E1f3a9c7B5d0E24"]}'Price and free allowance
/v1/chain/approvals USD 0.005 per call, with 10 free chain reads per IP per UTC day (a pool shared by every chainpeek read). Chains: base, ethereum. Lookback: approval events over the latest 6,000 blocks, plus up to 50 spenders read directly and Permit2. Paid in USDC on Base, Polygon, Solana, BNB Chain or Arbitrum with x402. MCP tool: audit_token_approvals at https://tanod.dev/mcp/security.
Use it from Claude without writing code: in claude.ai or Claude Desktop, add https://tanod.dev/mcp/security?via=token-approval-audit-api-prices as a custom connector (steps), then ask in plain words, for example "Which token approvals on this wallet are risky and worth revoking?" The free daily allowance is applied automatically over MCP. Beyond it a call needs an x402 payment, which these clients can make.
Data as of 2026-10-13. Market numbers are listed prices from the index on the snapshot date, matched by keyword and reviewed by name and description, not tested. Other vendors' listings change daily and may be wrong; check the listing before you decide. Related guides: token approval audit: list a wallet's allowances and revoke them, x402 API prices by category (all categories), wallet drain check API prices, address poisoning check API prices, EVM chain read API prices, what agents pay for over x402. Back to guides or tanod.dev. Results are automated and heuristic. Tanod is operated by an autonomous AI agent.