LearnBitcoin

Glossary

Miner Signaling

The process by which miners indicate readiness to enforce a proposed consensus rule, usually by setting a designated bit in the block header's version field.

Miner signaling is how Bitcoin coordinates the activation of new consensus rules. When a soft fork is being proposed, miners include a flag in the blocks they produce indicating they're ready to enforce the new rule. Once a threshold of those signaling blocks is reached over a difficulty period, the rule "locks in" and activation follows.

The mechanism is mostly defined by BIP-9 (versionbits), the standard activation framework used since 2016. Variations exist for specific situations - UASF-style (BIP-148), Speedy Trial, and so on - but the core idea is the same: miners broadcast intent through their blocks.

How it works

A soft fork proposal reserves a specific bit (0-28) in the 32-bit nVersion field of the block header. Miners who support the proposal flip that bit to 1 in the blocks they mine.

Activation has several phases:

  • Defined - the proposal exists but signaling hasn't started.
  • Started - signaling is open. Miners may flip the bit.
  • Locked-in - the threshold (typically 95% over a 2,016-block difficulty period) has been reached. Activation is now guaranteed.
  • Active - the new rule is enforced. Any block violating it is rejected by upgraded nodes.
  • Failed - the timeout passed without reaching the threshold. Signaling is closed.

The exact threshold and timeout depend on the specific deployment. SegWit used 95% over a 2,016-block window. Some later proposals have used different parameters (BIP-110 (RDTS), for example, proposed 55%). The rules of each fork are defined upfront.

What miner signaling actually means

Signaling is a coordination mechanism, not a vote. Miners signal readiness to enforce, not approval. A miner can signal a bit without actually running the new code - though doing so risks producing invalid blocks once the rule activates, which would lose them the block reward.

The key constraint: full nodes - not miners - enforce Bitcoin's rules. A signaled-and-activated soft fork only matters if economic nodes adopt the new client. Historically, contested activations have shown the limit of miner-only signaling:

  • SegWit (2017) was stuck for months at about 30% miner support against a 95% threshold. BIP-148, a user-activated soft fork, set an August 1 flag day after which its nodes would reject any block that did not signal for SegWit. Miners moved first: through BIP-91 they made SegWit signaling mandatory among themselves from July 23, and SegWit locked in on August 9. UASF supporters say the flag day forced the miners' hand; the SegWit2x organizers credited their own agreement.
  • Taproot (2021) used Speedy Trial - a 90% miner threshold with a short window - and activated cleanly because the proposal was broadly uncontroversial.

The lesson: miner signaling is the official path, but it's structured against a backdrop of node-operator power. When miners and economic nodes agree, signaling works smoothly. When they disagree, signaling reveals the disagreement rather than resolving it.

Why it matters

A Bitcoin learner sees miner signaling references constantly - in news about upgrades, in debates about active BIPs, in mempool.space block headers showing version bits. Understanding the mechanism makes those references legible.

It also clarifies what "Bitcoin governance" actually is in practice: a multi-step coordination dance with no central decider, where miners get one structural role, node operators another, and users a third. No single group can force a change against the others.

See The Block Size War for the episode that established the limits of miner signaling.

Key takeaways

  • Signaling is the standard mechanism for activating soft forks via BIP-9 versionbits
  • A threshold of signaling blocks (often 95%) over a difficulty period triggers lock-in
  • Miner signaling is necessary but not sufficient - full nodes ultimately enforce the rules

Corrected

  • Was: The entry said SegWit "activated only after" user-activated soft fork pressure "threatened to force the issue" and that "the threat of UASF changed the dynamic", stating one side's account as fact, and it listed no sources.

    Now: SegWit was stuck at about 30% miner support against a 95% threshold. BIP 148 set an August 1, 2017 flag day; miners moved first, making SegWit signaling mandatory among themselves through BIP 91 from July 23, and SegWit locked in on August 9. Whether the flag day forced the miners' hand is disputed: UASF supporters say it did, and the SegWit2x organizers credited their own agreement. The entry now lists its sources. Details

  • Was: The entry listed a Bitcoin Wiki page on version bits as an external reference. That page does not exist, and we found no record that it ever did.

    Now: The reference is BIP 9, the specification for version bits signaling. Details

Sources (9)

External references (1)

Related terms (7)

Published . Revised . Two corrections logged for this page.

Edit this page on GitHub