Bitcoin networkAdvanced3 min read

SegWit, Taproot and Bitcoin transaction weight

Connect address formats with witness data, virtual size and Taproot's key-path and script-path spending choices.

Witness spending rules produce transaction weight, which determines virtual size and fees.
Witness spending rules produce transaction weight, which determines virtual size and fees.

The quick answer

SegWit introduced witness data and weight-based block accounting. Taproot adds a newer witness spending design, including Schnorr signatures and optional script paths.

Virtual bytes are not raw bytes

Virtual size is transaction weight divided by four, rounded up. Witness data has different weight treatment from base data. Taproot key-path spending can avoid revealing unused script alternatives, but on-chain amounts remain public.

Step by step

  1. 1

    Check receive and spend support

    Use a wallet that understands the chosen script type. Native SegWit v0 commonly uses bc1q; Taproot uses bc1p and Bech32m.

  2. 2

    Compare actual spending size

    Use the wallet's completed estimate, not a promise that one address type is always cheaper. Input type, output type and spending path all matter.

  3. 3

    Preserve recovery metadata

    Keep the correct script type, derivation information and any required script policy. The address prefix alone is not a complete wallet backup.

Worked example

A transaction weighing 561 weight units is 141 vB after rounding up. At 6 sat/vB its fee is 846 sats, not 841.5.

Before you continue

A related question

Does switching address type move existing coins?

No. Existing outputs keep their spending conditions. Moving funds to another script type needs an actual transaction and fee.

Try it with a tool

Sources & further reading

Source links checked on 15 Oct 2026. Examples explain the mechanics; provider fees and features can change.

  1. BIP 141 github.com
  2. BIP 341 github.com
  3. BIP 350 github.com

Keep learning

All tutorials

Search 1Bitcoin

Tools & guides

Hub listings