A Bitcoin protocol upgrade activated in August 2017 that separates (segregates) transaction signature data (witness) from the transaction data. SegWit fixed transaction malleability and effectively increased block capacity.
A Bitcoin protocol upgrade activated in August 2017 that separates (segregates) transaction signature data (witness) from the transaction data. SegWit fixed transaction malleability and effectively increased block capacity.
Segregated Witness was one of the most consequential upgrades in Bitcoin's history. It solved a longstanding bug called transaction malleability — the ability to alter a transaction's ID before confirmation without invalidating it. This bug had prevented reliable construction of multi-step transaction protocols and was a prerequisite blocker for the Lightning Network.
SegWit also introduced a new way to measure block size using weight units instead of raw bytes. By discounting witness data (signatures), SegWit effectively increased the block capacity from 1 MB to approximately 4 MB of weight, or roughly 2-2.5 MB of actual data in practice. This capacity increase was achieved through a soft fork — a backward-compatible change that didn't require all nodes to upgrade simultaneously.
The upgrade was the resolution of the contentious block size wars that divided the Bitcoin community from 2015 to 2017. One faction wanted a simple block size increase (hard fork), while the other favored SegWit's more conservative approach. SegWit's activation via the UASF (User Activated Soft Fork) demonstrated that Bitcoin's rules are ultimately determined by node operators, not miners. Today, SegWit transactions account for the vast majority of all Bitcoin transactions, and the upgrade remains the foundation for ongoing protocol development.
Before SegWit, it was possible to modify a transaction's signature in a way that changed its transaction ID without invalidating the transaction itself. This meant you couldn't reliably reference an unconfirmed transaction by its ID, which broke protocols that chained transactions together — most critically, the Lightning Network.
SegWit replaced the 1 MB block size limit with a 4 million weight unit limit. In practice, this allows blocks of roughly 2-2.5 MB depending on the transaction mix. Blocks full of SegWit transactions can process significantly more payments than the old 1 MB limit allowed.
While not strictly required, SegWit addresses (starting with bc1q for native SegWit or bc1p for Taproot) offer lower transaction fees because witness data is discounted. Most modern wallets default to SegWit addresses. There's no practical reason to use legacy addresses unless interacting with very old software.