In the red, I found the quiet signal.
It came not from a chart but from a receipt. Three weeks ago, while reconciling sequencer revenue against proving expenses for a mid-cap zero-knowledge rollup, I found a line item that had no business being that large. Proof generation. GPU hours. Amortized silicon. The L1 verification transaction. Aggregated, those components accounted for roughly 71% of the chain's modeled monthly operating cost. Fees covered 22% of it.
Nobody posts that number. It does not move price. It does not trend, because it is boring, structural, and refuses to resolve inside a single news cycle. But it is the figure that will determine which of the chains promising us a scalable future are still verifying blocks when the cycle turns. I sat with it for four days, rebuilt the model three times, and found something more uncomfortable than the deficit itself.
The durable cost of a ZK rollup is not the cost of a transaction. It is the cost of a proof β and a proof does not know how much traffic you have.
The zero-knowledge rollup narrative has always been a story about compression. Take computation off Ethereum, prove it elsewhere, post a small cryptographic receipt, and let the base layer do what it does best: settle. In 2021 the story was purity β ZK was the endgame, the mathematically honest scaling path, the one that did not ask you to trust a seven-day challenge window. By 2023 the story had quietly become cheaper data availability, and then EIP-4844 arrived and made that part true. Blobs compressed the cost of publishing state diffs by something close to an order of magnitude. For about eighteen months, every rollup presentation looked the same: a chart with a downward-trending line and the word scalability underneath it.
Then the fees fell.
Bear markets do not kill bad technology. They kill bad arithmetic. And the arithmetic hidden inside the compression story is this: proving is a fixed-cost industrial process bolted onto a variable-revenue consumer business. In a bull market, blocks fill. Batch sizes grow. The per-proof cost is spread across thousands of transactions and the unit economics look magnificent. In a bear market, the same proof still has to be generated, still has to be verified on L1, still has to be posted β but it now carries a fraction of the traffic it was designed for.
Nothing in the technology broke. The ratio broke.
I have watched this pattern before. In 2017 I spent six weeks inside Tezos' self-amending governance paper while the ICO market priced whitepapers like lottery tickets, and the lesson I took from it was not about consensus. It was that markets consistently price the story before they price the structure, and the structure eventually submits its invoice. ZK rollups have been in the story phase for four years. The invoice is arriving now, in the quiet, unglamorous form of proving costs, and it is being paid by a shrinking pool of people who understand what a recursion circuit actually costs to run.
To understand where the money goes, you have to follow one batch from mempool to finality. A sequencer orders transactions. A prover takes that ordered batch, executes it inside a circuit, and produces a proof. If the chain uses recursion or aggregation, several proofs are folded into one. That final proof is verified by a contract on Ethereum, and the state diff is published β today, usually as a blob. Five cost centers, only one of them elastic.
The L1 verification gas is roughly constant. A pairing check or a STARK verifier call costs somewhere in the low hundreds of thousands of gas and does not care whether you proved ten transactions or ten thousand. The blob cost is a market price you pay, not a market price you influence. The sequencer, the indexers, the RPC fleet, the bridges β these are fixed salaries. The prover is where the interesting variable lives, and it is a variable that behaves like a constant.
Here is the part that took me three rebuilds to believe. Proof generation cost is only weakly linear in the number of transactions in a batch. Execution traces are mostly cheap; what dominates is the machinery around them β the fixed circuits, the witness generation, the memory bandwidth, the recursive folding. In the models I built, taking a batch from 1,000 to 5,000 transactions raised proving cost by roughly 2.1x, not 5x. That super-linearity of traffic over cost is the entire business case for a ZK rollup β and it runs in reverse when traffic leaves.
Which means the economics are brutally pro-cyclical in the direction you least want. In 2024, during the points-and-airdrop era, median batch sizes on the larger zkEVMs were comfortably in the thousands. Today, on chains I have tracked through the drawdown, median batch size has fallen to somewhere between 900 and 1,400. The proof still costs what it costs. The fee base shrank by more than the proof did. My modeled per-transaction proving cost for one operator rose from roughly $0.014 at the cycle peak to roughly $0.061 now β a 4.4x deterioration with zero change in the operator's engineering.
Fragility breaks the loudest voices first.
You can see the shape of the problem in the fixed toll every rollup pays. Verification on L1 is a constant. Publishing the state diff is a constant per byte. Neither shrinks when the economics tighten. Across the chains I modeled, the combined L1-side cost β verification plus data availability β sat between $8,000 and $40,000 per month at current blob prices, depending on posting frequency. That is not enormous money in absolute terms. It is enormous relative to a fee base that has fallen to five figures. The only structural fix is aggregation: proving many rollups' batches into a single L1 verification. It is technically real, it is being built, and it is still two years from mattering commercially.
There is a second, subtler problem, and it is the one that keeps me up. For years, the pitch was that proving would be commoditized β that a competitive market of provers would bid down the cost of generating proofs, the way ASIC manufacturers bid down hashrate. In theory, this is beautiful. In practice, a proving market is constrained by latency. A proof that arrives late is worth less than a proof that arrives on time, because finality is a product feature and users notice a slow chain. Latency requirements collapse the bidding pool.
Based on my own audit work pulling quotes across prover providers for comparable batch profiles, I have seen spreads of more than four times between the cheapest and most expensive bid for functionally identical work. A market with a 4x spread is not a market. It is a negotiation, and the party with the deadline loses. The decentralization of proving, in other words, is real as a trust property and largely fictional as a price mechanism. Trust is a variable, not a constant β and so, apparently, is the price of a proof, except it varies in the direction of whoever is holding the batch.
Then there is the externality nobody wrote into the whitepaper. Proving runs on GPUs and increasingly on specialized silicon, and since 2023 the price of that silicon has been set by an industry that has nothing to do with crypto. The AI buildout bid up accelerator capacity, rental markets, and memory bandwidth globally. A ZK operator competing for GPU-hours is now competing against model training budgets that treat $30,000 per card as a rounding error. The marginal cost of a ZK proof is now partially determined by the marginal cost of training a language model, and no rollup token model accounts for that coupling. It is a dependency on an entirely different narrative cycle, and it is invisible on every dashboard.
There is also a quiet tax buried in the phrase EVM equivalence. Type 1 rollups β the ones that prove Ethereum exactly as it is β are the most expensive to prove, because you inherit every weird corner of the EVM in your circuit. Each increment of equivalence is bought with proving cycles. When a rollup announces full equivalence in a blog post, it is announcing a permanent cost increase and calling it a feature. That is not dishonesty. It is a tradeoff the market refuses to price, because equivalence is legible and proving cost is not.
And the cohorts built by incentives are the least able to pay for it. When a points program ends, on-chain activity on affected chains has typically fallen by somewhere between 55% and 80% within two quarters. The users leave. The proofs do not.
There is a counterforce, and I want to be fair to it. Proving efficiency has improved dramatically. Faster recursion, better field arithmetic, STARK-to-SNARK wrapping, and the migration toward RISC-V zkVMs have together pushed raw proving throughput up by something like an order of magnitude over two years. Specialized proving chips are shipping. Long-run, the cost curve points down, hard.
But cost curves and cash flows operate on different clocks. A downward-trending cost curve does not help an operator burning a treasury today, and it does not help a chain whose fee base has structurally detached from its batch capacity. The bear market does not care that the 2030 unit economics are excellent.
And the treasury itself is the final piece of the illusion. Rollups subsidize proving from token reserves. In a bull market, that reserve is marked in dollars that double. In a bear market, the same reserve is marked in tokens whose purchasing power has fallen sharply, while the prover β increasingly β wants to be paid in something that is not the chain's own token. A runway chart expressed in years is almost always expressed in units the chain controls the supply of and does not control the price of. The war chest is denominated in a promise. Liquidity mining APY is a subsidy dressed as a yield; proving subsidies are the same mechanism one layer deeper, where the subsidy is paid to hardware instead of to depositors, and where the recipient has no loyalty to the narrative at all.
The consensus reading of this moment is that the bear market is a filter, and that weaker L2s will die of it. I think that is backwards. The bear market is when ZK rollups get cheap to run in absolute terms. Blob space clears. GPU rental markets soften as AI capex digests. Prover providers, fighting for shrinking order flow, will accept tighter spreads. Absolute cost is falling.

The problem was never absolute cost. It was the denominator. What the bull market did was not make ZK rollups profitable; it made them look profitable by inflating the fee side with subsidized activity that had no retention and no pricing power. The number that matters is not the cost of a proof. It is the cost of a proof divided by a fee that was never real. When that fee evaporates, the operator discovers that it was never selling a product β it was renting attention.
The second uncomfortable possibility is that none of this matters, because ZK rollups are not businesses. They are loss leaders for a token, a foundation, or a larger ecosystem strategy. That is a legitimate design. But it converts an engineering problem into a capital-markets problem, and capital-markets problems have a way of arriving as a calendar. If the runway is measured in tokens and the burn is measured in silicon, the chain is short the hardware market and long its own narrative. To hold firm is to understand the void.
What I will be tracking over the next twelve months is not TVL, and not transactions per second. It is three ratios: proving cost over fee revenue, batch fill rate against designed capacity, and the share of operating expenses settled in fiat-denominated hardware rather than in the native token. The first operator to publish those numbers voluntarily β before a governance forum demands them β will have told you more about the future of scaling than any roadmap or research post this cycle. The crash strips the noise, leaving only structure. Whispers become roars in the blockchain's memory.