Every market this platform reads, and every market it does not, with the reason for each. The rows that claim coverage carry the count that proves it; the rows that claim nothing carry the reason instead.
The counts were taken 2026-10-15 19:32 UTC. They are exact counts of what we have read, not estimates, and they are counted once a day rather than on each visit.
Most of what is missing here is missing from everybody. Card rails, bank transfers and centralised-exchange trading are not gaps in this dataset. They are markets no independent party can measure from public data. Stating that is more useful than estimating it, and an estimate would be a guess wearing a decimal point.
Across 3,764 open vaults, the widest reading is Who can move the money at 97% of capital and the thinnest is Time to exit at 1%. Counting vaults and weighing capital give very different answers here, which is why both are shown and neither is called "the coverage": more than half our vault COUNT is one venue’s small automated vaults.
381 of 3,764 open vaults carry all of: a realised return from its own share price; free liquidity against what it holds; a published risk band; who may move the money; how redemption works, read from the contract; capital re-read recently, with capital re-read within 48 hours. This is not the average of the bars below and cannot be worked out from them.
Biggest unread: ether.fi Liquid $381.84M across 4, Veda $108.93M across 4, Kamino $71.70M across 40.
Biggest unread: ether.fi Liquid $381.84M across 4, Veda $108.93M across 4, Concrete $72.66M across 6.
The two disagree by 65 points here, so the vault count is the misleading half: 1,037 vaults carry $10.52B.
Biggest unread: ether.fi Liquid $381.84M across 4, Hyperliquid $271.79M across 319, Veda $108.93M across 4.
The two disagree by 71 points here, so the vault count is the misleading half: 785 vaults carry $10.34B.
Biggest unread: Euler $450.87M across 183, Concrete $235.31M across 21, Hyperliquid $176.13M across 132.
The two disagree by 54 points here, so the vault count is the misleading half: 648 vaults carry $8.11B.
Biggest unread: Kamino $71.70M across 40, Morpho Vaults V2 $65.59M across 4, Makina $40.89M across 14.
The two disagree by 68 points here, so the vault count is the misleading half: 1,085 vaults carry $10.98B.
349 of those 353 vaults have no size we have read, so they cannot contribute to a capital share however many of them there are. That is the gap to close, and it is not the reading itself.
Biggest unread: ether.fi Liquid $381.84M across 4, Lagoon $116.19M across 59, Veda $108.93M across 4.
Biggest unread: Morpho Vaults V2 $1.66B across 65, Morpho $1.55B across 51, Euler $388.63M across 94.
The two disagree by 41 points here, so the vault count is the misleading half: 790 vaults carry $7.03B.
Biggest unread: Kamino $71.70M across 40, Ember Protocol $41.94M across 17, Euler $27.47M across 162.
The two disagree by 86 points here, so the vault count is the misleading half: 431 vaults carry $11.00B.
Biggest unread: Concrete $1.20B across 25, Morpho $979.21M across 60, Euler $522.11M across 215.
The two disagree by 53 points here, so the vault count is the misleading half: 411 vaults carry $7.18B.
The thick bar is the share of CAPITAL, the thin one the share of VAULTS. Neither is called the coverage: one answers how many of the things we track, the other how much of the money. A reading we do not have is a vault we could not measure, never a vault that measured badly. 1,145 open vaults have no size we could read, so they are in the vault denominator and cannot be in the capital one.
The same readings per protocol, because a reading missing on a venue holding four billion and one missing on a venue holding four million are the same percentage and entirely different work.
Every entry is a decision to stop, with what was actually run and what came back. A reader who thinks one of these is wrong has enough here to say so, which is the point of writing them down rather than leaving a gap on a chart.
Scope. Every Concrete vault, all chains, current state At stake: $1.09bn, the largest single hole in the exit and crowding registers.
What was tried. The API publishes total value and nothing about allocation. On chain every vault’s getStrategies() returns exactly one strategy address; those contracts are 1,115-byte proxies that answer asset() and revert on name(), totalAssets() and protocol(). The capital leaves for a strategy that says nothing about where it went.
Instead. The exit register already treats Concrete as asynchronous redemption, which is a true statement about withdrawal without claiming to know the allocation.
Worth another look when. Concrete documents the strategy interface, or somebody publishes an ABI for those proxies.
Sources inspected: Concrete API (v1/vault:tvl/all); the vault contracts themselves. Attempted 2026-09-17.
Scope. dYdX v4 mainnet, every dydx1 account we can see trading
What was tried. The venue publishes subaccounts, positions and transfers, and we read them. Of more than 283,000 identity records we hold, none names a dydx1 address, so there is nothing to join the two sides on.
Instead. Venue context is published unattributed, apart from anything called agent activity, which is the separation the audit asks for.
Worth another look when. An operator declares a Cosmos account, or a registry begins carrying them.
Sources inspected: dYdX indexer HTTP accounts API; our own ERC-8004 identity records. Attempted 2026-09-19.
Scope. Drift vaults on Solana, currently 132 of them
What was tried. Positions are read and clustered: we know which vaults hold the same instrument and how much. What no source we read gives us is the size of the contract they are crowding into, which is the figure that turns an exposure into a share.
Instead. Those vaults carry a cluster with a null coverage ratio, drawn as a dash rather than as a zero: a crowd we can see without being able to size it.
Worth another look when. Drift publishes open interest, or a venue-neutral source covers it.
Sources inspected: Drift’s public data; our own position reader. Attempted 2026-09-20.
Scope. Solana share tokens, every vault we hold there
What was tried. The method that would answer it is refused by the public endpoint we use. The reader exists and runs on EVM chains, where a share token’s transfers can be walked; on Solana it has no way to enumerate holders.
Instead. Shares outstanding are read from the mint, which gives movement without giving a holder count.
Worth another look when. An endpoint that serves the enumeration is budgeted, or a free one appears.
Sources inspected: the public Solana RPC. Attempted 2026-09-19.
Scope. Four of the five chains we read x402 on
What was tried. The reader began on 25 August 2026. Earlier months are reconstructable from an archive node and we have not run that backfill, so every trend before that date is our arrival rather than the market’s.
Instead. Monthly trends mark those months as not read rather than plotting them as zero.
Worth another look when. An archive endpoint is available for the backfill, or the trend becomes a paid feature.
Sources inspected: the chains’ own logs. Attempted 2026-09-19.
Scope. The ACP rail on Base, every job carrying a payment, all of 2026 At stake: $1,025,962 of provider proceeds, of which none can be net of refunds.
What was tried. Proceeds are now classified by what the chain says happened to the job: $981,306 for work marked delivered, $43,792 on jobs that ended otherwise, $864 where we never read a phase. Refunds do not appear in that table at all, because it records what a provider RECEIVED and a refund is a later transfer in the other direction. On x402, 19,788 payments do run back from a payee to somebody who paid them earlier within thirty days, which is the shape of a refund and is also the shape of two parties who simply trade both ways.
Instead. The three classes above are published as gross receipts and are labelled as such. A reversal count on x402 is held back rather than called a refund rate, because the same pattern is produced by ordinary two-way trade.
Worth another look when. The protocol emits a refund or dispute event, or a job carries a settlement record naming what was returned.
Sources inspected: AcpJob as read from the chain logs; the x402 transfer set on five chains. Attempted 2026-09-20.
Scope. Every payer on the ACP and x402 rails
What was tried. Nothing on either rail names a funder. A transfer into a payer before it spends is visible and is not evidence: an operator topping up its own agent, a customer paying an invoice and a grant all produce the same row. No identity record we hold declares a funding relationship.
Instead. Spending is published as spending. A subsidised market and a self-funding one are not distinguished, and the pages say so rather than implying the second.
Worth another look when. An operator declares a funding source, or a rail carries a memo field somebody actually uses.
Sources inspected: the payment tables themselves; ERC-8004 identity records. Attempted 2026-09-20.
This is delivery accounting, not a measure of the product. The expansion work proposed a working split across the three domains and nothing measured whether it held; this counts navigable surfaces against it. A page count cannot tell a domain answered by three deep pages from one padded with ten thin ones. What the site actually reaches is measured in capital and records, on data quality and coverage. Reference pages belong to all three domains and are counted in none.
A page count is not an hour count, and a domain inside its band can still be the thinner one. What this catches is drift: three domains claimed and one of them quietly stopping.
What agents control, and where we can and cannot see it.
Positions, fills, margin and equity come from the venue’s public Info API into our own store. The venue is not treated as an archive: the history below is ours, and would survive the endpoint being withdrawn.
Read from contracts and events on chain, with the protocol APIs used only for discovery. Share price, flows and underlying exposure are reconstructed rather than taken from a dashboard.
Concrete, Lista, Lagoon, Veda, ether.fi Liquid, Upshift, Makina, Krystal and twenty more, each read at vault level rather than as a protocol total. A protocol TVL figure cannot answer a question about one strategy’s risk.
Vault state and curator attribution from Kamino’s public data. Classified as software-managed allocation: automated rebalancing is not evidence of an AI deciding anything.
Depositor-level holdings where the venue exposes them, which is what concentration and redemption pressure are actually made of. A vault’s size says nothing about how fast it can be emptied.
Equity is computed for every vault we can decode and published for none of them. The decode cannot be checked against the chain, because the market’s token account holds nothing, and net deposits match no field in the account struct, so the figure is stored and waits for an external comparison against the venue’s own published return.
The accounts are on chain and readable. Which of them an agent platform operates is not, without an address list from that platform, so their balances are not counted as agent-controlled capital.
We measure the on-chain leg. Exchange exposure, off-chain derivatives, hedges and unregistered accounts stay invisible, so every risk figure here is a floor on the risk taken and never a complete picture.
We hold these vaults, their size and their venue, and not their deposits and withdrawals. Neither chain serves filtered logs: Solana has no indexed topics, so movements mean walking each share mint account by account, and Sui is a different reader again rather than a variation on one. The size is read hourly; the movements are not read at all, and a blank in a flow column here is ours.
Asked directly of stable’s own node: 1,081,344 blocks back from the head carry no deposit or withdrawal for the $66.4M vault there, and beyond that the node refuses, because it prunes and says so. The recent window is read and is genuinely quiet; the older history is not withheld by us and cannot be bought from the chain, which is a different sentence from "not read yet".
Positions, balances and execution live inside each exchange and are never published. No independent party measures this, and an estimate would be a guess wearing a decimal point.
What they buy and sell, and which rails settle out of sight.
Settlement indexed directly from Base and Solana rather than through a third-party tracker, so the normalised history is ours. What the log proves is that a transfer was authorised, not that software authorised it.
Requests, deliveries, providers and fees from marketplace contracts. Chain shares here describe the covered Olas sample in a stated window, and are not a statement about the agent economy at large.
The commercial lifecycle from public events: client, provider, evaluator, budget, settlement, rejection and expiry. Deliverable contents are private and are not inferred from a job succeeding.
Escrow creation, settlement and refund from transactions and datums. One Cardano transaction can carry several application actions, so chain transactions, payment actions and jobs are counted as three separate things.
Channel opening, use and closing. A channel is a relationship rather than a payment, and is never added to a payment count.
Coinbase’s discovery service lists what sellers say they offer. A listing is a claim, exactly as a registration is, and it is stored apart from payments so the two can be joined, which is how “listed” becomes “has ever earned anything”.
A specification is not a market. Nothing enters an economic total until a deployed contract, a network, an observation window and the meaning of its events have all been verified.
Transaction data is shared among Visa, agents, merchants, issuers and approved participants. There is no public market-wide feed to index.
Runs on closed payment infrastructure. Nothing about individual transactions is published.
The records belong to the relevant Stripe account, platform and merchant. Access requires their consent, one account at a time.
Banking and open-finance data requires customer consent and commercial access, per customer. No aggregate view of this exists for anyone outside the banks.
Any share requires a denominator, and the card, banking and off-chain rails that would form most of it are absent from public data. We publish what settles where we can see it, and never a percentage of a total nobody can measure.
What they claim about themselves, and what a claim is worth.
Registration events across every chain where the registry is deployed, with the deployment itself checked rather than assumed. A chain whose endpoint refuses a historical call is recorded as unreadable, not as empty.
Both registries beyond identity are read. The feedback is not a crowd. On the best-covered chain the entire rating population is a handful of accounts, so it is described rather than averaged into a score.
Registered identities with their declared wallets and endpoints, which is what makes later Solana activity attributable at all.
Signed, versioned and never deleted, including after a strategy fails or closes. A declaration that vanished on failure would rebuild the publication bias the register exists to remove.
Model identity is not recorded on chain and cannot be inferred from execution. Known only where an operator signed a declaration naming it, which is one of the reasons the declaration register exists.
Private off-chain data. We hold hashes where an operator supplied them, which can show the instructions did not change and proves nothing whatever about what they say.
An agent framework produces ordinary protocol transactions and adds no marker. A transaction cannot be traced to the software that composed it, so any count of “built with X” would be invented.
Coverage counted in dollars rather than in platforms, with the backlog ranked by the factors that decide what is worth building next.
Almost none of the unread capital is unread because nobody built it. Capital staked into a distribution contract has no strategy to measure, and a platform that gives every customer a smart account of their own has no shared contract with a share price. Publishing those as strategies would inflate the perimeter with things that are not strategies, which is the exact failure that ranking by platform count produces. 15 platforms have never had their size established, and unknown is not zero.
| Platform | Capital | Score | What stands in the way |
|---|---|---|---|
Theoriq agent-native | unknown | 9/15 | One vault on Ethereum, not Base as previously recorded. It implements neither ERC-4626 nor ERC-20, so its balance cannot be read the way every other vault here is; the address is registered and the reading is not done. |
Yield AI agent-native | $578,457 | 8/15 | We have not established whether a readable vault exists here. |
INFINIT agent-native | $534,745 | 8/15 | We have not established whether a readable vault exists here. |
Infinite Trading Protocol agent-native | $241,619 | 8/15 | We have not established whether a readable vault exists here. |
Gud.Tech agent-native | $38,674 | 8/15 | We have not established whether a readable vault exists here. |
Mind Network agent-native | $27,206 | 8/15 | We have not established whether a readable vault exists here. |
Calculus agent-native | $3,272 | 8/15 | We have not established whether a readable vault exists here. |
TermiX agent-native | $3,106 | 8/15 | We have not established whether a readable vault exists here. |
Glorb agent-native | $760 | 8/15 | We have not established whether a readable vault exists here. |
Vaultfire agent-native | $40 | 8/15 | We have not established whether a readable vault exists here. |
ZyFAI agent-native | $10m | 7/15 | Every user gets their own smart account and the agent rebalances inside it, so there is no shared vault with a share price to read. Their own API publishes capital and flows for the whole platform, which is what we carry; a list of fifteen thousand user wallets would not be a list of strategies. |
Arbius agent-native | $0 | 7/15 | We have not established whether a readable vault exists here. |
Five factors, not seven. Measurable capital, whether an independent reading is possible, execution transparency, relevance to autonomous decision-making and engineering cost are all computable from what we already hold. Historical depth and the uniqueness of the analysis we could produce are the other two the method calls for, and neither is knowable until a platform is integrated. Folding a guess at them into the total would make it look exactly as objective as the five real ones, so they are named and left open instead.
The difference between the last two and the rest is not difficulty. It is that the records exist only inside a closed system, and reach an outsider, if ever, through a commercial agreement rather than through measurement. Treating that as a gap in our coverage would be the same error as reading an unreachable chain as an empty one, which is a mistake this codebase has made and corrected four separate times.
Comparing our figures against what other sources publish is a different question, and it has its own page: us vs other sources.