The 4:1 Witness Discount
The 4:1 Witness Discount
The most critical economic change in SegWit was the Witness Discount. This rule makes the data inside the Witness section (signatures and public keys) 75% cheaper than the rest of the transaction data.
1. How the Discount Works
Every byte of data in a Bitcoin transaction has a cost in Weight Units:
-
Base Data: Headers, Inputs (TXID/VOUT), and Outputs cost 4 Weight Units per byte.
-
Witness Data: Signatures and Scripts cost 1 Weight Unit per byte.
2. Economic Incentive
Because fees are paid based on weight, a transaction with large signatures (like a multisig transaction) is significantly cheaper if it uses SegWit.
-
Legacy Multisig: Every byte of the signature costs full price.
-
SegWit Multisig: Every byte of the signature is 4 times cheaper.
3. Why Discount Signatures?
The "UTXO Set" (the list of all spendable coins) must be stored in the RAM of every full node.
-
Base Data (like Outputs) creates new entries in the UTXO set. This is "expensive" for the network to maintain forever.
-
Witness Data (Signatures) is only needed once to verify a spend. It does not stay in the UTXO set. By discounting witness data, Bitcoin incentivizes users to spend their coins (cleaning up the UTXO set) rather than hoarding many small outputs.
4. Comparison Example
Imagine a 100-byte signature:
-
In a Legacy transaction: It costs 400 WU.
-
In a SegWit transaction: It costs 100 WU.
This 75% discount is the reason why modern "Native SegWit" (Bech32) addresses have lower fees than older "1" or "3" addresses.
| Data Type | Cost per Byte | Impact on UTXO Set |
|---|---|---|
| TXID / Outputs | 4 WU | Permanent / High |
| Signatures | 1 WU | Temporary / Low |
In the next section, we will calculate Virtual Size (vSize).
TeachMeBitcoin is an ad-free, open-source educational repository curated by a passionate team of Bitcoin researchers and educators for public benefit. If you found our articles helpful, please consider supporting our hosting and ongoing content updates with a clean donation: