← Back to Glossary

Transaction Weight: Definition and How Bitcoin Measures Transaction Size

Transaction Weight is the measurement Bitcoin uses to determine how much space a transaction occupies within a block. Introduced with the SegWit (Segregated Witness) upgrade, transaction weight is measured in Weight Units (WU) and forms the basis for calculating a transaction's virtual size (vBytes) and transaction fees.

Transaction Weight Explained in Simple Terms

Before SegWit, Bitcoin measured transactions only by their size in bytes.

After the SegWit upgrade, the network adopted a new system called transaction weight.

Instead of treating every byte equally:

  • traditional transaction data receives a higher weight

  • witness data receives a discounted weight

This allows more transactions to fit into each block without increasing Bitcoin's original security assumptions.

Think of it like airline luggage.

A standard suitcase counts fully toward your baggage allowance, while a lighter carry-on counts less. In a similar way, witness data contributes less to a transaction's total weight.

How Transaction Weight Works

Every part of a Bitcoin transaction contributes to its total weight.

The process works as follows:

  1. Transaction Created
    The wallet constructs the transaction.

  2. Transaction Components Measured
    Base transaction data and witness data are evaluated separately.

  3. Weight Calculated
    Each portion contributes a specific number of Weight Units (WU).

  4. Virtual Size Determined
    The total weight is converted into virtual bytes (vBytes).

  5. Transaction Fee Calculated
    The fee rate (sat/vB) is multiplied by the virtual size.

The relationship between weight and virtual size is:

This is why modern Bitcoin wallets estimate fees using vBytes rather than raw bytes.

Example of Transaction Weight in Practice

Suppose Alice creates a SegWit transaction.

The transaction has:

Total weight: 560 Weight Units (WU)

Its virtual size is:

560 ÷ 4 = 140 vBytes

If the current fee rate is 25 sat/vB, the total fee becomes:

140 × 25 = 3,500 satoshis

Although the transaction physically contains more data, the witness portion receives a lower weight, reducing its effective size for fee calculation.

Why Transaction Weight Matters

Transaction weight is central to Bitcoin's block capacity and fee system.

It helps:

  • measure transaction resource usage

  • calculate virtual transaction size

  • determine transaction fees

  • increase block efficiency through SegWit

  • allocate block space fairly

Without transaction weight, Bitcoin could not apply different treatment to witness and non-witness data.

How Is Transaction Weight Calculated?

Bitcoin assigns different values to different parts of a transaction.

In general:

  • base transaction data counts more heavily

  • witness data receives a discount

The combined total produces the transaction's weight, measured in Weight Units (WU).

Wallet software performs these calculations automatically, so users typically see only the resulting virtual size (vBytes).

Transaction Weight vs Transaction Size

Transaction Weight

Measured in:

  • Weight Units (WU)

Used to:

  • determine block capacity

  • calculate virtual size

Transaction Size

Usually measured in:

  • virtual bytes (vBytes)

Used to:

  • calculate transaction fees

Although closely related, these values are not identical.

Transaction weight is the underlying measurement, while virtual size is the fee calculation unit derived from it.

Transaction Weight and Block Weight

Every Bitcoin block has a maximum weight of approximately 4 million Weight Units.

This limit replaces the original 1 MB block size restriction introduced before SegWit.

As miners build a block:

  • each transaction contributes its weight

  • transactions are added until the block reaches its maximum weight

This approach allows more efficient use of available block space while maintaining compatibility with older Bitcoin software.

Transaction Weight and SegWit

Transaction weight was introduced as part of SegWit.

Its benefits include:

  • discounted witness data

  • increased effective block capacity

  • lower fees for many SegWit transactions

  • improved scalability

  • backward compatibility with older nodes

Without transaction weight, SegWit could not provide these efficiency improvements.

Can Users Reduce Transaction Weight?

Yes.

Users can often reduce transaction weight by:

  • using Native SegWit addresses (P2WPKH)

  • using Taproot addresses (P2TR)

  • minimizing unnecessary transaction inputs

  • consolidating UTXOs during periods of low fees

  • allowing wallets to optimize transaction construction

Reducing transaction weight usually lowers the total fee required for confirmation.

Frequently Asked Questions

Still have questions about Transaction Weight?

Have traffic?

Earn with the best product in cloud mining

Become a partner
15%

First purchase

On every new user’s first purchase. No limit on the purchase amount.

5%

Repeat purchases

Earn for life from every repeat purchase. When the user buys again, you earn again.