Exploring blocks, gas and transactions

A focus on the recent high gas prices, towards understanding high congestion regimes for EIP 1559.

Barnabé Monnot https://twitter.com/barnabemonnot (Robust Incentives Group, Ethereum Foundation)https://github.com/ethereum/rig

Table of Contents

While real world gallons of oil went negative, Ethereum gas prices have sustained a long period of high fees since the beginning of May. I wanted to dig in a bit deeper, with a view to understanding the fundamentals of the demand. Some of the charts below retrace steps that are very well-known to a lot of us – these are mere restatements and updates. The data includes all blocks produced between May 4th, 2020, 13:22:16 UTC and May 19th, 2020, 19:57:17 UTC.

Onur Solmaz from Casper Labs wrote a very nice post arguing that since we observe daily cycles, there must be something more than one-off ICOs and Ponzis at play.

We will see these cycles here too, and a few more questions I thought were interesting (or at least, that I kinda knew the answer to but never had derived or played with myself). This is an excuse to play with my new Dappnode full node, using the wonderful ethereum-etl package from Evgeny Medvedev to extract transaction and block details. This data will also be useful to calibrate good simulations for EIP 1559 (more on this soon!)

Block properties

Gas used by a block

Miners have some control over the gas limit of a block, but how much gas do blocks generally use?

There are a few peaks, notably at 0 (the amount of gas used by an empty block) and towards the maximum gas limit set at 10,000,000. Let’s zoom in on blocks that use more than 9,800,000 gas.

We can also look at the proportion of gas used, i.e., the amount of gas used by the block divided by the total gas available in that block. Taking a moving average over the last 500 blocks, we obtain the following plot.