Bitcoin difficulty
Every 2016 blocks (~2 weeks), Bitcoin adjusts mining difficulty to keep average block time at 10 minutes. If miners are finding blocks faster than target the difficulty goes up; slower, it goes down. The adjustment is capped at ±300%. This page shows the live state, the live countdown to the next retarget, and historical difficulty over time.
Current difficulty
126.23 T
at block 960,794
Estimated next adjustment
+1.17%
avg block time this epoch: 593 s
(target: 600 s)
Retarget ETA
2026-08-08 18:58:14 UTC
838 blocks remaining
Epoch start: block 959,616
58.4% done
Retarget: block 961,632
Blocks into epoch
1,178 / 2,016
Blocks remaining
838
Epoch start
2026-07-25
22:51:06 UTC
Avg block time
593.1 s
target 600 s
Difficulty over time
One datapoint per retarget block (every 2016 blocks, ~2 weeks).
Each row pulls the difficulty + realised hashrate over that epoch
directly from our own Bitcoin Core 28 node
via getblockheader and getnetworkhashps.
Difficulty is flat between retargets by protocol, so the chart
draws a step function aligned to each adjustment.
How the adjustment is computed
- Every 2016 blocks (one epoch), nodes recompute difficulty so that average block time over the just-completed epoch was 10 minutes.
- If the epoch took less than 2 weeks of wall-clock, difficulty increases proportionally (max +300%).
- If the epoch took more than 2 weeks, difficulty decreases proportionally (max -75%, capping a single retarget at a 4x drop).
- The "estimated change %" above projects forward from the observed
average block time so far in the current epoch:
(600 / avg_block_time - 1) × 100. It's a live estimate that moves as more blocks confirm; the actual retarget pins to whatever the wall-clock interval is at block961,632.