SegWit (Segregated Witness) is a Bitcoin protocol upgrade activated in August 2017 that separates transaction signature data (the "witness") from the main transaction body. This fixes transaction malleability, enables Layer 2 solutions like Lightning, and effectively increases block capacity without changing the block size limit.
What Is SegWit?
2 min read
The short version
Imagine a shipping container with a weight limit. SegWit moved the heaviest part (signatures) into a sidecar that doesn't count fully against the limit. The container now fits more transactions, and as a bonus, removing the signatures from the transaction ID prevents a specific type of manipulation that was blocking advanced features.
How It Works
Before SegWit, signature data was embedded in the transaction and included in the transaction ID (txid) hash. This meant anyone could slightly modify the signature without invalidating it, changing the txid, called "transaction malleability." SegWit moves signature data to a separate "witness" structure. The witness data counts at only 1/4 weight in the new "block weight" metric (max 4M weight units). A typical SegWit transaction is ~60% signature data, so this effectively gives blocks ~1.7-2x more transaction throughput. The txid now excludes witness data, fixing malleability and enabling Lightning Network payment channels.
Fee savings with SegWit vs. Legacy
A standard 1-input, 2-output transaction weighs ~226 vbytes in legacy format vs. ~141 vbytes with native SegWit (bc1q address). At 20 sat/vB fee rate: legacy costs 4,520 sats (~$2.71) vs. SegWit costs 2,820 sats (~$1.69). That's 37% fee savings per transaction. Over 300,000 daily SegWit transactions, the network saves users approximately $300,000 per day in fees at typical rates.
What People Get Wrong
SegWit increased the block size to 4 MB
SegWit introduced "block weight" (4M weight units) but average blocks are 1.5-2.5 MB in actual data. It's not a simple size increase, witness data counts at a discount.
SegWit was a hard fork
SegWit was a backward-compatible soft fork. Non-upgraded nodes still accept SegWit blocks (they see the transactions as valid "anyone-can-spend" outputs). No chain split occurred.
SegWit is optional and doesn't matter anymore
As of 2024, ~85% of Bitcoin transactions use SegWit. It's the foundation for Lightning Network functionality and Taproot (which builds on SegWit v1).
Keep Reading
Sources & Further Reading
- BIP-141: Segregated Witness
The full technical specification of the SegWit upgrade
- BIP-143: SegWit Transaction Signing
How transaction signing changed with SegWit
- SegWit Adoption Tracker
Live chart showing SegWit transaction adoption percentage over time
Questions People Also Ask
- Do I need to "upgrade" to SegWit?
- If you're using a modern wallet (created after 2018), you likely already use SegWit addresses (starting with bc1q). If not, simply generate a new SegWit wallet and transfer your funds.
- What is the difference between SegWit and native SegWit?
- Wrapped SegWit (P2SH-P2WPKH, starts with 3) is compatible with older systems. Native SegWit (P2WPKH, starts with bc1q) is more fee-efficient and is the current standard.
- Is SegWit related to the Lightning Network?
- Yes. Lightning requires fixing transaction malleability (which SegWit does) to safely build payment channels. Lightning could not work without SegWit.