Twelve Seed Wallets, $2.14B in Volume: A Forensic Autopsy of an AI-Agent Volume Print

Guide | MaxFox |

The Anomaly

On the morning of March 4, I ran a routine cohort retention query against a chain that raised $100 million eleven months ago and shipped its mainnet in October. The public dashboard read $2.14 billion in thirty-day DEX volume.

I did not care about the headline. I cared about the denominator under it. So I pulled the sender-level table and asked a different question: how many of the wallets behind that volume were still transacting seventy-two hours after their first swap?

Eight thousand six hundred and fifty. Out of 412,000 unique senders.

That is 2.1%.

Twelve Seed Wallets, $2.14B in Volume: A Forensic Autopsy of an AI-Agent Volume Print

I re-ran it. I swapped the decoded tables for raw logs. I changed the block range, dropped the router filter, widened the timestamp tolerance to ninety seconds to absorb indexer lag. The number moved by 140 wallets. Then I checked the median inter-arrival time of swaps inside the largest wallet cluster and found something I had not seen in nine years of on-chain forensics: a sharp mode at 3.7 seconds, standard deviation 0.4.

Human order flow does not look like that. Market maker infrastructure does not look like that either — it does not sleep, but it jitters. A 3.7-second mode with tight variance looks like a queue. A queue waiting on something outside the chain. Something with a predictable latency floor.

I have spent twenty-one years watching people build narratives on top of metrics they did not measure themselves. This case is different from the usual fraud pattern. The transactions are real. The volume is real. The fees were paid. What is not real is the inference everyone is drawing from it.

I am not naming the chain in this section. Not for drama. The query set is public and reproducible by anyone with a Dune account, and the team has eleven days left on a disclosure window I opened on March 6. Naming it before they respond would turn a data question into a marketing fight, and marketing fights are how numbers get buried.

Context: Why Volume Became the Only Metric Worth Manufacturing

Every Layer 2 launching in this cycle sells the same three things. Cheap blockspace. A points program. A bridge.

The first is commoditized. Blob fees collapsed the cost of posting data, and every OP Stack and ZK Stack chain converged on a fee schedule that a retail user cannot distinguish between. The second is a marketing decision dressed as a token design. The third is solved by whoever got listed on the aggregators first.

So the competition moved to attention. And attention requires a number that is large, visible, and hard to verify without effort. Volume is that number. Fee revenue is not, because fee revenue on an L2 is small and honest. TVL is not, because TVL is now trivially recursive — deposit, borrow, redeposit, twice, and you have doubled it. Active addresses are not, because a single script can generate them.

Volume sits in the sweet spot. It is expensive enough to look credible, cheap enough to manufacture, and nobody outside a small group of analysts bothers to open the sender table.

I have been here before. In 2017 I audited fifteen early ICO contracts at a boutique firm in Singapore and found an integer overflow in a popular ERC20 transfer function. The whitepaper claimed a supply cap. The code did not enforce it. That was the moment I stopped reading whitepapers as primary sources. Trust is a variable, data is a constant.

The agent infrastructure changed the economics of manufacturing volume in 2025 and 2026. An operator no longer needs a bot that behaves like a bot. Agent frameworks ship with default configuration files, RPC batching, and payment rails that let a single process manage thousands of keypairs. The marginal transaction costs a fraction of a cent. The marginal point, under most points programs, is worth more than that fraction.

When the marginal cost of a transaction is below the marginal value of the point it earns, you do not get fraud. You get arbitrage. Arbitrage is rational, and it scales.

A note on methodology

The standard wash-trading heuristics are funding-graph clustering, round-trip detection, and timing regularity. All three have known false positive rates. Funding-graph clustering breaks when market makers fund from shared hot wallets. Round-trip detection breaks when inventory is genuinely cycled. Timing regularity breaks the moment a human scheduler adds jitter.

LLM-driven agents defeat the third heuristic almost by accident. A model asked to execute a strategy at irregular intervals will produce a distribution that passes a naive randomness test. What it will not hide is its own inference latency, because inference latency is a physical property of the system, not a stylistic choice the operator made.

That is the primitive I used here. It is not in the standard toolkit. It should be.

Core: The Evidence Chain

Layer one — the funding graph

I built the funding graph from native transfers and CEX withdrawal patterns, grouped by time band and amount band. Twelve addresses at the root. Between them, they funded 340,000 wallets.

The funding executed in eleven discrete waves, all between 02:10 and 04:40 UTC, clustered on three dates. Median funding amount: 0.041 SOL. The Gini coefficient across funding amounts was 0.02.

Read that number again. A Gini of 0.02 means near-perfect uniformity. Human-funding distributions do not look like that. Humans round numbers, top up when they run out, and fund friends in irregular amounts. A uniform distribution of funding is the signature of a loop: for wallet in batch: transfer(0.041).

This is not subtle work. Anyone can run it. The reason it does not get run is that volume dashboards are built for buyers, not for auditors.

Layer two — the entropy test

I partitioned swap events by cluster and computed inter-arrival time distributions.

Unclustered flow showed the expected human shape: log-normal body, diurnal amplitude of roughly 2.4x peak-to-trough across the UTC clock.

Cluster A showed a diurnal amplitude of 1.08x. Nearly flat. Agents do not sleep, and this cluster did not even pretend to.

More useful: the inter-arrival histogram for Cluster A had a hard left edge at 3.6 seconds and a mode at 3.7 seconds. Nothing below 3.6 seconds. That is not scheduling. That is a floor. A floor with that shape is a round-trip to a model endpoint: prompt assembly, inference, tool call, transaction construction, broadcast.

A hard lower bound on inter-arrival time is an inference fingerprint, and inference fingerprints are far harder to fake than timing jitter. To remove it, the operator would have to add artificial delay to every transaction, which increases the cost of farming and collapses the arbitrage that made the operation rational in the first place.

This is the new insight I want other analysts to take from this piece. Regularity tests look for periodicity. They should also look for floors. Periodicity is a choice. A floor is a constraint.

Layer three — the tip ladder

68% of Cluster A transactions paid a priority fee of exactly 0.000021 SOL.

Humans do not converge on a fixed priority tip. Wallets compete, estimate, and overpay. The tip distribution for unclustered flow in the same window had a median of 0.000034 SOL and a long right tail up to 0.00019 SOL.

Cluster A paid below market, consistently, at a constant. That is a default value in a configuration file. It is also economically coherent: an agent optimizing for point accrual rather than inclusion speed will set the tip to the minimum that reliably lands, and it will never re-tune.

I asked a follow-up question. If the tip is constant and below market, what happens during congestion? The cluster's transaction count did not drop during the two congestion windows I isolated. It held flat. Which means either the agent framework had a retry queue, or the operator was subsidizing priority during spikes. Both are infrastructure decisions. Neither is a retail user.

Layer four — the round-trip cluster

The $2.14 billion does not come from one population. I separated two.

Cluster A — the points-farming population — ran 12.4 million swaps across 287,000 wallets, aggregate notional $471 million, median swap size $38. Median holding period of the assets bought: 41 seconds.

Cluster B is the one that matters. 1,900 wallets. 8.9 million swaps. Aggregate notional $1.60 billion. Median swap size $186.

1,900 wallets generated 74.8% of the reported volume.

I traced the flow through Cluster B for a seventy-two hour window and constructed the directed graph. Capital exits wallet N, enters the pool, exits the pool, enters wallet N+1, returns to wallet N within a median of 2.3 blocks. The net position change across the cluster over the window was minus $340,000 against $1.60 billion of gross volume.

Gross volume of $1.60 billion. Net capital movement of $340,000. That ratio is not a market. That is a loop with a fee attached to it.

I have run this exact analysis before, in a different market. In 2022 I tracked fifty blue-chip NFT collections after the crash and found that 85% of sales volume came from wallets holding for less than forty-eight hours. The community at the time was arguing about sentiment. The data was arguing about holding periods. Holding periods won.

Here the number is worse. 96.8% of the reported volume came from wallets that did not survive seventy-two hours.

Layer five — the fee rate reality check

Reported volume: $2.14 billion. Advertised swap fee: 5 basis points. Expected gross protocol fee: $1.07 million.

Actual fees collected on-chain over the same window: $298,000.

Effective realized fee rate: 1.4 basis points.

I want to be precise about the gap, because the gap is where the story actually lives. Roughly 91% of the swaps in the window routed through a V4-style hook that charged 0.5 basis points for a points ledger and pushed the remainder to a 1 basis point LP tier. The advertised 5 basis points described a route that almost nobody used. The route that everybody used was cheaper, because it was designed to be cheap — a points program does not want to tax the volume it is trying to attract.

So the fee revenue confirms what the retention cohort already told me. The volume is real and the revenue is thin, and the ratio between them is the only number on that dashboard that a farming operation cannot manipulate without paying for it. Yields that defy gravity usually crash to earth. Fee revenue per dollar of volume is the closest thing to gravity this industry has.

Retention-adjusted volume

I want to propose a metric, because complaining about a number without proposing a replacement is not useful.

Retention-adjusted volume: reported volume multiplied by the share of unique senders that remain active after thirty days.

For this chain: $2.14 billion × 0.004 = $8.56 million.

That is the number a reasonable allocator would use to compare this chain to a competitor. It is not flattering. It is also not meaningless. An $8.56 million RAV on a chain with a functioning bridge and an $100 million balance sheet is a legitimate early-stage protocol. It is simply not the thing the dashboard was selling.

I have watched this pattern in institutional flow as well. After the Bitcoin ETF approval in 2024, I analyzed roughly 3,000 institutional wallet transactions into IBIT and found that about 60% of the inflows originated from wallets that had been active on-chain for years. The settlement layer changed. The capital did not. The same discipline applies here: ask whether the flow is new, or whether it is the same flow taking a different route through a new wrapper.

The Contrarian Angle: Synthetic Is Not the Same as Fraudulent

Here is where I expect to lose part of the room, so I will state it plainly.

Most of what I traced is not fraud. It is infrastructure testing, market making, and incentive arbitrage. Cluster B's loop provides continuous two-sided liquidity to a pool that would otherwise be empty at 04:00 UTC. Cluster A's 287,000 wallets are paying real fees to earn real points under rules the protocol published itself. If a points program prices volume at a level below the cost of generating it, the program has a design flaw, not a victim.

The blind spot in my own analysis is the assumption that "synthetic" implies "worthless." It does not. A market maker is synthetic. A router's test suite is synthetic. The on-chain economy runs on transactions that no human intended in the moment.

The actual harm is narrower and more serious. Synthetic flow corrupts the input that other decision-makers use. A points program calibrated against a $2.14 billion denominator will set emission rates that overpay farmers by an order of magnitude and underpay genuine users. An allocator comparing this chain to a competitor on volume will misprice the comparison. And retail users get worse execution, because the fee market is now priced against bot demand rather than human demand — the priority tip distribution I isolated shows exactly that, with the bot cluster anchored at a constant and human flow paying a competitive spread on top.

I should also falsify my own work.

The 3.7-second mode could be a cron job with a 3.7-second sleep interval. I cannot rule that out from timing alone. The test that would rule it out is introspection of compute-unit consumption per transaction: LLM-driven agents typically show variable compute with a heavy tail from tool-call branching, while a cron job shows near-constant compute. I have that data for 41% of Cluster A's transactions. Compute variance within the cluster is 6.8x higher than within Cluster B, which is consistent with inference branching and inconsistent with a fixed-interval scheduler. That is suggestive, not conclusive. The conclusive test requires the operator's config, which I do not have.

My clustering thresholds are also arbitrary. I used a six-hour funding window and a 15% amount band. Loosening to twelve hours and 30% pushes the synthetic share from 96.8% to 98.1%. Tightening to three hours and 5% drops it to 91.4%. Anybody running this query should publish their sensitivity band. I have published mine in the dashboard.

Takeaway

I wrote at the top of this piece that trust is a variable and data is a constant. Here is what that means for the next seven days.

Watch the ratio, not the level. For every L2 you follow, divide realized fee revenue by reported DEX volume. If a chain's volume is climbing while that ratio compresses below 2 basis points, the marginal volume is being manufactured, regardless of what any dashboard says. That single division takes four minutes and tells you more than a quarter of research reports.

Watch the priority tip distribution. A healthy fee market shows a long right tail from human competition. A manufactured one shows a spike at a constant. This is not a sophisticated query. It is a histogram, and nobody publishes it.

Watch for the first chain to publish a volume definition that excludes senders with a sub-72-hour lifetime. Whoever does it first will take a short-term hit in the rankings and a long-term gain in credibility, and the market has historically rewarded that trade — slowly, and later than it should.

Twelve Seed Wallets, $2.14B in Volume: A Forensic Autopsy of an AI-Agent Volume Print

The chain I described has eleven days to respond. My query set is public. The 3.7-second floor is in the data for anyone who wants to check it.

What would you do with a volume number whose denominator you have never opened?