Gas費是執行鏈上操作的計費用量乘以有效單價。以Ethereum(以太坊)主網一般交易為例,準備額按Gas上限與最高費率計算,實費則按回執這份執行結果紀錄核對。Ethereum.org《Gas and fees》區分兩種口徑;估算不保證收錄或成功,失敗也要先分進區塊前拒絕與鏈上執行回退。
錢包說要準備0.0032 ETH,也就是以太坊原生幣,最後只用了0.001404,少掉的差額到底去了哪裡?另一筆明明失敗,為什麼仍被收費?如果把上限、用量與失敗原因混在一起,很容易得出「多設一點就會多扣」或「失敗一定退費」這兩個相反的誤解。
這篇先把單位拆開,再用同一組教學輸入算完準備額與實費,最後只改一個條件,觀察等待及失敗分支。先會讀欄位,比急著選「最快」更有用。
Gas用量與ETH費用,先把單位分開
Gas衡量計算工作量,ETH費用則是你為這些工作支付的金額。 兩者中間還隔著每單位價格,不能把Gas Limit當成一個ETH數字,也不能只看單價就判斷整筆操作便宜。
本篇只計算Ethereum主網一般EIP-1559交易的執行費;EIP-1559是區分基礎費、優先費及最高費率的交易計費機制。案例由發送帳戶自行付費,不套用由第三方代付的模式。收轉幣的完整順序可先看加密貨幣錢包入門。
Gas Limit限制工作量,Gwei標每單位價格
Gas Limit是這筆交易允許使用的Gas上限,實際Gas Used則是最後計入費用的用量。Gwei是ETH的小額單位,1 Gwei等於十億分之一ETH。假設用量為50,000 Gas、有效單價為20 Gwei,費用就是50,000乘20再除以十億,得到0.001 ETH。
操作較複雜,可能需要更多用量;網路需求增加,也可能使單價改變。Ethereum.org《Gas and fees》以工作量及價格解釋這兩個來源。普通ETH轉帳、代幣轉帳與多步驟合約互動,不宜共用一個固定上限;估算出錯時,不能只靠把數字壓低來強迫操作變便宜。
最高費率與優先費率,不是同一個上限
Base Fee是協議設定的基礎費率;Max Priority Fee是願意額外支付的每單位優先費上限;Max Fee則是整體每單位最高費率。後兩項在EIP-1559裡分別對應maxPriorityFeePerGas與maxFeePerGas,看到兩個上限時不要把它們再相加,當成另一個可多收的總價。
EIP-1559原始規範先要求Max Fee不低於該區塊Base Fee,且不低於Max Priority Fee,才套用以下有效單價公式。符合這些前提時,有效優先費限制為「優先費上限」及「最高費率減基礎費」中的較小值,適用的有效單價再加回基礎費。這個限制尤其重要:當最高費率剩餘空間不足時,並不是還能完整支付原本設定的優先費。本文於2026年10月27日核對規範公式,下面逐步代入。

先算準備額,再用回執算實際費用
準備額按交易上限檢查,實費按收錄後回執計算,兩者分開核對。 這次假設帳戶有0.004 ETH,要送出一筆不轉出原生ETH的代幣合約互動。固定Gas Limit為80,000、Max Fee為40 Gwei、Max Priority Fee為2 Gwei;假設被收錄區塊的Base Fee為25 Gwei,最後Gas Used為52,000。全部是教學輸入,沒有實際廣播或真實回執。
第一步:固定一筆合約互動的教學輸入
送出前先看費用上限:80,000乘40 Gwei,換算為0.0032 ETH。本例另有0.004 ETH且原生ETH轉出金額為零,因此可通過這項準備額檢查。若交易同時轉出ETH,還要把轉出金額加進所需資金,不能只檢查費用。
這個計算回答「上限條件下是否有足夠資金」,沒有回答「最後一定花多少」或「一定會被收錄」。Gas估算也受執行狀態影響;若錢包估算報錯、合約或操作內容不明,就先查原因,不為了湊進現有餘額而刪掉安全餘量。

第二步:用較小值求有效費率
先算最高費率扣掉基礎費,40減25剩15 Gwei,再與優先費上限2比較,取較小的2。因此,本例有效單價是25加2,等於27 Gwei,而非40加2或直接把40全部當成實際單價。
算式可以寫成「有效優先費=min(2,40-25)=2」,再得到「有效單價=25+2=27」。min就是取較小值。這裡的25屬假設收錄區塊條件,不能在真實送出前拿一張較早截圖,保證稍後一定仍是這個數字。

第三步:用實際Gas用量核對扣費
假設這筆交易成功,回執記錄Gas Used為52,000、有效單價為27 Gwei,實際執行費便是52,000乘27再除以十億,等於0.001404 ETH。在沒有其他ETH資金變動的本例條件下,帳戶剩餘0.002596 ETH。
0.0032是事前上限,0.001404是假設實費,兩者差額0.001796 ETH,不能只憑這個減法就補寫一筆獨立「退款入帳」。協議有未用Gas及相關費用的結算規則,錢包顯示方式也可能不同;對帳應依實際餘額與回執,避免先把上限當成已扣款,再把差額當成另一筆已發生交易。
把同一筆費用拆開,基礎費部分是52,000乘25 Gwei,等於0.0013 ETH;有效優先費部分是52,000乘2 Gwei,等於0.000104 ETH,兩者合計仍是0.001404。這只是把同一筆實費分成兩部分,不能又把它們加在0.001404之外,造成重複計費。
本例沒有原生ETH轉出,才可以直接用起始0.004減實費。若你同時支付ETH給別人,就應另外扣轉出金額;代幣數量的變化也要另核,不把Gas費誤寫成代幣交易的獲利或虧損。

第四步:只改一個欄位,看看哪個結果會變
先只把Gas Limit提高到120,000,其餘仍用相同的52,000實際用量及27 Gwei有效單價。準備上限變成0.0048 ETH,已超過本例0.004 ETH餘額;因此固定0.004 ETH的這條分支應停止,不能記成能送出或已完成。另作純算式對照:只拿52,000乘27 Gwei,仍得到0.001404 ETH;這個乘法不代表資金不足的交易可以執行。提高工作量上限,與實際多做工作,是不同的變化。
再回到80,000上限,只把假設Base Fee改為39 Gwei。最高費率剩餘空間只有1,優先費便取min(2,1)=1,有效單價為40;相同52,000用量的實費是0.00208 ETH。這是另一個平行情境,不能拿來覆寫前面27 Gwei的結果。
若某個待收錄區塊的Base Fee已是41,而你的Max Fee仍是40,這筆交易便不符合該區塊的費率條件。此時應查看原交易、估算與錢包處理方式,不宣稱提高Gas Limit就能解決單價上限不足,也不保證調高某一個欄位便一定立即成交。
交易失敗,要先分清在哪裡失敗
沒被區塊收錄就遭拒絕,與進入區塊後執行失敗,費用結果不同。 Ethereum.org《Gas and fees》特別區分驗證階段拒絕及執行途中耗盡Gas,不能把所有紅色「失敗」訊息套成同一種扣費規則。
進區塊前被拒絕,與鏈上執行回退不同
例如一筆交易在進區塊前就因不符合有效性條件被拒絕,沒有鏈上執行用量可供計費;這裡談的是鏈上執行費,不推論某個平台是否另收服務費。先核對有沒有交易回執與收錄紀錄,不只看錢包畫面的一句提示。
若已收錄後合約執行回退,也就是REVERT,原定操作的狀態變更會被撤回,但已使用的計算資源仍可能計費。用本例27 Gwei,另假設失敗前計入30,000 Gas,費用便是0.00081 ETH;沒有得到原本想要的操作結果,不等於計算工作從未發生。
耗盡Gas與主動回退,不用同一個費用數字
若是執行途中耗盡本例80,000 Gas上限,也就是Out of Gas,按同一27 Gwei計算便是0.00216 ETH。它與前段30,000用量的回退是假設的不同失敗分支,不可把兩筆費用累加成同一筆,也不能說任何失敗都會剛好花完整個Gas上限。
要決定是否重試,先辨認是額度不夠、合約條件不成立、資金不足,還是費率條件不適用。單純提高Gas Limit不會讓一個本來不符合合約規則的操作自動成立,重複嘗試還可能累積新的費用。

為什麼不能只挑畫面上最便宜的費用
便宜必須放回相同網路、相同操作與可接受等待條件比較。只挑最小數字,可能改變收款路線,或把一個可執行操作改成容易失敗的輸入。
限額過低、估算變動與等待條件
Gas Limit太低可能使執行無法完成;費率上限不符收錄條件,則可能影響能否被納入。這兩種限制有不同單位,調整前先看清欄位。已送出的交易仍待處理時,也先查原交易,不立即用第二筆重複支付同一件事。
同一操作在不同時間,因網路需求或合約狀態改變,估算也可能不同。比較紀錄應保留當時條件,不拿今天的低費率倒填成昨天應該付的數字;本篇教學數字同樣不代表現在可取得的報價。
換到另一網路,先重查整個費用模型
Ethereum主網的單一執行費算式,不能直接當成所有二層網路的完整總費用。二層網路是協助擴充主網處理能力的另一層系統;OP Mainnet官方《Transaction fees》便另列資料費及適用配置下的營運費項目,本文於2026年10月27日核對。比較時應看該網路的完整估算,而不只比一個Gwei欄位。
即使另一網路較便宜,接收方也必須支援相同資產及路線。網路不符可能帶來比費用差額更大的處理問題,接續轉帳網路與到帳確認,把收款條件一起核清。

怎麼降低不必要支出,又不破壞原計畫
減少不必要的重複操作,比把每一筆的上限盲目壓低更值得先做。先理解自己要完成什麼,再決定哪些簽名與交易確實必要,不為了省一次費用而接受不理解的權限。
減少重複操作,先理解授權是否必要
某些應用操作會涉及代幣授權與後續支用,不一定只產生一筆交易。每一步是否需要鏈上費用,要按實際方式判斷;例如EIP-2612的Permit許可,在簽名、序號與期限等條件符合時,可以稍後由其他人提交鏈上。不要因為當下沒扣Gas,就把它當成單純登入。
反過來,也不宜為了少做一次授權,就直接給未知對象無限額。費用與權限是兩個判斷,權限管理接續代幣授權與撤銷,本篇的費用計算不替簽名內容背書。
把估算、上限與實費分欄記錄
對一筆交易,分開記送出前估算、Gas及費率上限、交易識別碼TxID、收錄後實際用量與有效費率,再核對ETH餘額。尚無回執時,實費留待確認;不要用零代替未知,也不要拿最高準備額冒充實際支出。 對照本例,可以依序讀出「餘額0.004、上限0.0032、假設實費0.001404、結算後餘額0.002596」。第一個數字是起點,第二個是事前限制,後兩個才屬於假設完成分支。若操作尚在等待,就只保留前兩項及原交易識別,不能預先填入完成分支的餘額。
核對回執時,交易識別、網路及成功狀態也要與原操作一致。找到一筆費用接近的交易,不代表已找到自己的那一筆;實際用量與有效費率應來自同一筆已收錄交易。若錢包只顯示估算,尚未取得可核對的收錄結果,就保留等待狀態,不用本篇假設值代填帳目。
本文供計費理解與教學演算,不構成投資建議。所有金額與費率均為假設,真實網路、操作及代付方式可能不同;估算不保證收錄、成功或固定成本。