Bitcoin fee calculator by transaction size
Size in virtual bytes × fee rate. Pick the number of inputs and outputs and the address type; the rates are read live from mempool.space.
Rates read · 1 min ago
Sizes used, per input and output
| Part | Non-witness bytes | Witness bytes | vB |
|---|---|---|---|
| Input · Legacy (P2PKH, 1…) | 148 | 0 | 148 |
| Input · Nested SegWit (P2SH-P2WPKH, 3…) | 64 | 108 | 91 |
| Input · Native SegWit (P2WPKH, bc1q…) | 41 | 108 | 68 |
| Input · Taproot (P2TR, bc1p…) | 41 | 66 | 57.5 |
| Output · Legacy (P2PKH, 1…) | 34 | 0 | 34 |
| Output · Script hash (P2SH, 3…) | 32 | 0 | 32 |
| Output · Native SegWit (P2WPKH, bc1q…) | 31 | 0 | 31 |
| Output · SegWit script (P2WSH) | 43 | 0 | 43 |
| Output · Taproot (P2TR, bc1p…) | 43 | 0 | 43 |
Derived from the serialization rules and BIP-141 weights (ECDSA signature counted at 72 bytes, Schnorr at 64), plus 10 bytes of transaction overhead and 0.5 vB for the SegWit marker. Cross-checked with Bitcoin Optech’s size calculator.
Questions and answers
How many vbytes does a Bitcoin transaction have?
It depends on inputs, outputs and address types. One native SegWit input and two native SegWit outputs make 140.5 vB. Each further native SegWit input adds 68 vB, each legacy input 148 vB, each Taproot input 57.5 vB; each native SegWit output adds 31 vB.
Why is SegWit cheaper than legacy?
BIP-141 counts witness data (the signatures) at a quarter of its size. A legacy input carries its signature in the counted part, so it weighs 148 vB against 68 vB for the same input as native SegWit.
Should I consolidate small inputs?
Spending many small coins in one transaction costs their size once, at the rate of that moment. If the same coins would otherwise be spent later at a higher rate, consolidating while rates are low costs less. Nobody can measure future rates, so this page shows the arithmetic, not a recommendation.