Analyzing Ethereum Gas Fees
By Professor Aleksandar Kuzmanovic, Co-Founder & Chief Architect at bloXroute Labs
We analyzed the fees in Ethereum by comparing two periods, a week in January 2020 and a week in August 2020.*
This article was originally posted in Our Network #38.
Absolute and Relative Fees
Over the two week period examined, fees in Ethereum increased ~10x and the ratio between the highest fee paid and the bottom 5% remained constant. However, while users are paying more gas fees in absolute terms, some users are paying less in relative terms (i.e. not overpaying as much). The key is to have accurate and timely transactions data and services. bloXroute provides a set of transaction APIs that help users optimize their fees.
Figures 1 and 2 show the distribution of (absolute) Ethereum fees. While the shapes of the curves are similar, the x-axis in Figure 2 is 10x that of Figure 1. Hence, the fees in Week 2 are approximately 10x higher relative to Week 1.
From analyzing the two week period, we found that during high-fee periods, more users tend to optimize their fees. Figures 3 and 4 show the fees across the two weeks, relative to the bottom 5th percentile fee in a block. In both scenarios the ratio between the 100th percentile (the highest fee) and the 5th percentile, is approximately 100x.
However, the important insight is the 50th percentile fee (blue line in the figures): In Week 1, the ratio of 50th to 5th percentile is approximately 5x in the median case, while the ratio of 100th to 50th percentile is approximately 20x. In Week 2, this changed to approximately 2x and 50x, respectively. Practically, this means that in Week 2, the half of the users that paid fees below the 50th percentile in a block, managed not to overpay too much (they overpaid by less than 2x relative to the 5th percentile).
Quantifying Over-payments
Figures 5 and 6 quantify over-payments, per block, in two explored weeks. In Week 1, fee over-payments are at 1000% (10x) relative to the bottom 5% fee in the median case, while in Week 2 fee over-payments are at 500% (5x) in the median case. While this is a positive trend, much more can be done, given that a lot of money is still “left on the table,” particularly now that the absolute fees are 10x higher than they used to be.
Trade-offs in Fee Prediction
We evaluate the effects of the timeliness of data used to predict fees in a block. To that end, we evaluate an estimator that utilizes contents of a previous block to predict fees in the next block. While our goal is to create a simple benchmark of how a slight time lag (of 12 seconds on average) affects prediction, we note that many existing predictors operate at much longer time scales.
In Figure 7 and 8, we show the results for Week 2 only. Figure 7 shows that if one repeats the minimum (5th percentile) fee from the previous block (x-axis), there is a 35% chance (y-axis) that the transaction won’t make it in the next block. Yet if it does get included, Figure 8 shows that the overpay will be ~ 20% (y-axis). On the other hand, if one chooses to pay at the 60th percentile fee level of the previous block, there is a high probability (~97%) to make it in the next block, but the over-payment is 1000% (10x) as shown in Figure 8.
Conclusion
This stresses the need to have accurate and timely transactions data and services. While knowing the latest block fast can help you optimize fees for the following block, knowing transactions as they occur can further help users optimize their fees. bloXroute provides a set of transaction APIs that help users address the above tradeoff: concurrently save on fees and reduce the miss probability to close to zero.
* For each mined block evaluated, we exclude the bottom 5% of fees given that they can often be too low and bias the results.