<p>Witnesses do not need to be stored once they have been verified and can be discarded. This effectively reduces the size of the UTXO. The discount is supposed to account for the reduced storage requirements and to encourage users to switch to segwit, benefiting the network as a whole. </p>

CC BY-SA 3.0
2016-04-03T15:07:22.753Z
We never stored signature data in UTXO.
Nick ODell
CC BY-SA 3.0
2016-04-03T20:08:09.110Z
@NickODell But right now, storing data in the blockchain costs the same, whether you make it go into the UTXO set or not. Witness data never affects the UTXO set (doesn't cause storage, but also doesn't require UTXO database updates when processing).
Pieter Wuille
CC BY-SA 3.0
2016-04-05T06:29:18.227Z
So, do I understand correctly: There is only the identifying information in the UTXO. The signature script goes to the witness kept separately on disk, because we only need it once when the UTXO is being spent, while we need the UTXO set all the time, so see whether UTXO are available for spending. Wasn't that the way it was already? So, I understand why the blockchain size will be reduced later, as we can prune the witness data when an UTXO is spend. I understand why this will encourage people to spend UTXO and reduce the number of UTXO, but how does it change the size of the UTXO?
Murch
CC BY-SA 3.0
2016-04-05T06:35:06.857Z
Or do you mean it will reduce the number of UTXO in the first place?
Murch
CC BY-SA 3.0
2016-05-16T01:04:02.583Z
There is (1) outputs, which go into the UTXO, counted at 1.0x (2) inputs which do not go into the UTXO set, counted at 1.0x (3) witnesses which also don't go into the UTXO set, counted at 0.25x. Ideally, we'd discount everything that wasn't affecting the UTXO set, but we can't. The best we can do is move as much of the data to (3) where it is discounted.
Pieter Wuille
CC BY-SA 3.0
2016-04-03T11:51:59.960Z
2016-04-03T11:51:59.960Z
cdecker
<p>Because Txouts are about 1/4th the size of TxIns, since signatures are that much bigger than a simple hash.</p>

<p>This means that in the old situation it was cheaper to split coins (increasing UTXO set size and creating more dust) than to merge them (decreasing UTXO set size).</p>

<p>With this discount, the playing field is leveled so that when the wallet has a choice, it will not favour UTXO increase.</p>

<p>Adam Back:</p>

<p><a href="https://www.reddit.com/r/Bitcoin/comments/4d3pdg/clearing_the_fud_around_segwit/d1o12q1" rel="nofollow">https://www.reddit.com/r/Bitcoin/comments/4d3pdg/clearing_the_fud_around_segwit/d1o12q1</a></p>

<p>Gregory Maxwell:</p>

<p><a href="https://www.reddit.com/r/Bitcoin/comments/4d3pdg/clearing_the_fud_around_segwit/d1ns0bo" rel="nofollow">https://www.reddit.com/r/Bitcoin/comments/4d3pdg/clearing_the_fud_around_segwit/d1ns0bo</a></p>

CC BY-SA 3.0
2016-04-03T16:35:27.863Z
2016-04-29T12:01:12.790Z
2016-04-29T12:01:12.790Z
Jannes
<p>A transaction input means that the previous output it is spending can be removed from the expensive UTXO set. To incentivize making txin's (and hence reducing the UTXO size), Segregated witness includes a change to count the size of transaction input scripts as 1/4 the number of bytes that it actually consumes. </p>

<p>Transactions typically compete for block space by attempting to have a high ratio of fees to byte size in the block. By counting the bytes from inputs as 1/4 of the actual bytes the inputs consume, it makes transactions with more inputs more competitive in having a high fee to size ratio. Hence, the change in counting input data size incentivizes transaction makers to spend more inputs by essentially requiring less in fees. </p>

<p>It should be noted that although spending more inputs makes the UTXO set smaller in size, it also associates some outputs (addresses) as likely being owned by the same user. So there is a privacy/cost trade off for the user. </p>

<p>Additionally, another reason that the witness data is discounted is that it presents an opportunity to increase the block size as a soft fork. </p>

CC BY-SA 3.0
2016-04-03T23:35:34.600Z
2016-04-03T23:35:34.600Z
morsecoder
<p>I've read that it encourages users to consolidate UTXO sets. How would it be doing that?</p>

<segregated-witness><utxo><utxo-set><witness-data><consolidation>
Why is the witness data fee discounted by a factor of four?
Murch
# Why is the witness data fee discounted by a factor of four?

(Asked by: username_0 on 2016-04-03)

I've read that it encourages users to consolidate UTXO sets. How would it be doing that?

**Tags:** segregated-witness, utxo, utxo-set, witness-data, consolidation


---

## 3 answers

### Answer by username_5 on 2016-04-03. Score: 8 | Accepted answer

A transaction input means that the previous output it is spending can be removed from the expensive UTXO set. To incentivize making txin's (and hence reducing the UTXO size), Segregated witness includes a change to count the size of transaction input scripts as 1/4 the number of bytes that it actually consumes.

Transactions typically compete for block space by attempting to have a high ratio of fees to byte size in the block. By counting the bytes from inputs as 1/4 of the actual bytes the inputs consume, it makes transactions with more inputs more competitive in having a high fee to size ratio. Hence, the change in counting input data size incentivizes transaction makers to spend more inputs by essentially requiring less in fees.

It should be noted that although spending more inputs makes the UTXO set smaller in size, it also associates some outputs (addresses) as likely being owned by the same user. So there is a privacy/cost trade off for the user.

Additionally, another reason that the witness data is discounted is that it presents an opportunity to increase the block size as a soft fork.


---

### Answer by username_1 on 2016-04-03. Score: 6

Witnesses do not need to be stored once they have been verified and can be discarded. This effectively reduces the size of the UTXO. The discount is supposed to account for the reduced storage requirements and to encourage users to switch to segwit, benefiting the network as a whole.

> **Comments:**
> **username_2**: We never stored signature data in UTXO.  
> **username_3**: @username_2 But right now, storing data in the blockchain costs the same, whether you make it go into the UTXO set or not. Witness data never affects the UTXO set (doesn't cause storage, but also doesn't require UTXO database updates when processing).  
> **username_0**: So, do I understand correctly: There is only the identifying information in the UTXO. The signature script goes to the witness kept separately on disk, because we only need it once when the UTXO is being spent, while we need the UTXO set all the time, so see whether UTXO are available for spending. Wasn't that the way it was already? So, I understand why the blockchain size will be reduced later, as we can prune the witness data when an UTXO is spend. I understand why this will encourage people to spend UTXO and reduce the number of UTXO, but how does it change the size of the UTXO?  
> **username_0**: Or do you mean it will reduce the number of UTXO in the first place?  
> **username_3**: There is (1) outputs, which go into the UTXO, counted at 1.0x (2) inputs which do not go into the UTXO set, counted at 1.0x (3) witnesses which also don't go into the UTXO set, counted at 0.25x. Ideally, we'd discount everything that wasn't affecting the UTXO set, but we can't. The best we can do is move as much of the data to (3) where it is discounted.  

---

### Answer by username_4 on 2016-04-03. Score: 5

Because Txouts are about 1/4th the size of TxIns, since signatures are that much bigger than a simple hash.

This means that in the old situation it was cheaper to split coins (increasing UTXO set size and creating more dust) than to merge them (decreasing UTXO set size).

With this discount, the playing field is leveled so that when the wallet has a choice, it will not favour UTXO increase.

Adam Back:

<https://www.reddit.com/r/Bitcoin/comments/4d3pdg/clearing_the_fud_around_segwit/d1o12q1>

Gregory Maxwell:

<https://www.reddit.com/r/Bitcoin/comments/4d3pdg/clearing_the_fud_around_segwit/d1ns0bo>


---

