以太坊钱包里的 gas limit 没有一个适用于所有交易的固定答案:普通 eth 地址转账通常设置为 21,000;erc-20 代币转账、授权和 defi 兑换则应以钱包的自动估算值为准,再根据合约复杂度留出适度余量。gas limit 代表一笔交易最多允许消耗的计算资源,不等于手续费,也不是越高越快。标准转账实际消耗 21,000 gas,填写 50,000 并不会按照 50,000 全额收费,未使用部分不会转化为实际支出。

钱包向普通地址发送 ETH,21,000 是最稳妥的基础值。低于这个数字,交易连最基本的签名校验、账户访问和余额更新都无法完成,通常会在进入区块前被拒绝;高一些则主要影响钱包显示的最大费用,不会改变交易本身的执行逻辑。真正需要注意的是账户余额,发送金额之外,还要预留 Gas Limit 乘以 Max Fee Per Gas 的潜在上限,否则钱包可能直接提示余额不足。以太坊现行 EIP-1559 费用机制下,最终手续费仍取决于实际 gasUsed 和有效 Gas 价格。

涉及代币时,21,000 往往不够。一次常见的 ERC-20 转账,Gas Limit 可能落在约 50,000 至 100,000,授权操作经常高于普通转账,去中心化交易所的兑换、添加流动性、质押和跨合约调用,数值还会继续上升。这里不存在通用标准答案,同一个代币在收款地址是否已有余额、合约是否采用代理结构、是否包含转账税或黑名单检查,都会改变实际消耗。盲目填一个固定数字,容易出现交易失败或资金被锁在待处理状态。

更实用的做法,是让钱包或 RPC 节点调用 estimateGas,先模拟当前交易,再在估算值基础上增加约 10%至20%的缓冲。比如模拟结果为 82,000,可将 Gas Limit 设在 90,000至100,000附近;但涉及滑点、清算、动态路由和复杂循环的合约,状态变化可能让估算失真,缓冲比例也不能机械套用。交易执行途中耗尽 Gas 时,合约状态通常会回滚,但已经消耗的 Gas 仍需支付,因此省手续费并不等于把 Gas Limit 压得越低越好。
还要把单笔交易的 Gas Limit 与以太坊区块 Gas Limit 区分开。前者是用户为一笔交易设置的资源上限,后者是验证者为单个区块安排的总容量,不能把几十万甚至数千万的区块参数直接填进钱包。以太坊主网近年的区块 Gas Limit 已提升至约 6,000 万,这是网络吞吐能力的调整,与普通用户发送 ETH、转 ERC-20 或进行 Swap 时的填写逻辑不同。实际操作中,转 ETH 记住 21,000,合约交易交给估算工具,再检查 Max Fee、余额和合约状态,通常比追求一个所谓万能数值更安全。
