Bitcoin Tutorials - Herong's Tutorial Examples - v1.06, by Herong Yang
Mining Reward Rule - Start with 50 BTC
This section describes the Mining Reward Rule - Starts with 50 BTC and cuts by half every 210,000 blocks.
Another important Bitcoin Consensus Rule is the Mining Reward Rule: Bitcoin mining reward starts with 50 BTC and is reduced by half every 210,000 blocks.
So here is how the mining reward table looks like:
Reward era Block height Reward Mined date 1 0 50.00000000 BTC 2009-Jan-03 1 1 50.00000000 BTC 2009-Jan-08 1 ... ... ... 1 209,999 50.00000000 BTC 2012-Nov-28 2 210,000 25.00000000 BTC 2012-Nov-28 2 ... ... ... 2 419,999 25.00000000 BTC 2016-Jul-09 3 420,000 12.50000000 BTC 2016-Jul-09 3 ... ... ... 3 629,999 12.50000000 BTC 2020-???-?? 4 630,000 6.25000000 BTC 2020-???-?? 4 ... ... ... 4 839,999 6.25000000 BTC 2024-???-?? 5 840,000 3.12500000 BTC 2024-???-?? 5 ... ... ... 32 6,929,999 0.00000001 BTC 2128-???-?? 33 6,930,000 0.00000000 BTC 2128-???-?? 33 ... ... ...
The Bitcoin mining reward tells us two things:
1. After 6,929,999 blocks, mining a new block will receive no Bitcoin reward from the coinbase. The mining effort will be compensated only by transaction fees.
2. The exact total Bitcoin supply can be calculated with this formula:
Bitcoin supply = sum(50*210000/(2**i), i=0,1,2,...,32) = 20999999.995110556 BTC
This ensures that the total Bitcoin supply is limited to 21 million BTC.
If you want to verify the above formula, you can run the following Python script:
C:\>type Calculate-Bitcoin-Supply.py #- Calculate-Bitcoin-Supply.py #- Copyright (c) 2018, HerongYang.com, All Rights Reserved. sum = 0.0 for i in range(1,33): sum = sum + 50*210000/2**(i-1) print("Era: "+str(i) + ", Bitcoins: "+str(sum)) C:\>python Calculate-Bitcoin-Supply.py Era: 1, Bitcoins: 10500000.0 Era: 2, Bitcoins: 15750000.0 Era: 3, Bitcoins: 18375000.0 Era: 4, Bitcoins: 19687500.0 Era: 5, Bitcoins: 20343750.0 Era: 6, Bitcoins: 20671875.0 Era: 7, Bitcoins: 20835937.5 Era: 8, Bitcoins: 20917968.75 Era: 9, Bitcoins: 20958984.375 Era: 10, Bitcoins: 20979492.1875 Era: 11, Bitcoins: 20989746.09375 Era: 12, Bitcoins: 20994873.046875 Era: 13, Bitcoins: 20997436.5234375 Era: 14, Bitcoins: 20998718.26171875 Era: 15, Bitcoins: 20999359.130859375 Era: 16, Bitcoins: 20999679.565429688 Era: 17, Bitcoins: 20999839.782714844 Era: 18, Bitcoins: 20999919.891357422 Era: 19, Bitcoins: 20999959.94567871 Era: 20, Bitcoins: 20999979.972839355 Era: 21, Bitcoins: 20999989.986419678 Era: 22, Bitcoins: 20999994.99320984 Era: 23, Bitcoins: 20999997.49660492 Era: 24, Bitcoins: 20999998.74830246 Era: 25, Bitcoins: 20999999.37415123 Era: 26, Bitcoins: 20999999.687075615 Era: 27, Bitcoins: 20999999.843537807 Era: 28, Bitcoins: 20999999.921768904 Era: 29, Bitcoins: 20999999.960884452 Era: 30, Bitcoins: 20999999.980442226 Era: 31, Bitcoins: 20999999.990221113 Era: 32, Bitcoins: 20999999.995110556
Table of Contents
What Are Bitcoin Consensus Rules
Controlled Supply Rule - Total of 21M BTC
►Mining Reward Rule - Start with 50 BTC
Proof of Work Rule - Find a Small Hash Value