A Blob Sidecar is a dedicated data packet attached to an Ethereum beacon block that carries blob-carrying transactions from rollups. Unlike traditional calldata, which is stored permanently on-chain, blob data is stored off-chain by the network for approximately 18 days (4096 epochs) before being pruned. This temporary storage model, facilitated by EIP-4844 (Proto-Danksharding), provides a high-bandwidth, low-cost data availability layer for Layer 2 solutions like Optimism and Arbitrum, decoupling data storage costs from execution costs.
Blob Sidecar
What is Blob Sidecar?
A Blob Sidecar is a separate data structure introduced in Ethereum's Dencun upgrade to temporarily store large batches of transaction data from Layer 2 rollups, significantly reducing gas costs.
The architecture separates the blob data from the block's execution payload. A beacon block contains only a small commitment to the blob data, while the full blob is broadcast and stored separately by nodes in a blob sidecar. This design ensures that execution clients do not need to process the large blob data, maintaining block validation speed. The data is made available through a peer-to-peer network and can be sampled for availability using Data Availability Sampling (DAS), a precursor to full Danksharding.
For developers and users, the primary impact is dramatically reduced transaction fees on Layer 2 networks. By submitting data via blobs instead of expensive calldata, rollups can pass on savings of 10x or more. The system uses a new transaction type and gas market for blobs, with fees determined by a separate EIP-1559-style mechanism. Validators are responsible for ensuring the availability of blob data during the storage window, after which the data can be safely discarded as its purpose for ensuring rollup security has been fulfilled.
How a Blob Sidecar Works
A technical breakdown of the mechanism that separates large data blobs from the main Ethereum block structure to enable scalable layer-2 rollups.
A blob sidecar is a separate, temporary data packet attached to an Ethereum block that carries large batches of transaction data for layer-2 rollups, decoupling this data from the main block's execution to dramatically reduce costs. Introduced by EIP-4844 (Proto-Danksharding), this mechanism creates a new transaction type, the blob-carrying transaction, which posts a commitment to the data in the main block body while the actual blob data is transmitted and stored in the parallel sidecar. This separation is key: the execution layer only processes a small, fixed-size KZG commitment, while the consensus layer and full nodes are responsible for propagating and temporarily storing the much larger blob data itself, typically for about 18 days.
The workflow begins when a rollup sequencer bundles hundreds of transactions and posts them to Ethereum. Instead of using expensive calldata, it sends a blob-carrying transaction. The block builder includes the transaction in a block and attaches the corresponding blob sidecar. Network nodes validate the blob's data against its KZG commitment to ensure correctness. Critically, blob data is not accessible to the Ethereum Virtual Machine (EVM); it can only be referenced by its commitment. This design means execution clients do not need to store blobs long-term, significantly reducing their hardware requirements and keeping block validation times low, even as blob data scales into megabytes.
After validation, blob data enters a peer-to-peer network separate from the main block gossip network, where it is propagated among consensus clients. Full nodes and consensus nodes store blobs in a blob storage cache for a short data availability window, currently set to 4096 epochs (approximately 18 days). After this period, the data is pruned, as its long-term availability is ensured by the rollups themselves or data availability committees. This temporary storage model is the cornerstone of proto-danksharding, providing strong data availability guarantees for rollups at a fraction of the historical cost, paving the way for the full danksharding upgrade where the network will be able to handle many blobs per block.
Key Features of Blob Sidecars
Blob sidecars are a core scaling mechanism introduced in Ethereum's Dencun upgrade. They are separate data packets attached to blocks, designed to provide cheap, temporary data availability for Layer 2 rollups.
Separate Data Structure
A blob sidecar is a distinct data structure transmitted and stored separately from the main Ethereum block body. It contains one or more data blobs (each ~128 KB) and is referenced in the block by a short commitment. This separation is key to reducing the persistent storage burden on consensus nodes.
Fixed-Term Storage (Pruning)
Blob data is not stored permanently by Ethereum consensus nodes. It has a fixed pruning period of 4096 epochs (approximately 18 days). After this period, nodes delete the blob data, keeping only the small commitments. This temporary storage is the primary source of significant gas fee reduction for rollups.
KZG Commitments & Proofs
Each blob's data is cryptographically committed to using KZG polynomial commitments. The block includes this small, fixed-size commitment. Data availability sampling (DAS) by nodes verifies the blob is available without downloading it entirely, ensuring the data can be reconstructed by anyone who needs it (like rollups).
Dedicated Fee Market
Blob transactions use a separate EIP-1559-style fee market from the standard execution gas. They have their own base fee and priority fee, which adjusts dynamically based on blob-specific demand. This isolates blob pricing from mainnet activity, providing more predictable costs for rollups.
Core Use Case: Rollup Data
The primary purpose of blob sidecars is to provide cheap data availability for Layer 2 rollups (Optimistic and ZK). Instead of posting transaction data as expensive calldata, rollups post it as blob data. This can reduce their data posting costs by over 90%, directly lowering end-user transaction fees.
Consensus & Execution Client Roles
Consensus clients (e.g., Prysm, Lighthouse) are responsible for validating, broadcasting, and temporarily storing blob sidecars. Execution clients (e.g., Geth, Nethermind) do not process blob data directly; they only receive the block header with commitments. This clean separation maintains client architecture.
Etymology and Origin
The term 'Blob Sidecar' is a compound noun that precisely describes a new data structure introduced with Ethereum's Dencun upgrade to solve a specific scaling problem.
The Blob Sidecar is a portmanteau of two distinct concepts: blob and sidecar. The term blob is a common computing term for a 'Binary Large OBject,' referring to a large, unstructured chunk of data. In Ethereum's context, it specifically denotes the large, temporary data packets introduced by EIP-4844 (Proto-Danksharding). The term sidecar is borrowed from distributed systems architecture, where a sidecar process or container runs alongside a primary application to provide supplementary functionality without modifying the core. Here, it signifies that this blob data is transmitted and validated alongside the main blockchain block but is not a permanent part of the core block data structure.
The architectural choice of a sidecar was driven by the need for data availability without state bloat. By separating the large blob data from the block's permanent execution payload, the core Ethereum Virtual Machine (EVM) does not need to process or store this data indefinitely. This design is a precursor to full Danksharding, where the sidecar model will be expanded to manage data from many blobs across a distributed network of validators. The terminology thus reflects a transitional, modular approach to scaling.
The 'blob' component emphasizes the data's role: it is a carrier for layer 2 rollup transaction data (like Optimism and Arbitrum proofs), which needs to be available for a short period for verification but does not require costly, perpetual on-chain storage. The etymology underscores a key innovation: enabling cheaper data availability by making storage temporary (approximately 18 days) and separating it from consensus-critical state. This lexical precision helps developers distinguish blob data from calldata, the previous, more expensive method for L2 data posting.
Ecosystem Usage and Examples
The Blob Sidecar is a core component of Ethereum's EIP-4844 (Proto-Danksharding), designed to provide cheap, high-volume temporary data storage for Layer 2 rollups.
Core Mechanism: Separating Execution from Data
A Blob Sidecar is a separate data packet attached to an Ethereum beacon block. It contains blob-carrying transactions (type-3 transactions) that hold large data chunks for rollups. This separation is key:
- Execution Layer: Validates the transaction and pays fees.
- Consensus Layer: Stores the blob data temporarily (for ~18 days).
- This architecture prevents the blob data from being processed by the EVM, keeping base layer execution efficient while providing cheap data availability.
Primary Use Case: Layer 2 Rollup Data
The dominant use for blob space is data availability for Optimistic and ZK Rollups.
- Rollups post their compressed transaction data (calldata) as blobs instead of using expensive mainnet calldata.
- Sequencers batch thousands of user transactions into a single blob.
- Verifiers and bridges can download this blob data from the consensus layer to reconstruct the rollup's state and verify proofs or challenge fraud. This reduces L2 transaction fees by over 90% compared to previous calldata methods.
EIP-4844 and Proto-Danksharding
The Blob Sidecar was introduced via EIP-4844 (Proto-Danksharding), a precursor to full Danksharding.
- It creates a new transaction type and a dedicated fee market for blobs, separate from gas.
- Implements a blob gas mechanism where demand adjusts pricing via a targeting rule.
- Sets a blob count limit per block (initially 6, targeting 16+ in future upgrades) to manage network load.
- This upgrade is the foundation for scaling Ethereum's data capacity for rollups.
Temporary Storage and Pruning
Blob data is not stored permanently on the Ethereum execution layer.
- Consensus clients store blobs in a temporary blob sidecar cache.
- Data is pruned after approximately 4096 epochs (~18 days).
- This design assumes all necessary parties (rollup operators, bridges, challengers) will have downloaded and verified the data within this window. The temporary nature is a key optimization that enables low costs while maintaining security for rollup finality.
Future Evolution: Full Danksharding
Proto-Danksharding (EIP-4844) sets the stage for Full Danksharding.
- Increased Capacity: Targets 64 blobs per block, massively scaling data availability.
- Data Availability Sampling (DAS): Light clients will be able to verify data availability by sampling small random chunks of blobs.
- Blob Persistence: A shift towards more persistent data storage models is under research.
- The Blob Sidecar mechanism provides the foundational architecture for this future, more scalable system.
Comparison: Blob Sidecar vs. Other Data Storage
A technical comparison of data storage mechanisms for rollups and Layer 2 solutions, focusing on cost, security, and data persistence.
| Feature / Metric | Blob Sidecar (EIP-4844) | Calldata (Legacy) | External Data Availability (DA) Layer |
|---|---|---|---|
Primary Use Case | Low-cost temporary data for L2s | Smart contract execution & permanent L1 storage | Independent data availability for sovereign/validium rollups |
Data Persistence on L1 | ~18 days (pruned after) | Permanent | None (off-chain) |
Cost Basis | Blob gas (separate fee market) | Execution gas (competes with transactions) | Native token of external chain |
Typical Cost (Relative) | ~0.01x calldata cost | 1x (baseline) | Varies (often < 0.001x L1 calldata) |
Data Availability Guarantee | Ethereum consensus (high security) | Ethereum consensus (high security) | Security of external chain/protocol |
Data Retrieval Window | Short-term (for fraud/validity proofs) | Unlimited | As defined by external protocol |
Ethereum Mainnet Integration | Native protocol upgrade | Native transaction type | Bridge or attestation bridge required |
Settlement Layer Dependency | Direct (Ethereum L1) | Direct (Ethereum L1) | Indirect or none (sovereign) |
Technical Components of a Blob Sidecar
A Blob Sidecar is a distinct data structure introduced by EIP-4844, attached to a consensus-layer Beacon Block to carry large, temporary data blobs for Layer 2 rollups. It is composed of several key parts that work together to enable proto-danksharding.
The Blob
The core payload of the sidecar, a blob is a large piece of data (up to ~128 KB) containing transaction data from Layer 2 rollups. It is formatted as a list of 4096 field elements, each 32 bytes, making the total blob size exactly 131,072 bytes. This data is committed to but not executed by the Ethereum Virtual Machine (EVM).
KZG Commitments
Each blob is cryptographically committed to using KZG commitments (Kate-Zaverucha-Goldberg). This creates a short, fixed-size proof (48 bytes) that is stored in the execution layer block. The commitment allows anyone to verify that a specific piece of data is contained within the blob without downloading the entire blob, enabling efficient data availability sampling.
KZG Proofs
A KZG proof accompanies each blob commitment, providing a zero-knowledge proof that the blob data correctly corresponds to its published commitment. This proof is verified by consensus-layer validators when the Beacon Block is proposed, ensuring the integrity of the data before it is accepted into the chain.
Versioned Hashes
To keep the execution layer simple, the full KZG commitment is not stored directly in an Ethereum transaction. Instead, a versioned hash is derived from it and included in the transaction's blobVersionedHashes field. This hash points to the specific blob in the sidecar and is used by the EVM (via BLOBHASH opcode) for verification.
Beacon Block Attachment
The Blob Sidecar is not part of the execution payload. It is attached to the Beacon Block on the consensus layer. A block can have multiple sidecars (up to 6 in EIP-4844). Validators are responsible for propagating and storing sidecar data separately from block data for a short period (currently ~18 days).
Data Pruning & The Blob Fee Market
Blobs are designed to be prunable after a short retention period. A separate blob gas fee market (governed by EIP-4844) determines transaction costs for blob inclusion, independent of standard EIP-1559 gas. This creates a dedicated bandwidth pricing mechanism for data availability.
Common Misconceptions
Clarifying frequent misunderstandings about the blob sidecar, a key data structure introduced in Ethereum's Dencun upgrade to scale Layer 2 rollups.
No, a blob sidecar is not a transaction type but a separate, temporary data package attached to a Beacon Chain block. It is a distinct data structure that travels alongside a block, referenced by a special transaction called a blob-carrying transaction. The blob data is stored separately from the main block body and is only accessible for a short period, typically 4096 epochs (~18 days), before being pruned by nodes. This design separates high-volume data from permanent state execution, enabling cheaper data availability for rollups without bloating Ethereum's historical data.
Frequently Asked Questions (FAQ)
Essential questions and answers about Blob Sidecars, a core data structure introduced in Ethereum's Dencun upgrade to enable cheaper Layer 2 transaction data.
A Blob Sidecar is a separate data packet attached to an Ethereum beacon block that contains blob-carrying transactions (type-3 transactions). It is a core component of EIP-4844 (Proto-Danksharding) designed to provide large, temporary data storage for Layer 2 rollups at a significantly lower cost than using calldata. The sidecar is cryptographically linked to its parent beacon block via a KZG commitment but is not executed by the Ethereum Virtual Machine (EVM). After approximately 18 days (4096 epochs), the blob data is pruned from the consensus layer nodes, leaving only the commitments for long-term data availability verification.
Get In Touch
today.
Our experts will offer a free quote and a 30min call to discuss your project.