A block is generated every ten minutes. The reward changes periodically, and will halve 32 more times. What is the approximately daily reward across the entire network?

up vote 5 down vote accepted

Colin's calculation has a mistake in that it doesn't account for partial Bitcoins not being paid out in block rewards. It rounds down the reward per day, but should round down to the satoshi the reward per block. The first period changed by the correction is Halving 10.

Payout per day at 144 blocks

Start      (2009) : 7200.00000000
Halving  1 (2013) : 3600.00000000
Halving  2 (2016) : 1800.00000000
Halving  3 (2020) : 900.00000000
Halving  4 (2024) : 450.00000000
Halving  5 (2028) : 225.00000000
Halving  6 (2032) : 112.50000000
Halving  7 (2036) : 56.25000000
Halving  8 (2040) : 28.12500000
Halving  9 (2044) : 14.06250000
Halving 10 (2048) : 7.03124928
Halving 11 (2052) : 3.51562464
Halving 12 (2056) : 1.75781232
Halving 13 (2060) : 0.87890544
Halving 14 (2064) : 0.43945200
Halving 15 (2068) : 0.21972528
Halving 16 (2072) : 0.10986192
Halving 17 (2076) : 0.05493024
Halving 18 (2080) : 0.02746512
Halving 19 (2084) : 0.01373184
Halving 20 (2088) : 0.00686592
Halving 21 (2092) : 0.00343296
Halving 22 (2096) : 0.00171648
Halving 23 (2100) : 0.00085824
Halving 24 (2104) : 0.00042912
Halving 25 (2108) : 0.00021456
Halving 26 (2112) : 0.00010656
Halving 27 (2116) : 0.00005328
Halving 28 (2120) : 0.00002592
Halving 29 (2124) : 0.00001296
Halving 30 (2128) : 0.00000576
Halving 31 (2132) : 0.00000288
Halving 32 (2136) : 0.00000144
End        (2140) : 0.00000000

I used this table to calculate this and other Reward Schedule metrics.

  • Interesting. What was the code change to fix that? – Colin Dean Mar 14 '17 at 22:45
  • @ColinDean You seem to have been halving the total revenue per day, but for the exact result you'd have to halve and rounddown to integers the subsidy per block. This is due to less than full satoshis not being paid out. I didn't use your code though. – Murch Mar 14 '17 at 23:04
  • Can you share your code? When I calculate using satoshis as a number instead of a whole bitcoin as double and take the floor of the halving, I get the same result. I'm probably making a stupid error somewhere. – Colin Dean Mar 16 '17 at 15:57
  • @ColinDean: I think you are rounding down per day, but you'd need to round down per block. I used a Google doc, I'll share it when I get home. Start with 50 btc instead of 7200 and multiply with 144 after rounding down. – Murch Mar 16 '17 at 17:04
  • I see what you mean, now. You're definitely right. I'm rounding per day. – Colin Dean Mar 18 '17 at 21:23

All times approximate.

Each block takes ten minutes, so there are six blocks per hour, 24 hours per day. The original block reward was 50 BTC. Thus, 7200 BTC per day introduced to the system.

I contrived this script to model the decline, including the year the halving is expected to occur:

ruby -e 'reward = 7200.0; halving = 0; while halving < 33 do puts "Halving "+halving.to_s + " (" + (2008 + 4 * halving).to_s + ") : %2.8f"%reward; reward = reward / 2; halving += 1; end'

Start (2009) : 7200.00000000 #start
Halving 1 (2012) : 3600.00000000 #Halving was November 2012
Halving 2 (2016) : 1800.00000000
Halving 3 (2020) : 900.00000000
Halving 4 (2024) : 450.00000000
Halving 5 (2028) : 225.00000000
Halving 6 (2032) : 112.50000000
Halving 7 (2036) : 56.25000000
Halving 8 (2040) : 28.12500000
Halving 9 (2044) : 14.06250000
Halving 10 (2048) : 7.03125000
Halving 11 (2052) : 3.51562500
Halving 12 (2056) : 1.75781250
Halving 13 (2060) : 0.87890625
Halving 14 (2064) : 0.43945312
Halving 15 (2068) : 0.21972656
Halving 16 (2072) : 0.10986328
Halving 17 (2076) : 0.05493164
Halving 18 (2080) : 0.02746582
Halving 19 (2084) : 0.01373291
Halving 20 (2088) : 0.00686646
Halving 21 (2092) : 0.00343323
Halving 22 (2096) : 0.00171661
Halving 23 (2100) : 0.00085831
Halving 24 (2104) : 0.00042915
Halving 25 (2108) : 0.00021458
Halving 26 (2112) : 0.00010729
Halving 27 (2116) : 0.00005364
Halving 28 (2120) : 0.00002682
Halving 29 (2124) : 0.00001341
Halving 30 (2128) : 0.00000671
Halving 31 (2132) : 0.00000335
Halving 32 (2136) : 0.00000168

(I did modify the output a little to make it easier to understand without complicating my script)

  • 1
    For current and future readers: keep in mind that the reward changes. So in 2015, it's only 3600 BTC per day, and it's going to be even less as we move further and further! – Karel Bílek Oct 12 '15 at 20:27
  • 1
    For current and future readers: This calculation doesn't give good results for later years, as it doesn't account for block rewards only paying out whole satoshis. E.g. the last two lines should be 288 and 144 instead. – Murch Apr 22 '16 at 13:32

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.