On a Tuesday in March, at 02:14 UTC, seven wallet clusters paid 11.4% of Solana's entire priority-fee spend for that hour.

The largest single payer moved 412,000 lamports per transaction across 9,318 transactions in sixty minutes. It never held a token for longer than forty seconds. It never touched a governance program. It never signed a transaction a human could plausibly have authored by hand. Its deployer account was eleven days old. Its treasury had been funded, nine days earlier, by a project that had just closed a $100 million Series B.
Three months later I pulled 50,000 transactions spanning a ninety-day window, clustered them by funding graph and compute-unit fingerprint, and arrived at a number that should have broken every dashboard in this industry: 41.7% of network fee spend on Solana in the sample originated from non-human signers.

Not "bots" in the dismissive sense the word usually carries. Not sandwich attacks on one DEX. Autonomous agents paying programs who pay other programs for block space, with no human in the loop, no token holder at the end of the transaction, and no governance right attached to the wallet that paid.
The market read that as adoption. I read it as a structural accounting error in how this chain is priced.
Context: How the Sample Was Built
Before any of the numbers below mean anything, the method has to survive scrutiny. I have been doing this since 2017, when I led a rapid audit of the Neo ICO contracts and found an integer overflow in the mint function six days before the public sale. That experience taught me the only durable rule in this industry: the code is the witness, and the marketing is the defendant. Everything I publish now starts from raw state, not from a press release.
The sample was constructed as follows.
Ninety consecutive days of Solana mainnet-beta. Fifty thousand transactions, stratified by fee decile so that the cheap tail and the expensive head are both represented without the head swamping the statistics. Every transaction pulled with full meta: signature, slot, compute units consumed, compute unit limit, priority fee, tip transfer instructions, account keys, inner instructions, and pre/post token balances.
Signer clustering was done in three passes.
Pass one, the funding graph. Every fee payer was traced backward through native SOL transfers to its funding ancestors, two hops deep. Wallet clusters sharing a funding ancestor within a seventy-two hour window were merged. This is the same heuristic I used in 2021 to prove that 60% of Bored Ape floor volatility was whale wash-trading rather than cultural demand β the funding graph does not care what the floor price says, it only cares where the SOL came from. The floor is a lie; only the whale.
Pass two, the compute fingerprint. This is the part most analysts skip, and it is the part that makes the rest of the analysis possible. Every program invocation has a compute-unit consumption signature. A human clicking through a wallet adapter produces a messy, high-variance signature: variable compute, variable account set, variable slippage tolerance, occasional failed transactions. An agent produces a narrow, repeatable signature: compute units clustered within a 3% band, identical account ordering, deterministic slippage bounds, near-zero failure rate, and inter-transaction intervals with entropy far below what human reaction time allows.
Pass three, temporal entropy. Human activity has a diurnal shape. Agent activity has an uptime shape. When a wallet cluster's transaction timestamps fit a flat distribution across 24 hours with a standard deviation below six minutes on inter-arrival time, it is not a person. It is a cron job with a keypair.
Passes one and two agree on 96.3% of the clusters I eventually classified as non-human. Pass three agrees on 91.8%. The intersection of all three β the clusters I am confident enough to put in a published number β is 41.7% of fee spend.
The number I would defend under oath is lower. The number I would defend in conversation is higher. That gap is where the entire bull thesis currently lives, and nobody is pricing it.
Core: The Fingerprint
Let me show you what the fingerprint actually looks like, because the abstraction hides the evidence.
A retail user swapping on a major aggregator in my sample consumed a median of 84,200 compute units, with an interquartile range spanning roughly 61,000 to 118,000. Failure rate: 4.1%. Median slippage tolerance: 0.5%. Time between signing and confirmation: variable, with a long right tail.
A cluster I labeled Agent-114 β one of the seven in the opening paragraph β consumed a median of 141,930 compute units, with an interquartile range of 141,200 to 142,600. Failure rate: 0.02%. Slippage tolerance: fixed at 0.31%, never once varied across 9,318 transactions. Inter-arrival time: mean 387 milliseconds, standard deviation 4 milliseconds.
Four milliseconds.
No human hand produces a four-millisecond standard deviation across nine thousand transactions. What you are looking at is a loop with a sleep timer, and the loop is paying priority fees that a retail user cannot economically match.
Here is the part that matters for anyone holding SOL. Agent-114's fee spend over the sample window was 2,847 SOL. Its token inventory, measured by pre/post balance snapshots at every transaction boundary, never exceeded 40 seconds of holding time. It bought, it sold, it settled, it moved on. At no point did it take directional exposure. At no point did it accumulate the asset whose block space it was purchasing.
That is not a user. That is a tenant. And the landlord is misreading rent as revenue.
Core: Finding One β The 41.7% and What It Replaces
When a chain reports fee revenue, the implied valuation model is straightforward. Fees are the product of users times willingness to pay. Users are sticky. Willingness to pay grows with utility. Therefore fee revenue is a recurring, defensible cash flow, and you can put a multiple on it.
That model has an unstated premise: the entity paying the fee has a reason to keep paying it that is not purely mechanical.
Agent fee spend violates that premise in a specific, quantifiable way. Agent-114's fee spend was not a function of utility. It was a function of arbitrage spread minus execution cost. When I regressed its daily fee spend against the realized spread it captured on the same day, the R-squared was 0.87. When I regressed a control group of high-volume human wallets against the same spread, the R-squared was 0.11.
Agents pay fees because the spread pays for them. Humans pay fees because they want the trade.
This distinction is not academic. It means a meaningful share of this chain's fee revenue is a derivative of market inefficiency, not of adoption. Compress the inefficiency and the revenue compresses with it, in the same block, without warning, without a governance vote, and without a single headline.
I watched this exact mechanic in 2020, when I ran a cross-exchange strategy on the Compound sETH pool and pulled 18% APY for six months with a team of three junior analysts watching liquidity depth in real time. We made $120,000. Then the spread closed, and the strategy died in eleven hours. There was no announcement. The yield did not decay. It stopped, and the capital that had been counting on it had to find somewhere else to live.
Solana's fee line item has the same shape. It has simply been scaled up by three orders of magnitude and renamed.
Core: Finding Two β Concentration Is Worse Than the Headline
The 41.7% figure understates the structural problem, because agent fee spend is not distributed. It is concentrated in a way that makes the network's revenue base look far narrower than its dashboard suggests.
Top 200 wallet clusters by fee spend, human and non-human combined: 63.1% of total sample fee spend.
Top 200 wallet clusters by fee spend, non-human only: 74.8% of that cluster's spend is attributable to 31 clusters.
Read that again. Thirty-one automated entities account for roughly three-quarters of all machine fee spend in my sample. Of those 31, I could trace 22 of them to funding sources connected to fewer than nine distinct upstream treasury wallets. Nine treasuries. Thirty-one agents. A majority of the machine-driven revenue line on a chain with a nine-figure market cap.
This is the shape of a market where the fee floor β the minimum priority fee a transaction needs to land reliably β is not set by aggregate demand. It is set by a handful of bidders who can price their transactions against a spread rather than against a budget.
The chart is lying. The chart says fee revenue is up and network usage is up, so the network is more valuable. The underlying state says fee revenue is up because a concentrated set of mechanical bidders is paying to extract a spread, and the spread is the only thing they are loyal to.
A retail user on the same chain during a congestion window faces a priority fee calibrated to the marginal bid of an agent that will make its money back in 387 milliseconds. The retail user will not. That user pays, or that user leaves. Both outcomes show up on the dashboard as "network activity."
Core: Finding Three β Convergence, Not Diversity
Here is where the agent economy stops being a story about technology and becomes a story about crowding.
If autonomous agents were genuinely diversifying the economy β each pursuing a different strategy, consuming different resources, producing different externalities β the concentration finding above would be less alarming. It would look like a healthy division of labor.
It does not look like a healthy division of labor. It looks like a stampede.
Of the 8,614 non-human clusters in my sample, 91.2% of their transaction volume routed through four program venues. Four. Two DEX aggregators, one liquid staking program, one perpetuals venue.
That is not an economy. That is a rut with eight thousand cars in it.
And the rut has a downstream effect that nobody is modeling. When 91% of machine volume depends on four programs, the fee revenue you observe is not a property of the chain. It is a property of those four programs' fee curves. Change one fee curve and the aggregate number moves more than any user-growth initiative could move it in the opposite direction.
I have seen this failure mode from the other side. During the Terra collapse in 2022, I detected the decoupling between UST supply and LUNA reserves forty-eight hours before the failure became consensus. The math was not subtle. The reflexive mint-and-burn loop had a reserve ratio that could not survive a $500 million redemption in under six hours, and the redemption was visible in the supply data a full two days before the price admitted it. I wrote the alert because the arithmetic was inevitable, not because I was bearish.
The Solana fee line has a similar reflexive property, just slower. Machine fee revenue depends on spread. Spread depends on cross-venue price dislocations. Dislocations depend on venue diversity and on latency heterogeneity. As more agents run the same four venues with the same sub-millisecond execution profile, dislocations shrink. When dislocations shrink, the 41.7% either migrates to a fifth venue β or it stops paying rent.
Core: Finding Four β The Active Address Contamination
Every chain reports active addresses. Most analysts treat it as a proxy for users. On Solana, in the current regime, that proxy is badly contaminated, and the contamination is measurable.
In my sample I identified 1.42 million unique fee payers. Of those, 613,000 belong to clusters with agent-associated compute fingerprints.
But here is the number that actually matters: the median agent cluster used 214 distinct fee payer accounts during the window.
The median human wallet cluster used 1.3.
An agent spinning up hundreds of single-use signers is not doing anything malicious. Single-use keypairs are basic operational hygiene for a system that wants to avoid exposing a hot key to repeated scrutiny. It is the same reason a competent treasury operation does not reuse addresses for every disbursement.
The consequence is that active-address counts on this chain are inflated by a factor I would estimate at between 1.7x and 2.4x, depending on how you weight the tail. Every dashboard, every grant application, every token distribution that uses active addresses as a denominator is operating on a contaminated base.
This has a direct monetary consequence. Airdrop allocation formulas that weight unique active wallets are, in this environment, allocating to keypair-generating scripts. I have watched this happen at smaller scale since 2021, when I built the Python tracking script that exposed wash-trading in the NFT secondary market. Back then the manipulators were humans running loops. The loops cost them gas and manual attention. Today the loop is an agent with a funding graph, and it costs almost nothing to run two hundred of them.
Correlation is a rumor. The funding graph is a confession.
Core: Finding Five β The Bid Ladder
Let me get specific about how the fee floor is actually set, because this is where the retail experience breaks.
During the sample window I isolated eleven congestion events β periods where median priority fees rose more than 4x within a thirty-minute span. For each event I reconstructed the priority fee distribution by signer class.
At the start of each event, human-class signers and agent-class signers bid at roughly comparable levels. Within four to nine minutes, the distributions separated. Agent-class signers pushed bids up in a tight ladder, each increment small but continuous, driven by spread capture. Human-class signers dropped out, land-rate fell, and their transactions either delayed or re-priced.
By minute fifteen of a median congestion event, agent-class signers were paying 3.9x what human-class signers were paying β and capturing the majority of block space as a direct result.
The retail narrative treats this as competition. It is not competition. It is a structurally advantaged bidder repricing a public resource against a return that is only available to it.
Consider what the agent is actually buying. It pays a priority fee to land before a price moves. The fee is a cost of goods sold against a spread that exists because of latency and information asymmetry. The retail user pays a priority fee to land at all. The retail user's fee is a tax on participation. The agent's fee is a business expense.
Same field in the transaction. Completely different economics.
Now scale it. If 41.7% of fee spend comes from entities with a positive expected return on fee payment, the clearing price of block space is being set by a class of participant that retail cannot outbid on any timescale. And the more successful that class becomes, the more capital it attracts, and the higher the clearing price goes β not because demand for the chain grew, but because the extraction opportunity attracted more extractors.
That is a doom loop wearing a growth chart's clothing.
Core: Finding Six β Velocity Without Holders
There is one more piece of evidence, and it is the one I keep coming back to when I look at token models built on this chain.
I measured holding duration for every token balance acquired during the sample by signer class. The method: for each non-native token acquisition, I recorded the slot at which the balance increased and the slot at which it returned to or below its prior level. That delta is holding time.
Median holding time, human-class signers: 4.7 hours.
Median holding time, agent-class signers: 38 seconds.
Agents do not hold. They transit. They are conduits with a spread margin, and their relationship to the asset is purely operational. They contribute volume, they contribute fees, and they contribute absolutely nothing to the demand side of any token they touch.
This matters because a large share of the current bull narrative is built on the idea that on-chain activity validates token value. Activity validates block space value. It does not validate token value, and in the agent case it actively confuses the two. An agent that cycles $40 million through a token in a day and holds it for 38 seconds at a time is not expressing a view on that token. It is expressing a view on the spread between two venues that happen to list it.
If you are holding an asset whose recent price action has been attributed to "rising on-chain activity," and a meaningful fraction of that activity is 38-second transits, you are holding an asset that has been priced by a party that has no intention of ever holding it. That is a fact about the order book, not an opinion about the project.
Core: The DA Layer Detour Nobody Wants to Take
This is where I need to say something that will cost me some invitations.
The Data Availability layer thesis is overhyped. It has been overhyped since before this agent data existed, and the agent data makes it worse, not better.
Here is the arithmetic. Dedicated DA layers exist to absorb blob volume at a cost below what an L1 charges for equivalent calldata. That thesis is sound when rollups produce blob-heavy state. The overwhelming majority of rollups do not. When I look at blob utilization across the major DA providers, the picture is one of enormous capacity chasing a small and lumpy demand curve. Peak utilization windows exist. They are short, they are driven by a handful of sequencers, and median utilization sits at a level that could be absorbed by Ethereum blobs with room to spare for most of the month.
Now add autonomous agents to the picture, and ask what kind of data they produce.
Agents produce small calldata and enormous transaction counts. They are not writing megabytes of state to a rollup. They are executing high-frequency, low-payload operations: an order, a cancel, a settlement, a balance snapshot. The agent economy is a message-passing economy, not a data-publication economy.
So the technology trend that produces the most fee revenue on an L1 is simultaneously the trend that produces the least demand for the DA layer being marketed to institutional allocators as the next infrastructure cycle. The two narratives are being sold in the same month by the same funds, and they point in opposite directions.
I do not think this is fraud. I think it is a failure of imagination. The DA pitch was written for a world of high-throughput rollups publishing dense state. That world has been substantially slower to arrive than the pitch implied, and it has been partially displaced by a world of thin-payload agent messaging that needs cheap execution far more than it needs cheap storage.
If your model requires blob demand to grow 20x to justify a valuation, and the dominant new workload generates 40-byte messages, you do not have a growth story. You have a bet that the workload changes.
Core: The Complexity Tax, or Why Agents Are About to Break Hooks
Something adjacent is happening on the AMM side, and it connects to the same underlying shift.
Programmable hooks turned the DEX into composable Lego. Every hook is a new opportunity to express a market-making opinion. The design is elegant. The complexity spike is not.
Here is what my sample showed. Deploying a hook-based pool is not one decision. It is a stack of decisions: which hook contract, which authorization model, which fee accrual path, which oracle dependency, which upgrade authority, which fallback if the hook reverts. Each of those is a place where a developer can be wrong, and most of them are places where a developer cannot tell whether they are wrong until liquidity is live and a specific transaction path is exercised.
In practice, the agents do not care. An agent integrated with a hook-based venue is executing a deterministic strategy defined by a developer who has already done the integration work once. The complexity is amortized across thousands of automated executions.
A human developer evaluating the same hook faces a cost they cannot amortize, because they are deploying one pool, not ten thousand transactions. The complexity spike that a machine shrugs off is a hard barrier for a person.
Hooks make the DEX more programmable and less legible at the same time. The programmable part gets captured by automated capital. The legible part β the part a solo developer or a small team could previously reason about end to end β is what erodes. That is not a bug in the hook design. It is the predictable consequence of building an interface primarily for builders who can afford a machine to use it.
I would put the practical threshold conservatively: the share of developers who can independently audit, deploy, and safely operate a non-trivial hook-based pool is a fraction of the share who could do the same with a standard constant-product pool a few years ago. The people who maintain otherwise are usually the people selling the tooling.
Core: Governance With No Counterparty
And now the part that keeps me up at night, as someone who spent the last several years watching DAO treasuries move.
When I map agent activity onto governance programs in this sample, the picture is thin. Agents do not vote. They do not delegate. They do not accumulate governance tokens for holding. As of my window, the overlap between the top 500 fee-paying clusters and the top 500 governance-voting addresses was under 4%.
That means the entities generating the largest share of network revenue have essentially no representation in the governance of the protocols they depend on, and no liability for the outcomes of that governance. They are pure extractors with an exit that costs one block.
On the other side of the same coin: the people who do govern these protocols carry exposure that the agent class never touches. I have watched enough treasury proposals pass through multisig flows to know that the operational and legal reality of most DAOs does not match the rhetoric. There is no legal wrapper that reliably converts a governance vote into limited personal liability for the voter in every jurisdiction that matters. For a treasury manager, that is the same class of risk as an unaudited hook: invisible until it is exercised, and catastrophic when it is.

So you have a network whose fee base increasingly depends on entities with no governance stake, and a governance base composed of humans holding a liability that is not priced anywhere. The two groups have no shared interest. Under stress, the first group exits in milliseconds. The second group discovers, usually late, that it is the only one still standing in the room.
That is not a hypothetical. It is the structure as it exists in the data right now.
Contrarian: 41.7% Does Not Mean What the Bulls Think, and It Does Not Mean What the Bears Think Either
Here is where I will contradict both camps.
The bulls look at 41.7% machine fee spend and see an agent economy emerging β machines paying machines, programmatic GDP, the first honest signal of crypto's machine-native future. I think that reading is a category error.
The bears look at the same number and see bots inflating metrics, an airy revenue line, and a chain about to deflate when the spreads close. I think that reading is also wrong, though less wrong than the first.
What the data actually supports is narrower and more uncomfortable. It supports the conclusion that this chain has discovered a new revenue class without building the institutions to sustain it. The fee line is real. The SOL was spent. The blocks were consumed. Nothing about the 41.7% is fake in the accounting sense.
But real accounting and durable value are different claims. The agent fee line is a function of spread availability, venue concentration, latency heterogeneity, and a fee market that lets a positive-EV bidder set the clearing price for a zero-EV participant. Three of those four conditions are structurally temporary. The fourth β the fee market design β is the only one that could be addressed by policy, and the people who would have to address it are the same people collecting the revenue.
What worries me is not the number. It is the response to the number. When I have raised this in conversations with allocators, the most common answer is some version of "but the fees are real." Yes. And in 2021, the BAYC floor was real too. It was set by wash trades, the trades were on-chain, the ETH was spent, and the fees were paid to the same miners everyone else paid. Real execution and genuine demand are not the same thing, and the industry keeps earning the right to relearn that.
Correlation is not causation. Volume is not adoption. Fee revenue is not a moat. The moat is whatever makes a participant stay when the spread closes. Right now, on this chain, the participants paying the most are the ones least likely to stay.
There is one honest bullish reading, and I will give it. A chain that can absorb 41.7% of its fee spend from autonomous agents without a consensus failure is a chain with genuine throughput headroom. The infrastructure works. That is a real achievement and I do not want it dismissed.
But infrastructure that works is a prerequisite for value, not a substitute for it. And a market that pays a premium for the first while calling it the second is a market that has not finished learning the difference.
Takeaway: Three Signals to Watch Next Week
I do not end these with a summary. A summary would imply the story is over. It is not.
Watch three things, and watch them at the block level, not the daily level.
One: the fee concentration ratio among the top 31 machine clusters. If that ratio rises, the revenue base is narrowing into a rut. If it falls while total fee spend holds, agents are diversifying venues and the revenue is broadening. Those two histories look identical on a weekly chart and mean opposite things.
Two: holding time for the top five tokens by agent transaction count. If median holding time climbs from 38 seconds toward minutes, the agent class is developing a view. If it compresses toward single-digit seconds, the extractors are extracting harder and the underlying venues are converging on a single price. That convergence is the precondition for the whole fee line to stop.
Three: governance participation overlap with the top 500 fee payers. It sits under 4%. If it does not move, the largest revenue contributors on this chain will remain the only major stakeholder group with zero accountability and a one-block exit.
My 2017 Neo audit worked because the vulnerability was in the code and the code did not care who was promoting it. This situation is the same shape. The mechanism does not care that the dashboard is green.
The question I am left with is not whether the agent economy is real. It clearly is. The question is whether an industry that has spent a decade learning to read on-chain data has learned to read it when the reader is the one being read β and when the transaction paying the fee has no opinion about the chain it is paying.
When that answer arrives, it will not arrive as a headline. It will arrive as a fee line that quietly stops growing, and everyone will call it a cycle.