Skip to content
buybitcoinsmart

Glossary / Protocol & upgrades

Miner-activated soft fork

Also known as MASF.

Definition
A miner-activated soft fork switches on when a supermajority of mined blocks signals for it, using the block version field as a vote counted automatically by every node.

Specified in BIP-9.

Miners are not deciding whether a rule is good. They are declaring when enough of them are ready to enforce it that the tightening will not orphan honest work. Under BIP-9 the bar is 1,916 of the 2,016 blocks in one difficulty period, which is 95 percent, and the count restarts from zero each period until it is met.

How it works

Signalling reuses a field that already exists in every block header, so no new message type or registry is required.

The original method, introduced with BIP-34 in 2013, simply raised the block version number and counted backwards: a rule became mandatory once 950 of the last 1,000 blocks carried the higher version, after a 750 of 1,000 stage during which it bound only the blocks that claimed it. It worked, but versions had to be deployed strictly in sequence, so two proposals could never be in flight at once.

BIP-9 replaced the counter with 29 independent bits. Each proposal claims one bit and a start time, miners set that bit in the blocks they mine, and every node tallies the bit over a whole 2,016 block difficulty period. Reaching the threshold moves the deployment to locked in, and enforcement begins one full period later, giving anyone who has not upgraded roughly two more weeks. A deployment that never reaches the threshold expires at its timeout and the bit is freed for reuse.

Two variants matter historically. BIP-91 compressed the whole process to 80 percent of 336 blocks so that SegWit signaling could be made mandatory quickly; it locked in at block 476,768 on July 20, 2017 and began enforcement at block 477,120 on July 23, 2017. Speedy Trial, shipped in Bitcoin Core 0.21.1 on May 1, 2021, kept BIP-9 counting but lowered the bar to 1,815 blocks of 2,016, capped the attempt at about three months, and separated lock-in from activation by fixing a minimum activation height in advance.

Where you see it

Block explorers print the version field, usually as an eight character hexadecimal value, and during a live deployment they will show which bit is set. A version beginning 0x20 means the block is using version bits at all; the low bits are the individual signals.

Signalling also leaves a plainer trail in the coinbase transaction, where pools write free text. The string "/P2SH/" marked support for pay to script hash in 2012, and "NYA" marked the New York Agreement in 2017. That field is decoration rather than protocol, but it is often where an argument becomes visible first.

For anyone holding bitcoin, the thing to take from a signaling percentage is what it is not. It is not a referendum, it is not weighted by ownership, and a pool signaling a bit is speaking for hash power that other people rented to it. A rule can reach 95 percent and still be unpopular, and a rule can be enforced by users with no miner support at all.

Miner-activated soft fork vs user-activated soft fork

The two answer different questions. A miner-activated soft fork asks when enforcement should start and lets hash power set the date. A user-activated soft fork asserts the date first and leaves miners to comply or have their blocks rejected. In 2017 both were on the table simultaneously, and the sequence is the point: the miner route had been stalled for months, a user enforced deadline was scheduled, and the miner route completed within weeks of that deadline being credible.

Not to be confused with

Frequently asked questions

Do miners vote on bitcoin's rules?

No. Signalling reports readiness to enforce a rule that node software already contains, and nothing about it changes what your own node considers valid. A rule miners refuse to signal can still be enforced by the users who validate.

What does a 95 percent threshold actually protect against?

Orphaned blocks. If a large minority of hash power is not enforcing a new rule, those miners will keep producing blocks that upgraded nodes reject, wasting their work and briefly splitting the chain. A high bar makes that outcome unlikely.

Related terms

More in Protocol & upgrades