Ethereum Gas Fee Market
We know that the blockspace is limited.
Let us look at what happens when there are more transactions than the available block space.
Since ETH transfer costs 21,000 gas units and there are only 25,000 gas units left in the block, only one can make it to the next block.
it is NOT decided on first come first serve basis.
Instead, it is up to the miners(validators) to pick up and order the transactions in the block. Since miners are motivated to maximize profits, they would prefer to pickup transactions that pays high gas price per unit.
In this case, it is more profitable for the miners(validators) to include the transaction #0xa1d3.
Essentially, this created a fee auction market wherein users would bid for space in the blocks and the miners(validators) would pick up the highest bidders. This created few challenges.
- Users must guess the network congestion.
- Users have no easy way to see what other users are bidding.
If they underestimate, then the transaction gets stuck in the mempool. If they overestimate, then they end up paying more.
As a result, most users pay needlessly more to process their transaction.
Consider the below example where two transactions in the same block paid different transaction fees.
In the above example, the gas fees paid for the second transaction were ~60% higher than the first transaction, even though both of them were ETH transfers and processed in the same block.
The inefficiency of the first price auction system was a topic of discussion.
What's the fix? EIP-1559
🏋️ Let's query the chain
Can you retrieve min and max gas price (in gwei) paid in the block# 12465199?
Hint: Solve https://dune.com/queries/1242126