With the incoming EIP 1559 transactions, senders will have the possibility to include a miner fee into their gas specifications to incentivize miners to include their transactions into the block. Some reading I've done states that under normal conditions there is no incentive to set a tip higher than the bare minimum (base fee) unless there is congestion in the block. What I fail to grasp is how then miners decide which transaction to mine first if everyone pays the same base fee and the miner fee is only used when there is congestion. If you have a very high miner fee will this make that the miner will choose to mine your transaction first? Otherwise, since the base fee is the same is it totally random so that there is no way to try and be first if you're in a rush and need your transaction to go through rapidly?
-
I guess the miner will choose the tx with higher miner fee.– zjkCommented Jul 1, 2021 at 12:33
-
I might have misinterpreted the sentence "under normal conditions there is no incentive to set a tip higher than the bare minimum (base fee) unless there is congestion in the block". I think the miner fee is useless if you only want to get included in the block when there is no congestion but useful if you actually want to be choosen first be the miner.– qubitzCommented Jul 1, 2021 at 22:00
-
Related: ethereum.stackexchange.com/questions/103274/…– eth ♦Commented Jul 12, 2021 at 3:13
2 Answers
Some reading I've done states that under normal conditions there is no incentive to set a tip higher than the bare minimum (base fee) unless there is congestion in the block.
Correct!
If you have a very high miner fee will this make it that the miner will choose to mine your transaction first?
A high miner fee (aka tip or priority fee) will likely lead to your transaction being included in an early block: miner sorting logic largely unchanged.
If you need a transaction to go through rapidly, a tip of 2 or 2.001 gwei seems enough:
2 gwei is probably a very good default “you will get in the next handful of blocks” value. 1 gwei is likely a good “slow” value.
To add what @eth said, you should actually set it to at least ~2.5 Gwei to account for MEV-Heavy Blocks
See web3.js https://github.com/ChainSafe/web3.js/blob/1.x/packages/web3-core-method/src/index.js#L883
maxPriorityFeePerGas = tx.maxPriorityFeePerGas || '0x9502F900'; // 2.5 Gwei
See Ethers.js https://github.com/ethers-io/ethers.js/commit/7175e2e99c2747e8d2314feb407bf0a0f9371ece
https://github.com/ethers-io/ethers.js/issues/1817
Source for Calculations for the above values can be found here: https://notes.ethereum.org/@barnabe/rk5ue1WF_