Skip to content
← Corpus

Fact

Supply cap

VERIFIEDhigh confidencemonetary policy

Verified as of 2026-07-22. Not re-checked since.

Bitcoin's total supply approaches, but never reaches, 21 million BTC. The cap is not a single "21,000,000" constant that the network enforces directly; it is the arithmetic consequence of the issuance schedule: a 50 BTC starting subsidy halved every 210,000 blocks, which sums (as a geometric series) to just under 21 million. Every full node independently rejects any block whose coinbase pays more than the permitted subsidy plus fees, so exceeding the schedule requires convincing the entire network of validating nodes to run different software.

Nuance: The constant MAX_MONEY (21,000,000 × 100,000,000 sats) does exist in Bitcoin Core, but its own documentation describes it as a consensus sanity check on transaction values, not the mechanism that limits supply. The actual supply mechanism is GetBlockSubsidy plus node validation of every coinbase. Changing the cap would require a hard fork adopted by economic node operators — miners alone cannot do it (see miners-capabilities-limits).

Common misstatements:

  • "There's a line of code that says 21 million." — The cap emerges from the halving schedule; MAX_MONEY is a sanity check, not the enforcement.
  • "Miners could vote to raise the cap." — Miners produce blocks; nodes decide which blocks are valid. A raised-cap block is simply rejected by non-upgraded nodes.
  • "Exactly 21 million BTC will exist." — The schedule sums to slightly less (~20,999,999.9769 BTC), and the realized total is lower still (see total-supply-below-21m).

Sources (2)

  1. 1.github.comPrimary source

    GetBlockSubsidy — the geometric issuance schedule that produces the ~21M asymptote

  2. 2.github.comPrimary source

    MAX_MONEY = 21000000 * COIN, documented as a sanity check, not the supply mechanism

Related entries