Competition for Ethereum block space is extremely fierce, and transactions submitted within the last few seconds between blocks have an information advantage.

Written by: Tripoli

Compiled by: 0x11, Foresight News

Earlier this week I asked a question in the Ethereum Foundation’s Reddit AMA and one of the responses caught my eye:

I look forward to seeing changes in deal packaging times after the merger!

Theoretically, the average block time should drop by about a factor of two after the merge, since the expected time for the next block is now 6 seconds instead of 13 seconds before, and the more regular block times also reduce the peaks. In my personal experience, transactions are being packed very fast today, even compared to the period after EIP-1559 and before the merge. It will be interesting to see the data in detail.

- /u/vbuterin

Bitcoin block time dynamics are more studied and data availability is higher. Therefore, I will transfer Ethereum’s proof-of-work to Bitcoin for analysis [1]. The two systems are very similar, with the main difference being that difficulty adjustments keep Bitcoin’s average block time at 10 minutes, while Ethereum’s average block time is kept at around 13 seconds [2].

However, the block time average is a huge simplification. The media often refers to Bitcoin miners as a group of computers solving a complex math problem, but this is not the case. Implicit in the word solve is the popular analogy that suggests mining rigs are continually getting closer to a solution, but this is not how crypto mining works. The simplest hashing analogy is tossing a coin and trying to get 77 heads in a row [3]. Incorrect hashing does not provide meaningful progress, which is a version of the gambler's fallacy: all hashes are independent, and when hashing fails there is no progress.

The independence of attempts and the resulting lack of progress is described as amnesia. Bitcoin miners are always just as likely to find the next block, regardless of how much time has passed since the last block: the average time for the next block to appear is always 10 minutes later.

If you’re interested in data on the variance of Bitcoin’s block intervals, Jameson Lopp wrote a great article a few years ago. The short version is that, ignoring edge cases from very fast blocks, the block interval follows an exponential probability distribution.

Bitcoin block time variance: theory and reality; Source: Jameson Lopp

To discuss transaction inclusion time, we need to add another layer to our analysis. The naive statement is that when a Bitcoin transaction is submitted, it should be included in the next block, which will be completed within 10 minutes on average; therefore, the inclusion time should be 10 minutes. In practice, the competitive nature of block space distorts the inclusion time and challenges the assumption of interchangeability.

The chart below shows the climb in pending transactions on September 2, 2022. Each break or drop in the chart indicates that a new block was discovered and a batch of the most valuable transactions were processed. For convenience, the vertical lines of the grid are spaced at 10-minute intervals, which is the average Bitcoin block time.

Bitcoin Mempool

The graph shows an atypical but not uncommon gap in block discovery. From 10:20 to 12:18, only two blocks were discovered, instead of the expected twelve.

While it may seem safe to send a 12 sat/vB transaction at 10:20, it may not be processed until 13:00, at least 8 and possibly as many as 11 blocks later. Two sources of latency are block time variance and asymmetric time information, where transactions submitted later have the advantage of additional information and are able to pay larger fees to jump the transaction queue.

Taking a random sample of slowly discovered blocks and analyzing the transactions they contain, a clear pattern emerges between the time at which transactions are committed and the relative density of transactions included in the next block [4]. Slow blocks contain about 50% more transactions from the time bin immediately before the discovery block than from the time bin immediately after the previous block.

In stark contrast, if we look at fast blocks, the distribution of commit times is much more even [5]. This suggests that time competition in fast blocks is meaningless.

Most blocks are discovered pretty quickly, so does this matter?

If we calculate the expected block time, the contribution of long tail blocks is surprisingly large. If we calculate the average block time but ignore the outliers like 20+ or ​​30+ minutes, the expected block time drops to 6-8 minutes.

Regarding packing time, the time competition for block space basically ignores these long-tail blocks. For example, if we assume that transactions older than 20 minutes are replaced by new higher-fee transactions, then the average packing time for transactions entering the first block should theoretically drop to only 6 minutes.

In reality, it didn’t go down to 6 minutes. We see in the slow block distribution that transactions are not being fully replaced, but I would expect the first block time to be in the 8-9 minute range rather than the naive 10 minute approximation.

Further calculations of replaced transactions would require a more comprehensive data analysis than provided in this article (heavily dependent on trends in block space demand, subsequent random rollovers of block intervals, etc.), and the result would likely be a multi-peaked harmonic distribution.

Returning to Proof-of-Stake Ethereum, assuming non-competitive blockspace, a constant 12 second block interval implies an average block time of 6 seconds [6] (compared to 13 seconds in Proof-of-Work).

However, competition for Ethereum block space is extremely fierce.

Even with a constant block interval, we appear to be seeing strong competition for block space, even more than the competition for Bitcoin’s long-tail block space. All of this happens within seconds, repeating every 12 seconds.

So, are block times faster? I guess this would depend on how one defines block time. If the first block on Ethereum is dominated by transactions submitted in the last few seconds of the block interval, then it is not clear to me that the decrease in variance would make a meaningful difference. On the other hand, if we are talking about a single transaction whose priority fee is high enough to ensure its inclusion, then the expected block time should decrease from 13 seconds to 6 seconds [7].

Note:

【1】The variance of an exponential probability distribution is proportional to the square of the block time, so the variance of Bitcoin block time is (600/13)^2 = 2130 times that of Ethereum PoW blocks. Perhaps this explains the relative lack of analysis of Ethereum block time.

[2] This metric assumes that Ethereum is not in a hard fork window, in which block times begin to increase exponentially to force miners to adopt the change.

[3] As of this writing, the 30-day average hash rate is 250.75 million TH/s, so there are 250.75×E6×E12×(60×10) = 1.5E23 hash attempts in a 10-minute block. To find a coin flip equivalent, we take a base-2 logarithm, which is equivalent to 76.9 consecutive coin flips.

[4] The slow blocks in this sample are a pseudo-random sequence found between December 22, 2022 and January 12, 2023, consisting of 40 blocks with block intervals between 42 and 75 minutes.

[5] The fast blocks in this sample are a pseudo-random sequence of 86 blocks found between December 22, 2022 and January 12, 2023, with block intervals ranging from 2.5 minutes to 6 minutes.

【6】If we ignore empty blocks due to validator errors, there is no change.

【7】Unfortunately, pre-merge data appears unreliable, and while this may simply be due to the ultra-competitive nature of block space combined with block time differences, I don’t feel confident enough to publish it.