---
id: TIP-1124
title: Increase Calldata Floor Cost
description: Adopts the EIP-7976 calldata floor increase with Tempo batch gas accounting.
authors: Dragan Rakita (@rakita)
status: Draft
related: EIP-7976, TIP-0001, TIP-1016, TIP-1060
protocolVersion: TBD
---

# TIP-1124: Increase Calldata Floor Cost

## Abstract

This TIP aligns Tempo with Ethereum's proposed calldata floor increase by adopting
EIP-7976. It raises the floor to 64 gas per byte, with adaptations for Tempo's
transaction batching and gas accounting.

## Motivation

Keeping Tempo aligned with Ethereum reduces differences that application and
transaction-building tools need to support. This TIP includes:

- [EIP-7976: Increase Calldata Floor Cost](https://eips.ethereum.org/EIPS/eip-7976)
  — raises the floor to 64 gas per byte, increasing the cost of data-heavy traffic.

# Specification

## EIP-7976: Increase Calldata Floor Cost

Replace the EIP-7623 floor with:

```text
calldata_floor_gas = 21_000 + 64 * calldata_length
```

Zero and nonzero bytes count equally toward this floor. Ordinary calldata pricing
remains 4 gas per zero byte and 16 per nonzero byte. The transaction gas limit
MUST cover both its intrinsic gas and its calldata floor.

For an Ethereum transaction, `calldata_length` is the transaction input length,
including initcode for a creation transaction. For a Tempo transaction
([TIP-0001](./tip-0001.md)), it is the sum of `call.input.len()` over **all encoded
top-level calls**, including creation calls and calls not reached during execution.
Apply the 21,000 base once per transaction, not once per call. Nested EVM calls do
not add bytes to this count. Signature material, authorization lists, access lists,
and envelope metadata retain their existing charges and are not added to the floor.

Replace the existing floor in admission and final gas accounting while preserving
Tempo's active creation, authorization, and refund rules. If the execution/state
split in [TIP-1016](./tip-1016.md) is enabled, use this value for
`calldata_floor_gas_cost` in its execution-gas cap, settlement, and block accounting;
state gas remains separate. Apply the floor after execution-gas refunds, preserving
[TIP-1060](./tip-1060.md) where active. Adopting the new floor does not enable
TIP-1016 or import Ethereum's refund cap and creation prices.

Pool admission, payload construction, block validation, and RPC simulation MUST
use the same active formula. Pending transactions must be revalidated against it
at activation. Existing protocol system-transaction exemptions remain unchanged.

# Compatibility

The calldata floor increase requires a coordinated network upgrade. Historical
execution retains its previous rules. Data-heavy transactions may need higher
gas limits after the change, including transactions pending at activation.
