Difficulty
Difficulty is a network-wide parameter that determines how hard it is to find a valid block hash. It adjusts automatically every 2016 blocks (approximately two weeks) to maintain an average block time of 10 minutes.
Understanding Difficulty
Section titled “Understanding Difficulty”Bitcoin is designed to produce a new block roughly every 10 minutes, regardless of how many miners are on the network. If too many miners join and blocks start being found faster than every 10 minutes, the difficulty increases. If miners leave and blocks slow down, the difficulty decreases.
Imagine a dartboard where you must hit the bullseye to win. Difficulty controls how big or small the bullseye is. When more players join the game, the bullseye shrinks (difficulty goes up) so that wins remain rare. When players leave, it grows larger (difficulty goes down) so that someone still wins at a regular pace.
The difficulty adjustment algorithm looks at the time it took to mine the previous 2016 blocks. If those blocks were mined in less than two weeks, difficulty increases proportionally. If they took longer, it decreases. The maximum adjustment in either direction is a factor of 4 per cycle.
Practical Example
Section titled “Practical Example”Suppose the last 2016 blocks were mined in 12 days instead of the expected 14. The network will increase difficulty by roughly 16.7% (14/12) at the next adjustment. As a miner, this means you will find fewer shares per unit of hashrate until the network reaches a new equilibrium.
Pool operators also set a separate “share difficulty” for their miners, which is much lower than the network difficulty. This allows miners to submit proofs of work more frequently, enabling the pool to track each miner’s contribution.