How gas fees, limits, and network fees work
Baguhan sa crypto at web3?
Pumunta sa MetaMask Learn para sa isang simpleng karanasan sa pagkatuto na partikular na idinisenyo para sa mga baguhan sa web3. Libreng-libre ito, available sa maraming wika, at may kasamang kapaki-pakinabang na tools gaya ng mga simulation upang matulungan kang maging pamilyar sa MetaMask.
Gas (or network fees) is the unit of measurement for how much computational work is required to process transactions and smart contracts. Mahalagang bayad sa transaksyon, ang termino ay nagmula sa Ethereum, kung saan ang konteksto ay tumutukoy sa pagtutuos na isinagawa sa Ethereum Virtual Machine (EVM). Mula noong maitatag ang Ethereum, napakarami nang compatible sa EVM (at hindi compatible sa EVM!) na mga network ang nagsilabasan at nagpatibay ng mga katulad na modelo.
Other networks like Solana and Bitcoin also have network fees, though they may be calculated differently. Luckily, MetaMask automatically calculates the network fee for you when you confirm a transaction, taking the guesswork out of it.
Ang termino ay may pagkakahalintulad sa gas na nagpapaandar sa makina ng isang kotse: ito ang pagbagu-bago, paminsan-minsan ay mahal na gastos ng pagpapatakbo. Ang mga mas kumplikadong smart na kontrata ay nangangailangan ng mas maraming gas para mapagana ang kanilang pag-compute, tulad ng isang mas malaki, mas makapangyarihang kotse na nangangailangan ng mas maraming gas upang tumakbo.
Ang paraan para sa pagkalkula ng mga bayarin sa gas ay nag-iiba depende sa network. For example, on Ethereum Mainnet, you pay a base fee for every unit of gas, which is burned (read: it is deleted, and disappears) upon successful completion of the transaction. Karagdagan pa sa base fee, magdadagdag ka ng priority fee, muli sa bawat yunit ng gas, ang halaga nito ay depende sa kung gaano kabilis mo gustong maganap ang transaksyon.
Sa malawak na hanay ng mga available na network na katugma sa EVM, ang gas, o mga alternatibong gumaganang katulad nito, ay naging karaniwang paraan ng pagkalkula ng mga gastos sa transaksyon. Fees are paid in the network's native token: for example, any transaction on Ethereum requires ETH; using BSC requires BNB; using Polygon requires POL (previously MATIC). Some networks have adopted Ethereum's EIP-1559 model wholesale, such as Polygon, while others have made adjustments, including Avalanche, for their C-Chain (which burns both the base fee and priority fee, rather than just the former).
On Ethereum Mainnet, BNB Smart Chain, Polygon, Arbitrum, and Base, MetaMask allows you to pay the network fee using different tokens. This means you do not need to have enough of the network's native token to cover the network fee, but can do so using other tokens.
On the backend, MetaMask will swap your selected token for the network's native token, and then use that to pay the network fee. MetaMask uses the simplest, cheapest method to do this.
On the frontend, you won't need to worry about swapping a token for the network's native token, because MetaMask will do it for you. Simply select the token you want to use to pay the network fee, and MetaMask will handle the rest.
Para sa karagdagang impormasyon, tingnan dito.
If you want to read a more in-depth look at how gas works on Ethereum, see here.
In MetaMask, you'll see 'Network fee' in the transaction confirmation screen. This is the gas fee.
Here are some details for dealing with gas:
The gas limit (units of gas used)
Ang limitasyon ng gas ay ang maximum na bilang ng mga yunit ng gas na handa mong bayaran para makapagsagawa ng transaksyon o operasyon ng EVM. Nangangailangan ang iba't ibang operasyon ng iba't ibang dami ng yunit ng gas. Ang isang normal na transaksyong nagpapadala ng ETH o isang token ay karaniwang nagkakahalaga ng 21,000 gas, samantalang nangangailagan naman ng 45,000 ang pag-apruba ng ERC-20 token. Maraming mga network, tulad ng EVM-compatible blockchain na Harmony, ay gumagamit ng magkaparehong modelo kung saan ang mga karaniwang transaksyon ay nagkakahalaga rin ng 21,000 gas.
Kailangan ko bang i-edit ang limitasyon ng gas?
Hindi! Awtomatikong itinatakda ng MetaMask ang iyong limitasyon ng gas depende sa transaksyong sinusubukan mong isagawa. Sa karamihan ng mga kaso, magiging sapat ito para makumpleto ang iyong transaksyon. If you want to check or edit it, make sure you have advanced gas controls turned on and hit the button next to the gas information on the transaction confirmation screen that reads 'Market', 'Low', or 'Aggressive'.
The base fee
Bawat block sa Ethereum network ay may batayang bayad na tinutukoy ng network demand: ang batayang bayad batay sa laki ng block ng block bago nito, kumpara sa isang target na laki ng block (kung saan tumutukoy ang laki sa kabuuang halaga ng gas na nagamit para sa lahat ng transaksyon na kasama sa block). Kung lagpas sa target ang laki ng nakaraang block, tumataas nang 12.5% ang batayang bayad para sa susunod na block, na nag-iiwan sa iyo, ang user (o ang iyong wallet), ng ganap na katiyakan tungkol sa batayang bayad ng susunod na block. Dapat matugunan ng iyong kabuuang bayad sa gas ang presyong ito bilang minimum upang maisaalang-alang na maisama sa block.
The priority fee
Ang priority fee, na tinatawag ding "miner tip", ay nagbibigay-insentibo sa miner para unahin ang iyong transaksyon.
Naturally, whether this does actually go to a miner depends on the consensus mechanism they use: Ethereum Mainnet became a Proof of Stake network following the Merge in September 2022, so the priority fee goes to validators instead of miners.
The max fee
Ang pinakamataas na fee ay ang kabuuang, pandaigdigang halaga na binayaran para sa iyong transaksyon. Ito ay kinakalkula bilang: (base fee + priority fee) x mga yunit ng gas na ginamit. Una nang itinatakda ng MetaMask ang halagang ito batay sa kasaysayan ng nakaraang block. Gayunpaman, maaaring i-edit ng mga user ang halagang ito sa pamamagitan ng mga custom na setting (tingnan sa ibaba). Ang pagkakaiba ng max fee kada gas at (batayang bayad + max na bayad sa priyoridad kada gas) ay “nire-refund” sa user.
Additional Concepts
Gwei
Ang Gwei ay isang yunit ng ether, ang pinakamaliit na denominasyon, na kumakatawan sa gigawei (o 1,000,000,000). Ginagamit ang Gwei para sa mga bayad sa gas, o sa halip ay mga pagbabayad na ginawa ng mga user upang mabayaran ang enerhiya sa pag-compute na kinakailangan upang maproseso at ma-validate ang mga transaksyon sa Ethereum blockchain.
May posibilidad din na kalkulahin ng ibang mga network ang mga gastos gamit ang gwei -- halimbawa, Fantom, Harmony, at Avalanche.
Slippage
Ang slippage ay ang inaasahang pagkakaiba sa porsyento sa pagitan ng isang na-quote at isang naisagawang presyo.
Gas fee
Ang bayad_sa gas_ay tumutukoy sa bayad sa transaksyon sa Ethereum blockchain. Ito ang binabayaran ng mga user para mapatunayan, o makumpleto ang kanilang transaksyon.
Base fee
Binuo ng protocol. Kinakatawan ang minimum na 'gasUsed' multiplier na kinakailangan para sa isang transaksyon na maisama sa isang block (ibig sabihin; para makumpleto ang isang transaksyon). Ito ang bahagi ng bayad sa transaksyon na nawala.
Advanced gas controls
If you want to get into the nitty-gritty of your gas controls (this can be helpful if you're testing a dapp, for example), MetaMask can do that! See the full article here.
Out of gas errors
A problem you may encounter is a transaction failing with an "out of gas" error like in the screenshot below.
This means that all the gas units up to the limit you set were used up before the transaction could be fully processed.
To avoid another "out of gas" error, you will need to increase the gas limit of your next transaction. This can be done just before sending your next transaction by customizing gas settings.
MetaMask gas limit recommendations
The vast majority of the time, the gas limit that MetaMask automatically sets for your transaction will be sufficient.
Selecting a gas limit is mostly a personal preference, but it may be helpful to review recent successful transactions of the executing smart contract to understand what is a sufficient gas limit for your transaction.
Recommended steps:
- While reviewing your transaction with the "out of gas" error on Etherscan, click the link to the Contract address in the "To:" section directly above the out of gas error
- Scroll down to the list of Transactions and click on the Txn Hash of any completed transaction (non-pending)
- Ensure that the transaction shows Status as Success. If not, go back and choose another transaction.
- Click on Click to show more
- Make a note of the Gas Limit that was chosen for the transaction
- Optional: repeat steps 1-4 to better estimate a gas limit that will be sufficient for your transaction
- Once you have a good idea of a value for your gas limit, make sure to adjust the gas limit when sending out your next transaction.