On-chain operations such as transfers, token approvals, and swaps on Ethereum, EVM-compatible networks, and Layer 2 networks consume computational resources and require a fee. This fee is commonly called a miner fee or gas fee.
Miner fees are collected by the corresponding blockchain network. imToken does not collect any portion of these fees.
1. What are miner fees?
Miner fees primarily depend on the amount of gas a transaction actually uses and the price per unit of gas.
Think of an on-chain transaction as a car journey:
- Gas: Like the fuel a car consumes, gas measures the computational resources needed for a transaction. More complex transactions generally use more gas.
- Gas Price: Like the price per liter of fuel, the price of gas is typically affected by factors such as network congestion.
- Gas Limit: Like the maximum amount of fuel allocated for the journey, this limits how much gas a transaction can use.
- Gas fee: The network fee paid for the computational resources actually used by the transaction.
- The basic formula is: Actual gas fee = Gas used × Actual price per unit of gas.
When the network is congested, setting a higher price per unit of gas generally helps your transaction get included in a block sooner.
Which token is used to pay miner fees?
Miner fees are generally paid in the network’s native token. For example:
Ethereum mainnet uses ETH; Arbitrum One and Base use ETH on their respective networks; Polygon uses POL; BNB Smart Chain uses BNB; Arc Mainnet uses USDC.
💡 On some networks or for certain transactions, fees may be sponsored by a third party or paid in a non-native token. Check the transaction page for the actual fee token and details.
2. How to set miner fees in imToken
Depending on the network, miner fee settings in imToken generally follow one of two mechanisms: EIP-1559 or legacy gas pricing. After opening the miner fee settings page, check the parameters displayed and follow the corresponding instructions below.
EIP-1559 Mechanism
EIP-1559 divides the price per unit of gas into a base fee and a priority fee:
- BaseFee (base fee): Automatically calculated by the network based on block utilization.
- PriorityFee (priority fee or tip): Provides an incentive for validators to prioritize your transaction for inclusion in a block.
imToken lets you set miner fees through the “Set priority” and “Customize” options.
💡 In most cases, the default “Standard” preset in imToken is sufficient. Only use Customize if you understand the relevant parameters.
Set priority
Under “Set priority,” imToken displays presets based on the network and current data, such as “Fastest” and “Standard.” Some networks also offer an “Economy” preset. Choose a preset based on current network conditions and your needs.
If you want your transaction confirmed as soon as possible, choose the fastest preset. If confirmation time is less important, choose “Standard” or a lower preset. Higher fee rates generally help transactions get included in a block sooner, but the exact confirmation time still depends on network conditions.
Customize
To adjust miner fees manually, open the Customize page and set the following parameters:
- MaxFee: The maximum total price you are willing to pay per unit of gas, including BaseFee and the actual PriorityFee.
- MaxPriorityFee: The maximum priority fee you are willing to pay per unit of gas.
- Gas: The maximum amount of gas the transaction can use. imToken automatically estimates this based on the transaction details.
BaseFee is determined by the network and cannot be changed directly by users. The actual PriorityFee is constrained by both MaxPriorityFee and MaxFee.
The calculation can be simplified as follows:
- Actual price per unit of gas = BaseFee + Actual PriorityFee
- Actual gas fee = Gas used × Actual price per unit of gas
Note:
- MaxFee is only the upper limit on the price per unit of gas. It does not mean the transaction will necessarily be charged at that price. The actual fee can only be determined once the transaction is complete.
- When setting a custom fee rate, MaxFee needs to cover the BaseFee at the time the transaction is included in a block, with some room for PriorityFee. If it is set too low, your transaction may wait a long time to be included in a block.
Legacy Mechanism
Legacy uses a single Gas Price setting, allowing you to directly specify the price you are willing to pay per unit of gas.
imToken also provides “Set priority” and “Customize” options for this mechanism.
Set priority
Under “Set priority,” imToken offers two presets: “Standard“ and “Slow.“ Choose one based on current network conditions and your needs.
Setting a higher Gas Price generally helps your transaction get included in a block sooner, but the exact confirmation time still depends on network conditions.
Customize
To adjust gas fees manually, open the Customize page and set the following parameters:
- Gas Price: The price you are willing to pay per unit of gas.
- Gas: The “Gas” field on the page usually refers to the Gas Limit, which is the maximum amount of gas the transaction can use.
Legacy gas fees are calculated as follows:
- Actual gas fee = Gas used × Gas Price
3. Things to keep in mind when setting miner fees
1. Setting fees too low may cause long delays
If Gas Price, MaxFee, or MaxPriorityFee is set too low, your transaction may remain pending for a long time or may not be included in a block at all.
Some DApp transactions also have a deadline. If confirmation takes too long, the transaction may fail because the deadline has passed, even if it is eventually included in a block. Even when a transaction fails, the blockchain network still charges for the gas consumed during execution.
2. The fee shown on the page is an estimate
When you initiate a transaction, imToken estimates the gas fee based on current network conditions and the transaction details. Since network conditions and the final amount of gas used may change, the estimated fee shown on the page may differ from the actual fee. Once the transaction is complete, you can check the actual gas fee in the transaction details or on a blockchain explorer.