Course mapModule 3 · The Halving
Crypto Mining School
19 of 36 lessons live · progress saved in this browser
M1Power On5 live What Does a Bitcoin Miner Actually Do? What Is a Hash? How Do Miners Make Money? Can You Still Mine Bitcoin at Home? CPU vs GPU vs ASIC: Why Your PC Can’t Compete
M2The Iron5 live What Is an ASIC Miner? Hashrate, Watts, and J/TH: The Only Three Numbers That Matter What Is a Bitaxe? How Loud Is an ASIC Miner, Really? How Long Does a Miner Stay Profitable?
M3The Network5 live What Is Mining Difficulty? What Is Network Hashrate (and Why Every Chart Disagrees)? Why Blocks Take 2 Minutes or 40: Luck and Variance What Is a Mining Pool? What Is the Halving (and What It Does to Miners)?
M4The Money1 live What Is Hashprice? The Mining Profitability Formula (There Is Only One)soon What Power Price Kills Your Rig?soon How Long Does It Take to Mine 1 Bitcoin?soon Transaction Fees: The Half of Revenue Nobody Modelssoon
M5The Scrypt Lane3 live What Is Scrypt Mining?soon What Is Merged Mining? (AuxPoW, Plain English) How Long Does It Take to Mine 1 Litecoin? Antminer L7 vs L9 vs L11: Which Scrypt Miner Makes Sense Can You Mine Dogecoin Directly?soon
M6Home Opssoon Amps, Breakers, and 240V: Can Your Wiring Run a Miner?soon Making a Miner Livable: Noise and Heat Controlsoon Heating Your Space With a Minersoon Buying a Used ASIC Without Getting Burnedsoon Solo Mining: The Honest Lottery Mathsoon
M7Operator Gradesoon What Is Miner Capitulation?soon Hash Ribbons: Reading Hashrate Crossessoon The Puell Multiple: Miner Revenue vs Its Own Historysoon Fee Percentiles: Forecasting Revenue Like an Operatorsoon Mining Stress and Difficulty Pressure: What Our Composites Watchsoon Timing the Iron: Buying Rigs Off the Cycle Datasoon

What Is the Halving (and What It Does to Miners)?

The only scheduled event in mining: one line of consensus code that cuts the subsidy in half at a fixed block height — and the difficulty record of what followed, all four times, from our own archive.
loading live data…
A mining machine’s income arrives in an envelope with two halves — M1 opened it: the block subsidy, fixed by code, and transaction fees, bid by users. Only one half has a schedule, and the schedule has exactly one move: at a fixed block height — not a date — the subsidy is cut in half, network-wide, automatically. The fees half keeps floating, and nothing else in that block changes. That cut is the halving (glossary): the only scheduled event in mining.

Counted in blocks, not on the calendar

The entire schedule is one line of arithmetic every node runs:

subsidy(height) = 50 BTC >> floor(height ÷ 210,000) — one integer right-shift; each shift is a halving; 64 or more shifts return 0

That is the verbatim shape of Bitcoin Core’s GetBlockSubsidy (validation.cpp, fetched 2026-10-02), interval constant 210,000; Litecoin’s copy is identical in shape with 840,000. Run it on our node’s height as this page loads: height 969,621, divided by 210,000 with the remainder dropped, is 4 completed halvings — halve 50 BTC four times and the current subsidy is 3.125 BTC (own-node snapshot, 2026-10-02; it halves next at block 1,050,000, currently projected around 2028). Notice what the formula never mentions: a date.

So why does everyone quote dates anyway — and why are they always wrong by a little? Because block arrivals are dice (lesson 3) that the difficulty thermostat only averages back to ~10 minutes (lesson 1) — and the thermostat lags growth, so eras historically run fast. Receipts from our own headers archive: the 6.25-BTC era took 1,439 days against its 1,458.3-day target — mean block 592 seconds, about 1.3% quick. Compounded from genesis (2009-01-03) at an exact 600 s/block, block 840,000 “should” have landed on 2024-12-24. It landed 2024-04-20 — 248 days early. Every projected date on this page inherits that caveat.

Bitcoin · halves every 210,000 blocks
3.125 BTC
height 969,621 · 61.7% through the 3.125-BTC era · own-node snapshot, 2026-10-02
Litecoin · halves every 840,000 blocks
6.25 LTC
height 3,188,239 · 79.6% through the 6.25-LTC era · own-node snapshot, 2026-10-02
Dogecoin · schedule complete
10,000 DOGE
height 6,398,848 · 10.7× past the schedule’s end at block 600,000 · own-node snapshot, 2026-10-02

The subsidy cells are computed from our nodes’ live heights — never typed in — so the Bitcoin tile flips to 1.5625 BTC the moment block 1,050,000 lands, unedited. Everything when-shaped about that block lives at /btc/halving and /ltc/halving; this lesson teaches the machinery.

Why is every halving date you’ve ever read an estimate?

The library at the halving block

Put it in lesson 1’s library. At the halving block, nothing in the library changes. The six-zero bar does not move — difficulty is untouched. The pace of finds stays ~10 minutes. The same hands keep pulling the same drawers. The only edit is on the payout line of the find card: the next card pays half. No announcement, no operator, no switch thrown — because the only clock the halving reads is the chain of pages itself. Every node counts the pages on the shelf, and the count is the schedule.

NOT FOUND YETCOPIES THE PAGE BEFORE
Each page grips the last page's strip. Rewrite history and the strips stop matching.

Why it can’t be moved

There is no operator to move it. Every node — ours included — independently computes the allowed payout from the height and rejects any block whose finder pays itself more. Bitcoin Core’s own log line for that rejection is “coinbase pays too much”, consensus code bad-cb-amount (validation.cpp, fetched 2026-10-02): a block that ignores the halving isn’t penalized, it simply isn’t a block. Changing the schedule is not impossible — nothing in software is — but it would take nearly every node operator on Earth voluntarily adopting new rules that dilute the coins they already hold. That is why, through 17 years and four halvings, the schedule has not moved by one block.

Halve forever, get a cap

The 21 million cap is not a separate rule — it is this rule’s shadow. Each era is 210,000 blocks, and each era’s subsidy is half the one before, so the minting runs 10.5M, then 5.25M, then 2.625M… Add the stack: 210,000 × 50 × (1 + ½ + ¼ + ⅛ + …) — and the infinite series of halves sums to exactly 2. So the total can never pass 210,000 × 50 × 2 = 21,000,000. (The code shifts whole satoshis, dropping fractions, so the true total is 20,999,999.977 BTC — recomputed 2026-10-02 with exact integer arithmetic over the shift schedule. The cap is the convergence; the rounding is pocket lint.) Litecoin, same series: 840,000 × 50 × 2 = 84M, exactly 83,999,999.908.

coins minted, era by era · to scale the 21M cap today 50-BTC era · 10.5M coins 25 · 5.25M 12.5 6.25 never reached: tops out at 20,999,999.977 each segment is half the one before —the bar can run forever and still never touch the amber line
The cap, drawn instead of asserted: an infinite stack of halves fits inside twice the first era. Litecoin’s bar is the same picture with 840,000-block eras and an 84M line. Exact totals recomputed 2026-10-02 by integer arithmetic over the shift schedule.

The schedule’s tail is long and quiet: the subsidy reaches a single satoshi in the era starting at block 6,720,000 — naive target-pace arithmetic says late 2136 — and becomes zero from block 6,930,000, the “around 2140” you’ve read (naive: October 2140, and the 248-day receipt above says the real blocks will get there sooner). What mining pays when the subsidy reaches zero is a fee-market question, and it lives in M1’s envelope and at /btc/fees — not here.

Halve the subsidy forever — why doesn’t that mint coins forever?

Three chains, one design choice

A halving schedule is a choice, and the three chains our nodes follow chose three different answers — which makes them the cleanest side-by-side on the open web.

Bitcoin: every 210,000 blocks at a 10-minute target. Litecoin: every 840,000 blocks at 2.5 minutes — four times the blocks at a quarter the interval, which is the same 2,100,000 minutes per era, about 3.99 years. That twinning is deliberate: Litecoin’s eras keep Bitcoin’s cadence while its blocks run 4× faster. Its next halving block is 3,360,000; everything when-shaped about it — how far off, what happened in 2023 — lives on /ltc/halving.

Dogecoin is routinely described as “no halvings,” and that’s backwards: it ran the whole schedule on fast-forward. A halving every 100,000 one-minute blocks — the entire multi-era arc compressed into about 14 months. (One wrinkle from its source code: before block 145,000 the payout was random, with the halving schedule capping the roll; from block 145,000 — 2014-03-17 by our own node’s headers — the amounts went deterministic: 250,000, then 125,000, and so on down the shifts.) The last halving landed at block 600,000 on 2015-02-25 (own-node receipt), and every block since has paid a flat 10,000 DOGE, forever — a design usually called tail emission. The schedule isn’t missing. It’s complete — our Dogecoin tile above is 10.7× past its end.

So: does every crypto have a halving? No — a halving is one emission design among several, not a law of crypto. One chain is still walking its schedule, one twinned it at 4× speed, one finished a decade ago and settled at a constant. What that constant does to Dogecoin’s issuance arithmetic — and the full three-chain issuance table — is /doge/block-reward’s territory; we won’t restate it here.

When is Dogecoin’s next halving?

The halving-difficulty handshake

This module gave you a thermostat (lesson 1) and now a scheduled pay cut — so how do they interact? They don’t, directly. The subsidy flips at one exact block. Difficulty does nothing in that block: it moves only at its own 2,016-block boundary (retarget), and then only if block pace actually drifted — that is, only if hands actually left the library. As this page loaded, Bitcoin’s thermostat was 96.3% through its current epoch (own-node snapshot, 2026-10-02) — and a halving would not wait for it.

The cleanest receipt in our archive: the network’s first answer to the April 2024 halving was a +2.0% difficulty increase — retarget at height 840,672, April 24, four days after the cut. Nobody had unplugged yet. The first downward step waited until May 9 (−5.6%). And the two schedules are independent clocks that rarely even strike together: 210,000 mod 2,016 = 336, so a Bitcoin halving lands exactly on a retarget boundary only every 6th halving — the first such coincidence ever will be block 1,260,000, around 2032. Litecoin’s every-3rd already happened: at block 2,520,000 the subsidy halved and the thermostat ticked up 7.6% in the very same block (own headers: 25,637,019 → 27,579,072). You can watch Bitcoin’s next boundary approach at /btc/difficulty.

A halving lands mid-epoch. What does difficulty do in that block?

What the record shows

So what has happened to network hashrate when the subsidy halved? State the mechanism first, mechanically: at the halving block the subsidy component of the find — and only that component; fees keep floating — drops by half. Machines that could no longer cover their power bill on the new subsidy go dark first (whose machines those are, and where the line sits, is M2’s lesson — we won’t re-derive it). Blocks slow. The thermostat steps down. The survivors’ share of every block grows, and the system re-balances.

Difficulty is the thermostat’s sworn record of that exit — derivable block-by-block from headers alone, no estimates — so the table below is recomputed from our own headers archive (complete to genesis; queried 2026-10-02, cross-checked against mempool.space’s adjustment series), not quoted from anyone’s chart. Every halving so far drew at least one downward retarget within 9 to 24 days — and every time, difficulty was back above its pre-halving level, durably, within 37 to 102 days: five weeks to three and a half months.

HalvingFirst downward retargetDeepest vs pre-halvingBack above, for good
2012−2.0% · Dec 10 (12 days after)−13.7% · Jan 23, 2013Feb 18, 2013 · 81 days
2016−5.4% · Aug 2 (24 days after)−5.4% · Aug 2Aug 15, 2016 · 37 days
2020−6.0% · May 20 (9 days after)−14.7% · Jun 4Jul 13, 2020 · 63 days
2024−5.6% · May 9 (19 days after)−8.0% · Jul 5Jul 31, 2024 · 102 days

Recomputed from our own headers archive: each percentage is the ratio of consecutive difficulty values at a retarget height; dates are the retarget blocks’ own timestamps. 2012 and 2020 stepped down twice in a row (−2.0% then −11.6%; −6.0% then −9.3%); 2016 and 2024 each answered first with a flat-to-up step (+0.04%, +2.0%) before the exits showed. The 2024 slide to −8.0% coincided with the summer curtailment season.

In the library’s terms: the prize on the card halves, the least efficient hands stop pulling, the bar steps down at the next boundary — and within weeks the surviving hands, each now holding a larger share of every find, have pulled the bar back past where it started. Four halvings, four recoveries, all of it strictly a difficulty record.

FAQ

How does the halving work?
It’s a consensus rule, not an event anyone runs. Every node computes the allowed subsidy directly from the block height — 50 coins cut in half once per era (every 210,000 blocks on Bitcoin, 840,000 on Litecoin) — and rejects any block whose finder pays itself more; Bitcoin’s own code logs that rejection as “coinbase pays too much”. At the halving height the next block simply mints half, network-wide, automatically.
Why does the halving happen every four years?
It doesn’t, exactly — it happens every 210,000 blocks, which at the 10-minute target is 2,100,000 minutes, about 3.99 years. Litecoin picked 840,000 blocks at 2.5 minutes: the same 2,100,000 minutes. And because hashrate historically grows faster than the difficulty thermostat catches up, blocks run slightly fast — the 2024 halving arrived 248 days ahead of a from-genesis 10-minute schedule. That’s why every halving date you read is an estimate.
Can the halving be delayed or cancelled?
There’s no lever to pull — every node independently enforces the subsidy from the block height, so “delaying” it means convincing nearly everyone running a node to adopt new rules that dilute the coins they already hold. Never impossible, but it has not moved by a single block since 2009. The schedule’s entire value is that it cannot drift.
Does every cryptocurrency have a halving?
No — a halving is one emission design, not a law of crypto. Dogecoin is the standing counter-example: it ran its entire halving schedule on fast-forward, halving every 100,000 one-minute blocks, finished at block 600,000 in February 2015 (our own node’s record), and has paid a fixed 10,000 DOGE per block ever since. Its schedule isn’t missing — it’s complete.
Does the halving change mining difficulty?
Not by itself. The subsidy flips at one exact block; difficulty only moves at its own retarget boundary, and only if hashrate actually left in the meantime — the network’s first answer to the April 2024 halving was a +2.0% difficulty increase four days later, because nobody had unplugged yet. What the record shows after that first beat, recomputed from our own headers archive: every halving so far drew at least one downward retarget within one to four weeks, as the machines that could no longer cover their power bill on the halved subsidy went dark — and every time, difficulty was durably back above its pre-halving level within roughly five weeks to three and a half months.
Do it now. Open /ltc/halving and recompute its countdown yourself: take the live height on that page (our own Litecoin node cross-checks it), subtract it from 3,360,000, and multiply by 150 seconds. Your envelope-back number IS the page’s estimate — and now you know exactly why it drifts. Then open /doge/block-reward and notice there is nothing to count down — that schedule finished at block 600,000 in February 2015. /btc/halving runs the identical arithmetic at 600 seconds per block, toward block 1,050,000.
Completes automatically when you continue below — saved in this browser only, no account, no tracking.
Next lesson → Module 4 · The Money
What Is Hashprice?
The market wage of one unit of hashrate per day — the number that turns a spec sheet into revenue.
Source: block heights and epoch progress from BasinTwo’s own Bitcoin, Litecoin and Dogecoin full nodes via the free /api/chain feeds; the subsidies on this page are computed from live height (50 ÷ 2^floor(height ÷ interval)), never typed in. The historical retarget table and era timings are recomputed from our own headers archive (complete to genesis for Bitcoin), queried 2026-10-02 and cross-checked against mempool.space’s adjustment series; Dogecoin’s era boundaries are our own node’s block headers. Consensus-rule facts are from the Bitcoin Core, Litecoin and Dogecoin source code, fetched 2026-10-02. All forward dates are estimates at target pace — the record shows blocks run fast. Not financial advice.