Blocknative Blog

EIP-4844, Blobs, and Blob Gas: What you need to know

Written by Bert Kellerman | February 7, 2024

With the upcoming Dencun upgrade, Ethereum will adopt EIP-4844, commonly called proto-danksharding. This upgrade introduces type-3 transactions, bringing new opportunities and new complexity for Layer 2 networks to optimize how they settle to the base layer. In this blog post, we will unravel the details of EIP-4844 and explore the potential impacts on Layer 2 networks and the broader blockchain ecosystem.

The Problem: Gas Fees for L2s 

Layer 2 (L2) solutions are designed to improve scalability and reduce transaction costs by processing transactions off-chain and then periodically settling the results on Ethereum L1.  Currently, settlement of L2 transactions on L1 is done by posting batches of L2 transaction information through L1 calldata. The costs associated with posting through calldata are a large expenditure for L2s. According to this Dune Rollup Economics Dashboard, L2 networks spent over 15,000 ETH ($34,000,000 USD) writing to Ethereum in December of 2023 alone. 

The Solution: Blob Transactions

EIP-4844 addresses scalability issues on Ethereum by creating space for “blobs” of data, which can be used by L2s for settlement instead of calldata.  A major expected side effect of this is reduced fees for L2s. 

Some details about type-3 transactions and blobs:

  • Each block can have up to 6 total blobs
  • Each type-3 transaction can have 1 or 2 blobs
  • Each blob stores up to 128kb of data. If the entire 128kb is not used, the tx sender still pays for 128kb of blob space.
  • Blobs are only required to be stored for 4096 epochs(~ 18 days).  This is considered available long enough for all actors of a L2 to retrieve, but short enough to keep disk use manageable. This allows blobs to be priced cheaper than calldata, which is stored forever.

New Transaction and Block Header Fields

Type-3 transactions have two new fields:

  • max_fee_per_blob_gas
    • the maximum fee a user is willing to pay per blob gas
  • blob_versioned_hashes
    • a list of hashed outputs from kzg_to_versioned_hash. 

With EIP-4844, block headers will also have two new fields:

  • blob_gas_used
    • the total amount of blob gas consumed by transactions in the block
  • excess_blob_gas
    • a running total of blob gas consumed in excess of the target, prior to the block. This is used to set blob gas pricing.

Propagation of Blobs

Ethereum has a  mempool, which temporarily stores type-0, type-1, and type-2 transactions. Type-3 transactions will also be in the mempool, but the actual contents of the blobs will be gossiped through a consensus client blob sidecar and not available to the execution client.  The type-3 transaction only contains a reference to the blob (a hash) and not the blob itself. 

Understanding Blob Base Fee

EIP-4844 creates a new blob gas market. This market will operate similarly to EIP-1559, varying the blob base fee based on supply and demand. 

EIP-4844 operates under the following pricing rules:

  • If there are more blobs in the block than the target (currently 3), increase blob base fee.
  • If there are less blobs in the block than the target, decrease blob base fee.
  • If there are the same number of blobs in the block as the target, do not change the blob base fee.

In addition to this new pricing mechanism, type-3 transactions will still have the max_fee_per_gas  and max_priority_fee_per_gas fields and be subject to the existing EIP-1559 market.  In addition to blob space, type-3 transactions still have to pay for EVM space they use.

Implications for Layer 2 Networks

Blobs are expected to substantially reduce posting costs, leading to a transformation in the market for L2s. Many in the ecosystem predict that blob base fees will be near the minimum the majority of the time. 

However, the introduction will create a new complexity for operators of L2s, who will now need to decide between utilizing type-2 and type-3 fee mechanisms to get their rollups on-chain. There will be times when regular type-2 batch transactions are more expensive than type-3 blob transactions and vice versa. Each L2 will thus have to monitor the two separate markets to determine which one is more advantageous to use depending on the current network conditions.

We also expect that L2s may not need the whole blob space. We are excited by the research being done into the timing for L2s to 1) wait and fill a blob entirely and/or 2) coordinate with other L2s to share blob space. 

Future Outlook and Considerations

Dencun and 4844 introduce new opportunities for L2 networks, but will bring more observability challenges to Ethereum. As type-3 transactions enter the marketplace, L2s will need to manage the new opportunity that these changes present. If you are working on 4844 and want to collaborate on gas optimizations, join our discord to connect.