Author: Gabe Parker, Galaxy; Compiler: Wuzhu, Golden Finance
Foreword
Bitcoin's block space is extremely scarce, with each block capped at 4MB in size. This scarcity presents a significant challenge to Rollups that seek to leverage Bitcoin as a data availability layer. The emerging Bitcoin-based Rollups landscape is primarily based on ZK, aiming to publish ZK-proof outputs and state differences every 6-8 blocks. However, this approach faces a key obstacle; each data release consumes up to 400KB (0.4MB) of block space, effectively taking up 10% of the entire block.
Given that Bitcoin has been at full capacity since January 2023, competition for block inclusion between multiple Rollups will intensify, potentially straining Bitcoin's transaction fee market to unsustainable levels. Current limitations on Bitcoin's base layer, coupled with the proliferation of Rollups under development, could create an environment where L2 can hardly afford data releases. To remain viable, Rollups on Bitcoin will need to generate significant revenue from transaction fees through useful applications. This report analyzes the economic viability of Rollups on Bitcoin by examining data from Ethereum ZK-Rollups and predicting the cost of Rollups using Bitcoin (to achieve data availability). The analysis explores the potential impact of these projects on the Bitcoin blockchain once they launch on mainnet and discusses alternative strategies that Rollups may adopt if the cost of posting data to Bitcoin is too high. Is Bitcoin L1 a Data Availability Layer? Bitcoin Rollups that post data to the base layer will face a significant problem: the cost of posting data. Bitcoin block space is the most expensive per byte of any chain. Furthermore, Bitcoin’s block size is strictly limited to 4MB and fees are pegged to the data weight of the transaction, making any data-intensive transaction expensive to execute. The advent of ordinals (inscriptions attached to individual Satoshis) highlights that transactions that take up a large portion of the block size incur additional fees and drive up transaction fees. For example, the first 4MB Bitcoin transaction inscribed by the Taproot Wizards team (block 774,628) incurred $147,000 in fees.
Based on conversations with several teams building ZK-Rollups on Bitcoin, Rollups are expected to publish ZK-Proof outputs and state differences to Bitcoin L1 every 6-8 blocks (1 hour - 1.2 hours) in the form of inscriptions, which are arbitrary data stored in the Segregated Witness portion of a transaction. This data will enable any participant running a Bitcoin node to reconstruct the latest state of the Rollup. Based on testnets and conversations with developers, we estimate that each time a proof output and state difference is published to Bitcoin's Layer 1 blockchain, it will cost up to 400KB (0.4MB).
When comparing Bitcoin to the megabytes processed per second by Ethereum and Celestia, it’s clear that Bitcoin was never designed as a DA layer.
The Cost of Proof of Verification – Ethereum ZK-Rollups
Taking a page from Ethereum’s Rollup ecosystem, ZK-Rollups are capital intensive operations due to their use of Proof of Validity. This approach requires the prover to publish a ZK-Proof along with the transaction data or state differences for every L2 state change. Unlike Optimistic Rollup scaling solutions, which only pay the verification cost in the event of a fraud dispute (a rare occurrence), ZK-Rollups pay the verification cost upfront by publishing Proof of Validity. ZK Rollup has a higher upfront cost and achieves instant finality (while Optimistic Rollup has a challenge window of about 7 days). The chart below shows the weekly data publishing costs of ZK-Rollups on Ethereum.
ZK-Rollups pay for data publishing through L2 transaction fee revenue. Since its launch, ZK-Sync Era has proved the feasibility of this model, earning $66.9 million in total revenue from L2 transaction fees. $51.2 million of this was spent on ZK verification and L1 call data costs. ZK-Sync has successfully processed over 417.6 million transactions for 5.4 million users at an average cost of $0.16 per transaction. This efficient operation has resulted in a total profit of $15.7 million.
Estimating the cost of publishing data to Bitcoin
On Bitcoin L1, publishing data every 6 blocks with a fee of 400KB and fees as low as 10 sat/vByte, Rollups on Bitcoin would pay $2,640 per block published. Publishing data every 6 blocks, Rollups on Bitcoin would pay up to $1.9 million per month to publish to 730 blocks ($23 million per year). Using a 50 sat/vByte level would increase the monthly data publishing cost to nearly $9.6 million ($115 million per year). It is important to note that estimating future sats/vByte levels is extremely difficult due to the increasingly volatile fee environment on Bitcoin now with the advent of Ordinals, BRC-20s, and Runes.
To offset the high cost of publishing data in a world of 400KB per post, ZK-Rollups using Bitcoin to serve data would need to generate between approximately $1.9M and $9.63M in revenue per month from L2 transaction fees. The sensitivity table below estimates the transaction activity and fee rate levels required for a Bitcoin Rollup to break even after deducting data publishing costs. Our model predicts that the weekly cost of a Rollup posting 400KB of data to Bitcoin L1 every 6 blocks will be 10, 20, and 50 sats/vByte as of July 23, 2024. If Bitcoin Rollup processes 20M transactions per month (comparable to ZK-Sync's weekly transaction volume over the past year), transaction fees of $0.096, $0.193, and $0.482 would be required to break even at 10, 20, and 50 sats/vByte levels. Note that this sensitivity table assumes a fixed 400KB data release size between 1M and 80M transactions per month due to the lack of available data on the testnet. We understand that data release sizes may be larger or smaller than 400KB depending on the number of transactions included in the state diff.
Rollups that cannot generate enough transaction fees to cover data publishing costs will need to use their treasury to pay L1 transaction fees and may eventually be forced to stop using Bitcoin as a DA layer. Other options include publishing ZK proofs and state differences on more cost-effective DA layers such as Celestia, Near, or Syscoin. However, using something other than Bitcoin as a DA layer reduces the ability of the layer to call itself a "Bitcoin Rollup". If a layer 2 network does not roll up to Bitcoin, is it still considered a Bitcoin Rollup, or will it transform into a Validium chain of alternative DA networks? Another potential solution for Rollups that are struggling to cover costs is to reorganize into a Layer 3 solution. In this case, the Rollup publishes state differences to Layer 2 or a sidechain, while only the merkle root hash is published to Layer 1. This approach can significantly reduce data publishing costs while maintaining connectivity to the Bitcoin network.
Bitcoin Blockspace at Rollups Launch
Since the advent of Ordinals and BRC-20 in early 2023, Bitcoin's daily average block weight has been just below its 4m weight unit limit (4MB of data). Block weight is a dimensionless measurement of the "size" of a block, introduced in the SegWit upgrade to include discounted witness data. The daily average block weight has increased significantly due to an influx of inscription-related transactions, which include arbitrary data (text, images, etc.) in the transaction segregated witness field. Since February 2023, Bitcoin blocks have had an average fullness of 98%.
If each proof output and state difference totals 400k weight units, then if the data size of the Rollup remains consistent, a single Rollup publishes data to the block, which will occupy 10% of the block weight limit. Given that blocks are always at full capacity, the introduction of Rollups will change the composition of transaction data within each data-publishing block. The figure below shows the block composition of a sample of 30 blocks on July 18, 2024, assuming that two Rollups are active and publish data every 6 blocks.
Rollups publish data on Bitcoin L1 every 6-8 blocks, and the constant demand for block space will force time-sensitive transactions to pay a premium before or during the data release block. The figure below highlights how the increased competition for on-chain activity in Runes and Ordinals forces time-sensitive transactions (also known as financial transactions) to pay the highest fee premium.
Why Bitcoin DA is Important
In order for Rollup to be fully consistent with Bitcoin, it must leverage Bitcoin for data availability. This choice, while costly, takes full advantage of Bitcoin's unparalleled security, immutability, and decentralization. Rollups that choose alternative DA solutions introduce additional trust assumptions outside of the Bitcoin network, potentially compromising its integrity and classification as a "Bitcoin Rollup". Bitcoin's advantage as a DA layer lies not only in its strong security, but also in its widespread node distribution and low barriers to entry for setting up a light or full node. This accessibility ensures that anyone running a Bitcoin full node can reconstruct the latest L2 state of a Rollup, enhancing transparency and decentralization.
Despite high fees and potential long-term feasibility challenges, Bitcoin’s role as the original DA layer for Rollups highlights a fundamental trade-off: the high cost of leveraging Bitcoin infrastructure versus the unparalleled security and decentralization it provides. This balance between cost and security will likely shape the future landscape of Rollup implementations on the Bitcoin network.
Rollups Outlook Using Bitcoin for DA
ZK-Rollups using Bitcoin for data availability would need to generate approximately $1.9M to $9.6M in monthly revenue from L2 transaction fees to operate in a 10-50 Sat/vByte fee rate environment.
Fee estimation engines are critical to maximizing profitability for Rollups on Bitcoin.
The Bitcoin block space simply cannot support 4-8 Rollups that publish 400KB proofs every 6-8 blocks.
Teams that will build sovereign Rollups on Bitcoin will need to execute a listing strategy with applications to get users transacting on L2.
Some Bitcoin L2s will explore L3 environments to execute transactions and use a combination of L2 and Bitcoin L1 to provide data availability.
Rollups on Bitcoin will increase competition for block inclusion, raising L1 fees for everyone (including the Rollups themselves).
Bitcoin L2s that use Bitcoin L1 for DA will need to hedge against unexpected volatility fee spikes through fee derivatives markets and out-of-band mining transactions.