07 / 691HASH

Mining

Bitcoin mining

Building a candidate block, searching for work and competing for subsidy and fee revenue.

Mining combines transaction selection with the search for a header satisfying Proof of Work. Miners propose blocks; other nodes independently check validity and membership in the branch with greatest accumulated work.

There is no single central transaction queue. A miner’s node has its own mempool; getblocktemplate supplies transactions, dependencies and block parameters. A child spending an unconfirmed output needs its parent earlier in the same block. Block weight and signature-check costs constrain selection. [Bitcoin Core v29.0: block assembler]

The first transaction may allocate at most the permitted subsidy plus included transaction fees. Fees are input value minus output value, not newly created bitcoin. An excessive reward invalidates a block even with sufficient Proof of Work. A coinbase output can first be spent in a block 100 heights later. [Bitcoin Core v29.0: block validation]

Hardware repeatedly applies double SHA-256 to variants of the 80-byte header. After exhausting its four-byte nonce, changing coinbase extra nonce changes Merkle Root and opens more search space. Past failures do not bring the next attempt closer to certain success; ten minutes is the network target average, not a machine’s deadline. [Bitcoin Developer Guide: Mining]

A pool assigns work and may use an easier share target to estimate contributions. Only some shares meet the network target. Payout follows the agreed accounting model and pool fees, not Bitcoin consensus directly. A pool’s share of found blocks does not itself prove ownership of connected machines. [Bitcoin Developer Guide: Mining]

Nodes receive and validate the broadcast block. A competing valid block can cause a temporary fork; a block on the abandoned branch contributes no reward to active history. Propagation speed and updating work after a new tip therefore affect results alongside finding the hash. [Bitcoin whitepaper]

Hashrate share and network pace give only an expected success frequency. Profit also depends on electricity prices, equipment efficiency, cooling, downtime, purchase cost and pool terms. TH/s is not electrical power in watts, and one successful find does not prove long-term profitability. [Bitcoin Developer Guide: Mining]

Compare getblocktemplate with the header, coinbase and transactions of the block actually found. submitblock submits a block for node validation; local acceptance does not guarantee lasting network inclusion. Distinguish submitted pool shares, accepted blocks and the amount actually paid. [BIP 22: getblocktemplate]

For the clearest picture, read this entry together with Proof of Work, Difficulty adjustment, Block Subsidy, Transaction fees, Mempool. The reverse links also lead from Proof of Work, Difficulty adjustment, Block Subsidy, Halving.

01What do Bitcoin miners actually calculate?

They repeatedly hash an 80-byte candidate block header while changing the nonce and other adjustable data, searching for a hash below the network target.

02Do miners validate Bitcoin’s rules for users?

Miners validate transactions when building blocks, but each full node independently checks the resulting block. A miner’s work cannot force a consensus-invalid block on nodes.

DOC · 001Bitcoin Core v29.0: block assemblerPrimaryDOC · 002Bitcoin Core v29.0: block validationPrimaryDOC · 003Bitcoin Developer Guide: MiningPrimaryDOC · 004Bitcoin whitepaperPrimaryDOC · 005BIP 22: getblocktemplatePrimary
Reviewed 1 August 2026Source-first · No investment advice