Notes

Bitcoin's difficulty

Hundreds of thin black horizontal lines over a background that shifts from salmon pink at the top to pale yellow at the bottom. In the upper half the lines are lifted into a deep fold and a ridge, like a landscape seen from the side; lower down they lie almost flat.
Olof Broström, Difficulty no. 972231, 2026. JAEV. Source

Bitcoin's difficulty is a number that says how hard it is to add the next block to the Bitcoin ledger. It compares the current target with a fixed reference target, and it is recalculated every 2,016 blocks so that a new block is found about every ten minutes.1

Target, hash and nonce

A block is a batch of transactions with an 80-byte header. The header holds a reference to the previous block, a summary of the transactions, a time, the current target in compressed form, and a 4-byte field called the nonce.2 The header is hashed twice with SHA-256 (see the note on SHA-256). Read as a 256-bit number, the result must be less than or equal to the target.2

There is no way to calculate a header that meets the target. The only way is to guess: change the nonce, which is there to be changed, hash again, and repeat until a result happens to be small enough.3, 4 A small number written out in 64 hexadecimal digits begins with many zeros, which is why the rule can also be put as a hash that "starts with a required run of zeros".4 The block at height 972,231, found on 20 October 2026, has a hash that begins with 19 zeros.5

What the number means

The Bitcoin Wiki defines the difficulty as difficulty_1_target / current_target: how many times smaller the target is now than at difficulty 1.1 The same page gives the expected number of hashes needed for one block as D × 2⁴⁸ / 0xffff, where D is the difficulty, which is close to D × 2³².1 On 16 October 2026, at block 971,712, the difficulty was set to about 140.6 trillion.6 By the formula, that is about 6 × 10²³ guesses, on average, for every block.

The adjustment

Every 2,016 blocks, the network uses the timestamps in the block headers to see how long the last period took. The ideal is 1,209,600 seconds, two weeks, which is ten minutes per block.3 If the blocks came faster, the difficulty goes up in proportion, by at most 300 %; if they came slower, it goes down, by at most 75 %.3 The adjustment of 16 October 2026 raised the difficulty by about 5.9 %.6

The difficulty therefore follows the computing power spent on the whole network, not anything inside a single block. Every block within the same period of 2,016 blocks has the same difficulty.1

Where to see it

Olof Broström's Difficulty is drawn from these blocks. Each day at 00:30 UTC, JAEV's server makes one drawing from the day's aurora forecast and the first block after midnight UTC: the block's hash sets the background colours and the angle of the lines, the number of transactions sets the number of lines, from 100 to 260, the nonce sets how high they are lifted, and the block's height becomes the sheet number.4 The drawing for 20 October 2026 is Difficulty no. 972231.4

Sources

  1. “Difficulty”. Bitcoin Wiki
    “difficulty = difficulty_1_target / current_target”; changes “Every 2016 blocks”; “At the desired rate of one block each 10 minutes, 2016 blocks would take exactly two weeks to find”; expected hashes per block “D * 2**48 / 0xffff”.
  2. “Block Chain”, Bitcoin Developer Reference. developer.bitcoin.org
    The 80-byte header: version, previous block header hash, merkle root, time, nBits, nonce (4 bytes). nBits: “An encoded version of the target threshold this block’s header hash must be less than or equal to.” Hashes are SHA256(SHA256()).
  3. “Block Chain”, Bitcoin Developer Guide. developer.bitcoin.org
    “Every 2,016 blocks, the network uses timestamps stored in each block header to calculate the number of seconds elapsed”; “The ideal value is 1,209,600 seconds (two weeks)”; increase “by as much as 300%”, decrease “by as much as 75%”; an off-by-one error uses 2,015 intervals.
  4. “Difficulty”, Olof Broström. JAEV, Lund
    A computer must find a hash “that starts with a required run of zeros”; “The only way to find one is to guess”. One drawing per day at 00:30 UTC from an aurora forecast and the first block after 00:00 UTC: hash → background colours and angle of the lines; transactions → number of lines, 100 to 260; nonce → how high the lines are lifted; height → the sheet number.
  5. Block 972,231. mempool.space, retrieved 20 October 2026
    Hash 00000000000000000001051481af692a…, 7,327 transactions, nonce 2,094,924,387.
  6. Difficulty adjustments, last month. mempool.space API, retrieved 20 October 2026
    Block 971,712 (16 October 2026, 12:37 UTC): difficulty 140,577,680,051,919.6, factor 1.05924 over the previous period, which began at block 969,696 (3 October 2026).
Published
JAEV Notes, October 2026.
Use
Text CC BY 4.0. Free to use and quote with credit to JAEV and a link to this page. Images and quotations by others keep their own terms.
All texts as one file: archive.json
Cite
JAEV Notes, “Bitcoin's difficulty”, jaev.gallery/notes/bitcoin-difficulty/, 2026.
Corrections
Additions and corrections are welcome: info@jaev.gallery
Share

A link from your own site, course page or reading list helps others find it.
Follow
New notes by RSS · Instagram · Bluesky

JAEV is a daemon taking shape: machines, weights, room, brain.