User-activated soft fork (UASF)
Also called: UASF, user activated soft fork, BIP 148, BIP148, LOT=true.
A user-activated soft fork (UASF) is a soft fork that full nodes enforce from a set date or height, rather than waiting for miners to signal support.
A user-activated soft fork (UASF) is a way of activating a soft fork in which users' full nodes, rather than miners, decide when the new rules start. Nodes running UASF software begin enforcing the rules, or require blocks to signal for them, at a fixed time or block height, whether or not most hash power has signaled.
How a UASF works
Because soft forks only tighten the rules, upgraded nodes reject blocks that break them. If enough of the economy (exchanges, merchants, wallets) runs the UASF, miners who ignore it risk mining blocks those users won't accept, and so earning coins the economy doesn't recognize. If miners and users disagree for long, the chain can split.
UASFs in Bitcoin's history
- P2SH (BIP 16) was activated in 2012 on a flag day set in node software, an early form of the same idea.
- BIP 148, by Shaolin Fry, proposed that from 1 August 2017 nodes reject blocks not signaling for SegWit. Miners adopted BIP 91, which enforced SegWit signaling at an 80% threshold, so SegWit locked in without a split and activated at block 481,824.
- BIP 8 formalized the option as lockinontimeout=true ("LOT=true"), making signaling mandatory in the last period before the timeout.
- BIP 343 proposed a BIP 8 LOT=true deployment of Taproot. Taproot instead activated through miner signaling (Speedy Trial) at block 709,632.
Supporters see a UASF as a check against miners blocking upgrades users want. Critics point to the risk of a chain split and the difficulty of measuring economic support. The soft forks guide covers these debates, and BIP 8 vs BIP 9 compares the version bits mechanisms.