Proposal: lower default gas price to 0.000000007 ETH
TL;DR: ETH price is up; let's lower default gas price from 20 to 7 Shannon (0.000000007 ETH) to keep tx fees low.
EDIT: As others have pointed out in comments below, with optimal uncle inclusion the equilibrium point for miners (profitability of fees vs uncle stale rate) would be 11 Shannon/gwei. Perhaps the default gas price should be set equal to or slightly higher than this.
We've all seen the recent price rise to $50 from $10-12 at the beginning of the year. While there's no guarantee the price will remain at this level, chances are it could (and even go higher) given the growing traction of Ethereum.
While the Ethereum consensus protocol have dynamic transaction fees in the form of configurable gas price for both users and miners, we are not yet at the point of having a dynamic and responsive fee market. In practice, many miners run default settings and accept gas price >= 20 Shannon. Likewise, many wallets set 20 Shannon as the default and many (especially new) users do not know they can set this lower.
Unfortunately, this means default values still have a lot of power.
Proposal: lower the default from 20 to 7 Shannon:
- Clients (geth, parity, etc) set this as the default gas price in the default miner strategy (command line flags which explicitly set gas price remain unaffected - miners using these would not be affected by the upgrade)
- Miners running non-default strategies are encouraged to accept txs with >= 7 Shannon gas price.
- Wallet developers are encouraged to set 7 Shannon as default gas price.
A ~3x lower gas price attempts to strike a balance between recognizing the recent 4-5x (and potential for higher) ETH price increase while leaving room for it going lower.
In 2016, when ETH rose from $1 to peak at $14, client & wallet developers came together and lowered the default gas price from 50 Shannon to 20. The decision was also an attempt to strike a balance between the increase in ETH price while also remaining prepared for potential price corrections. This turned out to be a good decision - it enabled users to continue enjoying cheap transaction while also costing the DoS attacker(s) significant amounts when they spammed the network around DEVCON2. It also remained a reasonable default when ETH bottomed at $6-8 last year.
Now, 20 Shannon is arguably too high and is equivalent to a cost of $0.02 for a plain value transfer. While this is substantially lower than Bitcoin, it is also much higher than the tx fees we have all enjoyed since Ethereum launched.
Moreover, the last year developers of clients such as geth and parity have implemented significant optimizations, making the clients faster and more efficient, consuming less resources. This equals less CPU and electricity cost per gas validated for users running full nodes as well as less opportunity cost for miners validating (potentially expensive) txs in their block-to-mine.
Finally, we're seeing a ton of new users coming over from Bitcoin to enjoy cheaper tx fees, both for regular value transfers and for smart contract applications. Lowering the default gas price makes sure we capture this new traction and provide these new users with as good of an experience as we ourselves have enjoyed.
Let me know what you think!
Average gas price chart: https://etherscan.io/chart/gasprice
Posted Mar 27, 2017, 5:02 PM UTC · edited
I've been thinking hard about this the last few days.
A while ago, Vitalik did an analysis on gas prices and uncle rates, and arrived at an equilibrium gas price of 33 shannon; below that, a miner loses out on average by including a transaction because of the increased risk the block will become an uncle.
Critically, note that in Vitalik's analysis the current fiat price of ether has no bearing; the only inputs that determine the equilibrium gas price are the miner reward, the uncle reward, the network propagation speed, the uncle inclusion strategy, and the efficiency of client implementations. That means that an increase in ether price does not automatically mean that miners should lower their minimum gas price.
You're right that implementations have been optimised further since then - particularly as a result of the DoS attacks, but also due to ongoing improvements, so it's likely that the equilibrium gas price is lower than it was then.
So what I'd like to see personally is:
There is actually a calculator that makes the same analysis on an ongoing basis. Now the equilibrium gas price is down to 10 shannon.
Oh neat, I didn't know about that.
If it used to be 20 or 30 shannon and now it is 10 shannon, one must wonder if gas is the right metric to evaluate the odds of block being uncled.
Maybe block size (in bytes) also plays more important role. I know size contributes to gas consumption. Still, maybe not enough. Maybe other operations are mispriced/overpriced.
How do you explain such a big change?
y did the equilibrium gas price go down? or why is uncle rate down?
Right, though if the equilibrium at the time of that analysis was 33 Shannon, it then also shows that most miners have for quite some time accepted txs below the equilibrium. This would have been an irrational choice if we exclude other game theory variables.
For example, another potential variable is miner interest in low tx fees for the purpose of increasing network traction to cause a higher ETH price - increasing their profitability until enough new miners join to balance out the price increase.
Agreed on all your points - a revisit of the equilibrium analysis is needed - perhaps 7 Shannon is too low and a gas price closer to the limit of 11 Shannon would be a more conservative choice for a push to a new default value.
I wouldn't want to rely on that too much because it's essentially an altruistic impulse. Unless the miner is extremely large, its personal gas price has very little impact on the ETH price, and a much larger impact on the miner's own profitability, so the selfish incentive is to pick a higher price (or mine empty blocks if the offered price is too low).
People in real life are often more altruistic than game theory generally assumes, but that's not something we can easily calculate, and altruism tends to get driven out by competition.
Ah, yes. The tragedy of the commons
One issue with this approach is that uncle inclusion mechanisms have a big impact on the equilibrium price - if they are optimal, the equilibrium price is around 10 gwei and without them it's close to 20gwei - but miners have little incentive to optimize uncle inclusion because so few transactions are offered with low gas prices. So I think you do need a way to incentivize miner efficiency by having users start to offer more transactions with low prices. right now there are three major mining pools that accept 7gwei gas price but the transactions take about 2 minutes to confirm.
Agreed! We should also work on improving uncle inclusion strategies in major clients.
[deleted]