Ethereum blobs and calldata are both used to carry data, but they are designed for different purposes. Calldata is transaction data that is permanently included in Ethereum’s transaction history and can be read by smart contracts. Blobs are temporary data containers introduced by EIP-4844 that primarily help Layer 2 rollups publish data to Ethereum at a lower cost.

The simplest answer is:

Calldata is persistent transaction data used by smart contracts, while blobs are temporary data designed mainly for Layer 2 data availability.

Ethereum Blobs vs Calldata at a Glance

Feature Ethereum Calldata Ethereum Blobs
Main purpose Pass data to smart contracts Provide data availability for rollups
Storage Persistent transaction history Temporary
Introduced Original Ethereum transaction design EIP-4844
Fee mechanism Regular gas Separate blob gas
Smart contracts can read contents Yes No
Primary users dApps and smart contracts Layer 2 rollups
Designed for large data Less cost-efficient Yes
Permanent blockchain history Yes No
Main scaling role Limited Important

What Is Ethereum Calldata?

Calldata is the data included in an Ethereum transaction that provides input to a smart contract.

When you interact with a decentralized application, your transaction may contain encoded calldata telling the smart contract what to do.

For example, a token transaction might include information such as:

  • The function being called
  • Recipient address
  • Token amount
  • Other function parameters

Calldata is read-only, meaning the smart contract can read it but cannot modify the original data.

Example of Calldata

A simplified transaction might look like:

To: 0xContract...
Value: 0 ETH
Data: 0xa9059cbb...

The Data field contains encoded information. The smart contract uses the contract’s ABI to interpret that information.

What Are Ethereum Blobs?

Ethereum blobs are temporary data containers introduced by EIP-4844, also known as Proto-Danksharding.

They were introduced as part of Ethereum’s Dencun upgrade in March 2024.

Blobs were primarily created to help Layer 2 rollups publish large amounts of transaction data to Ethereum more efficiently.

Instead of putting all rollup data into traditional calldata, rollups can use blobs for data availability.

The Biggest Difference: Permanence

One of the most important differences between blobs and calldata is how long the data is retained.

Calldata

Calldata becomes part of Ethereum’s permanent transaction history.

Blobs

Blob data is designed to be temporary. Ethereum nodes retain the blob data for a limited period rather than requiring it to remain permanently available as transaction history.

This distinction allows blobs to provide data availability without imposing the same long-term storage requirements as calldata.

Blobs vs Calldata: How They Are Priced

Another major difference is the fee market.

Calldata Uses Regular Gas

Ethereum charges regular gas for transaction data.

In general:

More calldata → more gas → higher transaction cost

Blobs Use Blob Gas

Blobs have a separate fee market called blob gas.

The blob gas price changes according to demand for blob space.

In simple terms:

High demand for blobs → higher blob fees

Low demand for blobs → lower blob fees

This separate market was specifically designed to make large-scale rollup data publication more economical.

Why Are Ethereum Blobs Cheaper for Rollups?

Before EIP-4844, Layer 2 rollups relied heavily on calldata to publish data to Ethereum.

Calldata has an important limitation: it becomes part of the permanent blockchain history.

Blobs provide a separate temporary data-availability mechanism.

This means rollups can publish large quantities of data without requiring that data to be maintained forever as ordinary transaction calldata.

As a result, blob data can be substantially cheaper than calldata for rollup data publication, although the actual cost depends on network demand.

Can Smart Contracts Read Ethereum Blobs?

Smart contracts cannot directly read the contents of blobs during transaction execution.

This is a fundamental difference from calldata.

A smart contract can directly access transaction calldata.

With blobs, Ethereum provides mechanisms for verifying and referencing blob data, but the complete blob contents are not directly available to the EVM in the same way calldata is.

This makes blobs suitable for data availability, rather than ordinary smart contract function inputs.

Why Do Layer 2 Networks Use Blobs?

Layer 2 rollups process transactions away from Ethereum’s main execution layer.

However, they still need to publish data to Ethereum so that users and other participants can verify the rollup’s state and transactions.

A simplified process looks like this:

User transactions

↓

Layer 2 processes transactions

↓

Transactions are bundled

↓

Rollup publishes data to Ethereum

↓

Ethereum provides data availability

EIP-4844 allows that publication to make use of blobs.

This is one reason blobs are an important part of Ethereum’s scaling strategy.

Do Blobs Replace Calldata?

No.

Blobs and calldata serve different purposes.

Calldata remains useful when a smart contract needs transaction input.

For example:

User → Smart contract → Calldata → Function execution

Blobs are primarily useful when a rollup needs to make large amounts of data available on Ethereum:

Layer 2 → Blob → Ethereum data availability

Therefore, Ethereum did not simply replace calldata with blobs.

Instead, EIP-4844 added another mechanism optimized for a different type of data.

Ethereum Blobs vs Calldata for Layer 2

For Layer 2 networks, the distinction is particularly important.

Before EIP-4844

Rollups commonly published data using Ethereum calldata.

After EIP-4844

Rollups can use blobs as an additional data-availability mechanism.

This helps separate the requirements of smart contract execution from the requirements of large-scale rollup data availability.

Are Blobs Stored on the Ethereum Blockchain?

This question can be confusing.

Blob data is associated with Ethereum transactions and secured through Ethereum’s consensus mechanisms, but the actual blob contents are not retained permanently as ordinary blockchain transaction history.

Instead, blobs are designed to be temporary.

Ethereum retains them for a limited availability window, after which nodes can prune the blob contents.

The blockchain retains information that allows the associated blob commitments to be referenced and verified.

Do Blobs Reduce Ethereum Gas Fees?

Blobs primarily reduce costs for Layer 2 data publication, rather than directly making every Ethereum transaction cheaper.

If a rollup can publish its data more cheaply, that can reduce the rollup’s operating costs.

Depending on how the Layer 2 passes those savings to users, this can contribute to lower Layer 2 transaction fees.

So it is more accurate to say:

Blobs help reduce Layer 2 data costs rather than directly reducing Ethereum Layer 1 gas fees.

What Is EIP-4844?

EIP-4844 is the Ethereum Improvement Proposal that introduced blob transactions.

It is also called Proto-Danksharding.

The upgrade created:

  • Blob transactions
  • A separate blob gas market
  • Temporary blob data
  • A more efficient data-availability mechanism for rollups

EIP-4844 is considered an important step toward Ethereum’s broader danksharding roadmap.

Ethereum Blobs vs Calldata: Simple Example

Imagine an Ethereum smart contract needs a user’s token amount and recipient address.

That information can be provided through calldata.

Now imagine a Layer 2 network has thousands of transactions that need to be made available to Ethereum.

Using blobs can be more efficient for publishing that larger dataset.

So:

Small smart contract input → Calldata

Large rollup data publication → Blobs

This isn’t an absolute rule, but it captures the fundamental design difference.

Frequently Asked Questions

What is the main difference between Ethereum blobs and calldata?

Calldata is persistent transaction data that smart contracts can read, while blobs are temporary data primarily designed to provide cheaper data availability for Layer 2 rollups.

Are Ethereum blobs cheaper than calldata?

Blobs were designed to provide a more cost-efficient way for rollups to publish large amounts of data than traditional calldata. However, blob fees fluctuate based on demand.

Are Ethereum blobs permanent?

No. Blob contents are temporary and are retained for a limited availability period.

Is calldata permanent on Ethereum?

Traditional calldata becomes part of Ethereum’s historical transaction data and is treated as persistent blockchain history.

Can smart contracts read blob data?

Smart contracts cannot directly read the complete contents of blobs during EVM execution. They can interact with information associated with blobs, such as their versioned hashes.

Why did Ethereum introduce blobs?

Ethereum introduced blobs through EIP-4844 to provide a cheaper and more scalable data-availability mechanism for Layer 2 rollups.

Do blobs replace calldata?

No. Blobs complement calldata. Calldata remains important for smart contract interactions, while blobs are primarily intended for temporary rollup data availability.

What is blob gas?

Blob gas is the separate fee mechanism used to price blob data. It operates independently from Ethereum’s regular execution gas market.

Which Ethereum upgrade introduced blobs?

Blobs were introduced through EIP-4844 (Proto-Danksharding) as part of Ethereum’s Dencun upgrade in March 2024.

Final Takeaway

The difference between Ethereum blobs and calldata mainly comes down to what the data is for and how long it needs to remain available.

Calldata:

  • Used as transaction input
  • Readable by smart contracts
  • Part of persistent transaction history
  • Uses regular Ethereum gas

Blobs:

  • Primarily used for Layer 2 data availability
  • Temporary
  • Not directly readable by smart contracts
  • Have a separate blob gas market
  • Designed to make rollup data publication more efficient

The easiest way to remember it:

Calldata is designed for Ethereum transaction execution; blobs are designed primarily for scalable Layer 2 data availability.

Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like

What Is a Sequencer in Ethereum Layer 2?

A sequencer in Ethereum Layer 2 (L2) is a system that collects,…

Why Are Ethereum Blobs Cheaper Than Calldata?

Ethereum blobs are cheaper than calldata because they were specifically designed to…

What Happens to Ethereum Blobs After 18 Days?

After about 18 days, Ethereum nodes are allowed to delete, or prune,…

Are Ethereum Blobs Permanent?

No, Ethereum blobs are not permanent. The actual data stored inside an…

How Long Are Ethereum Blobs Stored?

Ethereum blobs are stored for approximately 18 days before Ethereum nodes can…

Ethereum Calldata vs Blob Data

Ethereum calldata and blob data are two different ways of making data…

What Is Ethereum Calldata?

Ethereum calldata is the read-only data attached to an Ethereum transaction. It…

What Is Blob Gas in Ethereum?

Blob gas is a separate type of gas used to price the…

What Is Blob Data in Ethereum? A Simple Guide to Ethereum Blobs

Blob data is a new type of temporary data storage introduced to…

Why Is Bitcoin Network Fee So High When Sending BTC?

If you are sending Bitcoin and suddenly see a surprisingly high Bitcoin…