HOW TO verify the total supply of bitcon AKA "Run The Numbers"

Do you know how many dollars/euros were printed? Do you know how much gold was mined? The answer to both questions is no. Some individuals in government may know something that allows them to make guesses, but the fact is that no one on the face of the earth can answer these questions with any accuracy.

Bitcoin is different

For the first time in human history, anyone has the freedom to discover the exact total supply of a global monetary asset, without the need to ask permission or rely on someone else. All that is required is an already synchronized node and about 5 minutes of your time.

How to

Verifying the total supply of all existing bitcoins is much easier than you might imagine. If you run your own node, you can do it whenever you want, as often as you want, and in total security since you only use your own hardware and open source software.
Let's assume you are on a Linux terminal, run:
$ bitcoin-cli gettxoutsetinfo
Depending on your hardware, it can take up to 5 minutes to get this output (sample):
{ "height": 824446, "bestblock": "0000000000000000000379c7aefeaf9657f68e46474a66f0063277f56cea4003", "txouts": 154157349, "bogosize": 11744309858, "hash_serialized_3": "632a3476126c1bd1ed0dc6d8c432edad4fae7266cb2679110c6e88594530b6c3", "total_amount": 19590074.24589448, "transactions": 106896960 }
This tells us that - out of a maximum total of 21 million bitcoins - 19,590,074.24589448 million are already in circulation (about 93%) as per "total_amount"

The Numbers

So how did my node come to the conclusion that at the time I ran the gettxoutsetinfo command there were a total of 19,580,074.24589448 bitcoins in existence out of a known total of 21,000,000 ?
Bitcoin has a fixed issuance schedule that decreases as each halving occurs (every 210,000 blocks or about four years). These periods are sometimes referred to as Epoch. Here is a summary of the supply in all historical Epochs up until now. Next halving is expected on or about April 2024
EPOCHYEARSBLOCKREWARDHALVING
52024-2008840,0003.125on or about Arp, 2024 (4th halving)
42020-2024630,0006.250May 11, 2020 (3th halving)
32016-2020420,00012.500Jul 9, 2016 (2nd halving)
22012-2016210,00025.000Nov 28, 2012 (1st halving)
12009-2012150.000Jan 9, 2009 (genesis block)
We now realized that we can calculate the expected amount of bitcoin at any block height.
824,446 = The block height at the time of execution of "gettxoutsetinfo" 629,999 = The height of the last block before the current Epoch 194,447 = (824,446 - 629,999) How many blocks have passed during the current Epoch
EPOCHREWARD * BLOCKSAMOUNT ISSUED
150 * 210,00010,500,000
225 * 210,0005,250,000
312.5 * 210,0002,625,000
46.25 * 194,4471,215,293.75
TOTAL BTC issued19,590,293.75
total_amount19,590,074.24589448
Difference219.50410552
However, my node calculated that at the height of block 824,446 there were actually 19,590,074.24589448

Are we missing some bitcoin?

Why would my node calculate that there are actually 219.50410552 fewer bitcoins in existence than the known issuance schedule suggests there should be?
There are a number of reasons that are outlined in great detail in this Fjhar article or you can read a shorter version in this response on Bitcoin Stack Exchange.
Here is a very brief summary...
  • It is hard coded in the Bitcoin code that the genesis block reward cannot be spent and is not part of the UTXO set
  • Duplicate TxID (transaction ID) as outlined in BIP30
  • Coins "burned" in OP_RETURN messages.
  • Miners do not claim the entire block reward
I thought Coinmarketcap gives you this information and then more
reply
It does, and so do many other websites. However that's taking someone else's word for it, if you do the above you are calculating it yourself, on the actual real bitcoin blockchain (and you know it's "the" bitcoin blockchain because of the whole proof of work concept - it's essentially physically impossible for anyone to generate an alternative).
reply
deleted by author
reply
deleted by author
reply
That was informative, thanks.
Also, this link. Worth reading:
outlined in great detail in this Fjhar article
It would appear that the post was one of only two Fjhar ever published, though. I wonder if they're still contributing in another capacity.
reply
Thank you.
It would appear that the post was one of only two Fjhar ever published, though. I wonder if they're still contributing in another capacity.
Wasn't aware of that.... who knows.
reply