My Authors
Read all threads
This whole "what is ETH supply" thing is a silly gotcha that doesn't make much sense if you understand how Ethereum works. It's no better than the silly gotchas Schiff and Roubini level at bitcoin.

We can do better. Let's look at the details...

1/
First of all a block explorer is a very limited view of any blockchain. These are user-interface tools that abstract important details and translate them for the user's benefit. They each have a point-of-view that is the result of their data collection and analysis methodology
/2
You can easily see how this plays out in Bitcoin too, if you've paid any attention to all the errors in popular blockchain explorers over the years. Take a Bitcoin metric like "current hashrate" and you will find a dozen different answers depending on where you look

/3
There's also the fact that Ethereum uses an account-balance based system instead of a coin-fragment (UTXO) system. That means that counting current ETH in circulation is not as simple as finding all UTXO in Bitcoin. Nevertheless it is possible - you just have to scan the chain
/4
Then there's the nuance of burn addresses. Where in Bitcoin there are some assumed burn addresses, there's none universally recognized. In Ethereum however, the 0x0 address (used for contract registration) is in effect a burn address. Do you count that ETH? Some do some don't

/5
Bitcoin does 1 block every 10 minutes. Ethereum does ~40 in that time. So exactly when you ask the question, will determine what answer you get. It won't be a stable answer for 10 minutes, it will change every 15-30 seconds or so.

/6
Then there are "uncles". In Bitcoin, PoW is a winner-takes-all mechanism. Not in Ethereum, which uses a Greedy Heaviest Observed Tree (GHOST) protocol to include stale blocks with a lower reward. These are caller "uncles" or "ommers"

/7
This is a critical point to understand: ETH supply issued as rewards doesn't go 100% to the winning block each confirmation. In Ethereum, up to 87% of the block reward goes to uncles, and some is further distributed to nephews (children of uncles). Part also goes to the parent
/8
This mechanism serves two purposes:

(1) it allows much faster block times (40x of bitcoin), without creating a whole mess of stale blocks that get no reward. Ethereum doesn't discard stales, it rewards them

/9
(2) It acts as a sort of on-chain mining pool mechanism, since it doesn't penalize second-finish miners with a zero reward. This makes lower-hashrate miners able to compete as solo miners without losing potential reward

/10
Ok I lied, it's 3 purposes -
(3) The rewarding of uncles reduces the incentive of mining empty blocks, since the race is not winner-takes all.

/11
It's important to understand that uncles arrive with a slight delay from the parent block and are incorporated on an "eventual" basis up to 6 blocks after the parent. This means the issuance at any height isn't finalized until a few blocks later, when all uncles are counted.
/12
The consensus mechanism can count the *exact* issuance of ETH, as long as you set a specific block height that has had all it's uncles counted and use that as a point of reference.

/13
But just like Bitcoin's mempool, not all nodes see all uncles at the same time, meaning that if you are asking for a real-time snapshot, you will get different answers. That's not because there isn't consensus, it's because consensus on uncles is a few blocks behind the tip.
/14
Therefore, your methoology for calculating ETH supply will determine your answer. The exact timing (reference point) of your question will determine your answer and it will change every 15-30 seconds. Whether you count burned ETH will determine your answer.

/15
On top of all that you have to scan the blockchain to create a correct current state, based on the mining rewards. All of which means that there is NUANCE to this question.

/16
The nuance is what was missed by all the gloating investment "experts" who have been jumping up and down for several days, thinking they found a gotcha that invalidates Ethereum. Demonstrating their lack of understanding of the technology and its economics.

/17
The exact same attitude that I've been battling this same week with a silly article about Bitcoin mining centralization in China, that ignores several key nuances of the Bitcoin system because of a lack of technical understanding or independent review.

/18
Again, it takes 10x the time to debunk bullshit as it does to state

There are plenty of valid things to criticize, both for Bitcoin and Ethereum. Those who understand these technologies work to address the issues by *building* engineering solutions for engineering problems
/19
Those who don't understand nuance, seize on some silly tribalistic argument and get all excited that they have finally and definitively debunked Bitcoin or Ethereum, while they've only debunked their reputation and integrity.

/20
Pull the plank out of your eye before you point at the mote in mine. Less gotcha, more building, more thinking, more learning, more nuance.
PS. The answer to this gotcha question was provided by @marcandu (Marc Andre Dumas) in this tweet:



The goalposts were then moved in bad faith to continue playing gotcha:

- v1 had a bug!
- It wasn't easy
- Block explorers have bugs
- It should be fast
Missing some Tweet in this thread? You can try to force a refresh.

Keep Current with Andreas ☮ 🌈 ⚛ ⚖ 🌐 📡 📖 📹 🔑 🛩

Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!