Fact
Difficulty adjustment
Verified as of 2026-07-22. Not re-checked since.
Every 2016 blocks (~two weeks), each node independently recomputes the proof-of-work target: if the last retarget period took less than two weeks of block timestamps, difficulty rises proportionally; if more, it falls. Each adjustment is clamped to a factor of 4 in either direction. This is deterministic consensus code — no committee or vote sets difficulty.
Nuance: A well-known implementation quirk measures the elapsed time across 2015 intervals rather than 2016, biasing blocks to arrive marginally slower than 10 minutes at constant hashrate (~10.005 min). Fixing it has never been judged worth a consensus change.
Common misstatements:
- "Difficulty adjusts in real time / every block." — Bitcoin retargets only at 2016-block boundaries (unlike some other chains).
- "Miners set the difficulty." — Every validating node computes the same required target from chain history; miners must meet it.
- "If half the hashrate left, Bitcoin would halt." — Blocks would slow (up to ~20-minute averages) until the next retarget, then return toward 10 minutes; the 4x clamp bounds each single adjustment.
Sources (2)
GetNextWorkRequired / CalculateNextWorkRequired — 2016-block retarget, 4x clamp
Documents the off-by-one (timespan measured across 2015 intervals)
Related entries
Cited by