<p>Yes, having only a single leaf and all else being equal, a P2TR input costs 34 witness bytes (8.5 vbytes) more than a P2WSH input with the same script.</p>
<p>However, almost all current usage of P2WSH (which consists mainly of multisigs and Lightning channels) can benefit from the features of P2TR to reduce costs. Multisigs are cheaper with key aggregation schemes such as MuSig and FROST and can often use the key path to reduce costs even further. Lightning benefits from splitting conditions into multiple leaves, using the key path for simple key conditions and the aforementioned key aggregation.</p>

CC BY-SA 4.0
2024-07-01T06:11:24.530Z
2024-07-01T06:11:24.530Z
Vojtěch Strnad
<p>As I understand, <code>p2pkh</code> and <code>p2sh</code> are nothing better than <code>p2wpkh</code> and <code>p2wsh</code>, other than compatibilty.</p>
<p>After taproot, <code>p2wpkh</code> is also nothing better than <code>p2tr</code>, other than compatibilty(no economic incentive according to <a href="https://bitcoin.stackexchange.com/questions/119301/is-there-an-economic-incentive-to-switch-from-p2wpkh-to-p2tr">this</a>).</p>
<p>However, when it comes to comparison between <code>p2tr</code> script spend and <code>p2wsh</code>, there would be an &quot;economic incentive&quot; to use <code>p2wsh</code> over <code>p2tr</code>.</p>
<p>If under following assumptions,</p>
<ol>
<li>Tapscript only contains &quot;single&quot; script(tap leaf is single).</li>
<li>Script itself cannot be divided into multiple leaves(i.e. <code>OP_IF A OP_ELSE B</code> can be divided into 2 leaves).</li>
<li>Script requires less than 5 signatures, as schnorr signature is more compact(about 6~8 bytes) compared to ecdsa DER format in size.</li>
<li>No motivation to spend in <code>p2tr</code> key path.</li>
</ol>
<p>All of the witness items to provide would be same for <code>p2wsh</code> and <code>p2tr</code> if locking script to spend is same,
except that <code>p2tr</code> must provide tap control block of 33 bytes, even if it's only for single script spend.</p>
<p>However, I found the answer regarding comparison of <code>p2wsh</code> and <code>p2tr</code> <a href="https://bitcoin.stackexchange.com/questions/106958/will-p2tr-make-p2wsh-obsolete">here</a>, which states,</p>
<blockquote>
<p>As far as I can tell, P2TR is better than P2WSH in almost every way. I cannot think of a case in which it would be a significant advantage to use P2WSH over P2TR, except that P2WSH is already established.</p>
</blockquote>
<p>Am I missing something? or is there other significant benefit which can offset this?</p>

<script><taproot><p2tr><transaction-weight><p2wsh>
Is there an economic incentive to use P2WSH over P2TR?
Hyunhum Cho
# Is there an economic incentive to use P2WSH over P2TR?

(Asked by: username_0 on 2024-07-01)

As I understand, `p2pkh` and `p2sh` are nothing better than `p2wpkh` and `p2wsh`, other than compatibilty.

After taproot, `p2wpkh` is also nothing better than `p2tr`, other than compatibilty(no economic incentive according to [this](https://bitcoin.stackexchange.com/questions/119301/is-there-an-economic-incentive-to-switch-from-p2wpkh-to-p2tr)).

However, when it comes to comparison between `p2tr` script spend and `p2wsh`, there would be an "economic incentive" to use `p2wsh` over `p2tr`.

If under following assumptions,

1. Tapscript only contains "single" script(tap leaf is single).
2. Script itself cannot be divided into multiple leaves(i.e. `OP_IF A OP_ELSE B` can be divided into 2 leaves).
3. Script requires less than 5 signatures, as schnorr signature is more compact(about 6~8 bytes) compared to ecdsa DER format in size.
4. No motivation to spend in `p2tr` key path.

All of the witness items to provide would be same for `p2wsh` and `p2tr` if locking script to spend is same,
except that `p2tr` must provide tap control block of 33 bytes, even if it's only for single script spend.

However, I found the answer regarding comparison of `p2wsh` and `p2tr` [here](https://bitcoin.stackexchange.com/questions/106958/will-p2tr-make-p2wsh-obsolete), which states,

> As far as I can tell, P2TR is better than P2WSH in almost every way. I cannot think of a case in which it would be a significant advantage to use P2WSH over P2TR, except that P2WSH is already established.

Am I missing something? or is there other significant benefit which can offset this?

**Tags:** script, taproot, p2tr, transaction-weight, p2wsh


---

## 1 answers

### Answer by username_1 on 2024-07-01. Score: 6 | Accepted answer

Yes, having only a single leaf and all else being equal, a P2TR input costs 34 witness bytes (8.5 vbytes) more than a P2WSH input with the same script.

However, almost all current usage of P2WSH (which consists mainly of multisigs and Lightning channels) can benefit from the features of P2TR to reduce costs. Multisigs are cheaper with key aggregation schemes such as MuSig and FROST and can often use the key path to reduce costs even further. Lightning benefits from splitting conditions into multiple leaves, using the key path for simple key conditions and the aforementioned key aggregation.


---

