﻿---
title: "EIP-1559 基礎費：公式、費用上限與交易成本"
description: "了解以太坊如何依父區塊 Gas 使用量計算每個區塊的 EIP-1559 基礎費、費用上限如何決定實際價格，以及如何核對交易成本。"
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# EIP-1559 基礎費：公式、費用上限與交易成本

> 僅供教育參考，不構成投資建議；投資可能產生損失。

<a id="answer"></a>

## 直接答案

EIP-1559 基礎費是以太坊區塊中由協議設定的每單位執行 Gas 最低價格。父區塊的 Gas 使用量高於目標時，基礎費上升；低於目標時下降；等於目標時維持不變。已消耗 Gas 對應的基礎費會被銷毀，而不是支付給驗證者。

每個區塊只有一個 `base_fee_per_gas`，且在該區塊內的交易執行前就已確定。按照以太坊彈性乘數 2，Gas 目標是區塊 Gas 上限的一半，因此區塊可在需求短暫激增時擴張至 Gas 上限，而調整規則會推動平均使用量回歸目標。

一筆類型 2 交易會設定 `max_fee_per_gas` 和 `max_priority_fee_per_gas`。前者限制每單位 Gas 的總價格，後者限制給驗證者的小費。較高的上限不會自動被全額收取：發送者只為實際消耗的 Gas 支付區塊基礎費與允許的小費。

<a id="mechanism"></a>

## 運作機制

### 1. 推導下一區塊的基礎費

設 `B` 為父區塊基礎費，`G` 為其 Gas 使用量，`T = parent gas limit / 2` 為其 Gas 目標。以太坊採用整數運算：

- 達到目標：`G = T`，因此 `B_next = B`。
- 高於目標：`B_next = B + max(floor(B * (G - T) / T / 8), 1 wei)`。
- 低於目標：`B_next = B - floor(B * (T - G) / T / 8)`。

滿載父區塊符合 `G = 2T`，因此該步上調最多為 12.5%；空父區塊會令基礎費最多下調 12.5%。最小上調量 `1 wei` 只在整數除法原本會把高於目標的增量捨入為零時發揮作用。

### 2. 套用交易費用上限

對於被納入區塊的類型 2 交易，實際小費與實際價格為：

- `effective_priority_fee = min(max_priority_fee_per_gas, max_fee_per_gas - base_fee_per_gas)`
- `effective_gas_price = base_fee_per_gas + effective_priority_fee`
- `transaction_fee = gas_used * effective_gas_price`

若 `max_fee_per_gas < base_fee_per_gas`，交易就不能被納入區塊。當最高費用上限不足以容納要求的小費時，實際小費會降低。基礎費部分被銷毀，優先費部分則支付給區塊的費用接收者。

### 3. 核對交易收據

從交易所在區塊讀取 `baseFeePerGas`，從收據讀取 `gasUsed` 和 `effectiveGasPrice`。檢查 `gasUsed * effectiveGasPrice` 是否與執行費造成的餘額變化一致。交易 Gas 上限中未消耗的 Gas 不會收費，`max_fee_per_gas` 下方未使用的空間也不是一筆獨立付款。

<a id="example"></a>

## 計算範例

假設父區塊的目標為 `15,000,000 gas`，使用了完整的 `30,000,000 gas` 上限，基礎費為 `30 gwei`。最大調整量是 `30 gwei * 12.5% = 3.75 gwei`，所以下一區塊的基礎費為 `33.75 gwei`（此處只忽略不足 1 wei 的整數捨入細節）。

再假設下一區塊中的一筆簡單轉帳使用 `21,000 gas`，並設定 `max_fee_per_gas = 50 gwei` 和 `max_priority_fee_per_gas = 2 gwei`：

- 實際優先費：`min(2, 50 - 33.75) = 2 gwei`。
- 實際 Gas 價格：`33.75 + 2 = 35.75 gwei`。
- 執行費總額：`21,000 * 35.75 = 750,750 gwei = 0.00075075 ETH`。
- 銷毀的基礎費：`21,000 * 33.75 = 708,750 gwei = 0.00070875 ETH`。
- 驗證者小費：`21,000 * 2 = 42,000 gwei = 0.000042 ETH`。

`50 gwei` 是最高費用上限，而不是實際收取價格。若交易被納入前基礎費升至 `50 gwei` 以上，該交易將一直不具備納入資格，直到基礎費下降，或發送者以更高上限替換交易。

<a id="risks"></a>

## 風險

- 錢包估算基於近期區塊；需求衝擊可能在交易被納入前推高基礎費。
- 過低的 `max_fee_per_gas` 會使交易停留在待處理狀態；不必要的高上限雖通常不會全額支付，卻會提高授權上限。
- 執行回滾仍會消耗 Gas，因此失敗的應用操作仍可能銷毀基礎費並支付小費。
- 更高的小費可能提高納入優先順序，但不保證區塊內位置、執行成功或最終性。
- 錢包、RPC、區塊瀏覽器或節點資料可能過時或不一致；應同時核對所在區塊和交易收據。
- 以太坊主網參數不會自動適用所有 Rollup 或類 EIP-1559 鏈；彈性、分母、最低費用和額外費用組成可能不同。
- 銷毀基礎費不保證 ETH 供應量下降；淨供應還取決於協議發行量與總銷毀量。
- 不要混淆交易 `gas_limit`、區塊 Gas 上限、Gas 目標、`gas_used`、每單位 Gas 價格和總費用；它們是不同的量。

<a id="misconceptions"></a>

## 常見誤解

### 誤解 1：目前區塊決定自己的基礎費

父區塊的 Gas 使用量決定下一區塊的基礎費。目前區塊中的交易面對的是已固定在其區塊標頭中的基礎費。

### 誤解 2：每個高於目標的區塊都會把基礎費提高 12.5%

變化幅度與偏離目標的距離成正比。在以太坊標準參數下，達到完整 Gas 上限時的最大單步變化才是 12.5%。

### 誤解 3：總會全額支付 `max_fee_per_gas`

它只是上限。實際價格是區塊基礎費加上允許的優先費，受該上限約束，再乘以實際使用的 Gas。

### 誤解 4：驗證者收到全部 Gas 費

基礎費部分會被銷毀。驗證者的執行層費用收入是實際優先費，而不是完整的實際 Gas 價格。

### 誤解 5：銷毀基礎費使每筆交易都具有通縮效果

每筆交易會銷毀 ETH，但一段期間內 ETH 總供應量是否下降，取決於總銷毀量相對於總發行量的大小。

<a id="related"></a>

## 相關主題

- [區塊 Gas 上限](/zh-tw/crypto/block-gas-limit/)
- [跨鏈橋](/zh-tw/crypto/cross-chain-bridge/)
- [EIP-712 類型化簽章](/zh-tw/crypto/eip712-typed-signature/)
- [Gas 費](/zh-tw/crypto/gas-fee/)
- [優先費](/zh-tw/crypto/priority-fee/)

<a id="sources"></a>

## 來源

- [EIP-1559: Fee market change for ETH 1.0 chain](https://eips.ethereum.org/EIPS/eip-1559) - Ethereum Improvement Proposals（存取日期：2026-08-20）
- [Ethereum gas and fees: technical overview](https://ethereum.org/developers/docs/gas/) - ethereum.org（存取日期：2026-08-20）

Source: https://wiki.fcontext.com/zh-tw/crypto/eip1559-base-fee/index.mdx
