﻿---
title: "以太坊优先费"
description: "以实务方式说明以太坊 EIP-1559 优先费、费用上限、实际 Gas 价格、打包激励、估算、交易替换与回执核对。"
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.

# 以太坊优先费

> 仅供教育参考，不构成交易、安全或投资建议。费用与打包结果取决于具体链、交易类型、区块条件、钱包、RPC、中继、构建者和验证者行为。

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

## 直接答案

在以太坊上，优先费（也称小费）是协议销毁基础费后，每单位执行 Gas 中留给区块费用接收方的金额。在 type-2 EIP-1559 交易中，`maxPriorityFeePerGas` 只是上限：每单位 Gas 的实际优先费为 `min(maxPriorityFeePerGas, maxFeePerGas - baseFeePerGas)`，实际 Gas 价格等于基础费加上该实际优先费。

更高且有竞争力的小费可以提高及时打包的概率，但不能保证进入下一个区块、获得特定排序或成功执行。交易仍须有效，总费用上限必须覆盖打包区块的基础费；构建者或验证者还可能考虑私有订单流、捆绑交易、MEV、本地策略及其他约束。其他链和 L2 的术语与费用规则各不相同，因此在核实具体网络前不要照搬以太坊公式。

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

## 工作机制

1. 固定链、交易类型、发送方、nonce、预期 calldata、Gas 上限、当前链头和提交路径。Type-2 交易提供 `maxPriorityFeePerGas` 与 `maxFeePerGas`；传统交易只有一个 `gasPrice`，在 EIP-1559 后被打包时，其中高于基础费的部分成为实际优先费。
2. 根据条件估算，而不是复制一个固定小费。钱包或 RPC 可以使用近期区块、待处理需求和 `eth_feeHistory`；其奖励百分位描述的是按 Gas 使用量加权的历史实际优先费，不是对下一区块的承诺。
3. 分别设置两个上限。`maxPriorityFeePerGas` 限制请求的小费，`maxFeePerGas` 限制基础费与小费之和。未使用的 Gas 和未用到的上限空间不会仅因获得授权就被收费。
4. 对候选区块，必须满足 `maxFeePerGas >= baseFeePerGas`。随后计算 `effectivePriorityFeePerGas = min(maxPriorityFeePerGas, maxFeePerGas - baseFeePerGas)` 和 `effectiveGasPrice = baseFeePerGas + effectivePriorityFeePerGas`。
5. 将小费视为打包激励，而非排序合约。区块构建者可能优化区块总价值、捆绑交易和有效性约束，而不是按小费排列所有公开交易；零或低小费仍可能被打包，高小费也仍可能等待或失败。
6. 打包后核对回执与区块。记录 `gasUsed`、回执中的 `effectiveGasPrice`、区块的 `baseFeePerGas`、状态、区块哈希和确认深度。执行费为 `gasUsed * effectiveGasPrice`，优先费部分为 `gasUsed * (effectiveGasPrice - baseFeePerGas)`。
7. 如果交易持续待处理，在替换前重新评估基础费上限与提交路径。同一发送方、同一 nonce 的替换属于客户端和交易池策略，通常要求上调多个费用字段，并会形成竞速；钱包的取消操作无法逆转已打包的交易。

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

## 计算示例

- **小费低于两个上限。** Gas 使用量为 `70,000`，基础费为 `25 gwei`，最高优先费为 `3 gwei`，最高费用为 `40 gwei`。实际优先费是 `min(3, 40 - 25) = 3 gwei`，实际 Gas 价格为 `28 gwei`。执行费是 `70,000 * 28 gwei = 0.001960 ETH`，其中 `0.001750 ETH` 被销毁，`0.000210 ETH` 作为优先费记入费用接收方。
- **总费用上限生效。** 上限仍为 `3/40 gwei`，但打包区块的基础费升至 `38 gwei`。实际优先费降为 `min(3, 40 - 38) = 2 gwei`，所以实际 Gas 价格为 `40 gwei`。当基础费为 `41 gwei` 时，即使请求的小费很高，该交易也无法在 `40 gwei` 的最高费用下被打包。
- **估算并非保证。** 如果近期 `eth_feeHistory` 百分位显示 `2 gwei`，这一观察值只是起点。需求突然增加、私有捆绑交易、RPC 的有限视野或构建者策略都可能改变打包结果；应核对实际回执，不要把估算当作服务级承诺。

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

## 风险

- 使用了错误的链、费用代币、交易类型，或混淆 wei、gwei 与 ETH 等单位。
- 将 `maxPriorityFeePerGas` 当成必然支付的金额。
- 忘记基础费上涨会压缩实际小费，或使交易因 `maxFeePerGas` 不足而失去打包资格。
- 认为可见小费最高就能保证排在首位或进入下一区块。
- 在需求快速变化时依赖过时的钱包、RPC 或费用历史估算。
- 因钱包提供激进默认值，或混淆费用上限与实际成本而多付费用。
- 认为高小费能修复无效 calldata、Gas 不足、执行回滚、过期截止时间或恶意合约。
- 忽略私有中继、捆绑交易、MEV、审查以及构建者或验证者策略。
- 替换错误的 nonce、未满足交易池加价规则，或发送相互冲突且带有价值转移的交易。
- 把待处理标签当作全局事实，或把一次确认当作最终性。
- 将以太坊的执行小费公式用于费用组成和接收方不同的 L2 或其他链。

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

## 常见误区

- **最高优先费总会被支付。** 它只是上限；总费用上限可能降低实际小费。
- **更高小费保证成功。** 它可能提高打包竞争力，但不能保证排序、执行成功或最终性。
- **最高费用是在基础费与小费之外额外收取的费用。** 对 type-2 执行 Gas 而言，它是覆盖两者的总上限。
- **未使用的 Gas 或费用上限空间也会被花掉。** 实际执行收费依据回执中的 Gas 使用量与实际 Gas 价格。
- **每个网络都采用以太坊优先费机制。** L2 和其他链可能有额外或不同的费用市场、排序器策略与费用接收方。

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

## 相关主题

- [EIP-1559 基础费](/zh-cn/crypto/eip1559-base-fee/)
- [Gas 与交易费用](/zh-cn/crypto/gas-fee/)
- [内存池与交易池](/zh-cn/crypto/mempool/)
- [以太坊交易替换](/zh-cn/crypto/mempool-replacement/)
- [账户 nonce](/zh-cn/crypto/nonce-crypto/)

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

## 来源

- [Ethereum gas and fees: technical overview](https://ethereum.org/developers/docs/gas/) - Ethereum.org（查阅日期：2026-08-21）
- [Transactions](https://ethereum.org/developers/docs/transactions/) - Ethereum.org（查阅日期：2026-08-21）
- [EIP-1559: Fee market change for ETH 1.0 chain](https://eips.ethereum.org/EIPS/eip-1559) - Ethereum Improvement Proposals（查阅日期：2026-08-21）
- [eth_feeHistory](https://ethereum.github.io/execution-apis/api/methods/eth_feeHistory/) - Ethereum Execution APIs（查阅日期：2026-08-21）

Source: https://wiki.fcontext.com/zh-cn/crypto/priority-fee/index.mdx
