# Bitcoin virtual size: bytes, weight and vbytes

Bitcoin virtual size is transaction weight divided by four, rounded up. Under the SegWit weight definition, non-witness bytes count more heavily than witness bytes. A transaction’s raw serialized byte count can therefore differ from the virtual size used when quoting fees in sat/vB.

Evidence: [Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki)

Canonical: https://degreesofsatoshi.com/encyclopedia/bitcoin-virtual-size/
Published: 2026-10-02
Substantively modified: 2026-10-02
Independently verified by an automated reviewer: 2026-10-02T18:15:23.891Z
Data current through: 2026-10-02

AI-assisted research and drafting with a separate automated source-verification pass; no external expert or named human review is implied.

## Key facts

- **Weight:** Weight = base size × 3 + total size. ([Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki))
- **Virtual size:** Virtual size = ceiling(weight ÷ 4). ([Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki))
- **Fee rate:** A sat/vB quote applies to virtual size, not necessarily raw bytes. ([Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki); [walletcreatefundedpsbt RPC](https://bitcoincore.org/en/doc/29.0.0/rpc/wallet/walletcreatefundedpsbt/))

## The two sizes in the formula

Base size excludes witness serialization; total size includes it. The formula counts base bytes four times in total and witness bytes once. This weighting lets different spending formats consume block capacity differently.

The discount does not make signatures free. Witness data still contributes to weight, and the transaction still has non-witness fields.

Evidence: [Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki)

## Work through the rounding

For an illustrative transaction with 100 base bytes and 250 total bytes, weight is 100 × 3 + 250 = 550 weight units. Virtual size is ceiling(550 ÷ 4), or 138 vbytes. Dividing 250 raw bytes into the fee would answer a different question.

At 10 sat/vB, a 138-vbyte transaction has a target fee of 1,380 satoshis. Final size and rounding should be checked after the transaction’s actual spending data is known.

Evidence: [Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki)

## Compare wallets using the same units

A wallet may display bytes, weight units, vbytes, a total BTC fee or satoshis per virtual byte. Identify the unit before comparing estimates. Bitcoin Core’s RPC documents both sat/vB and older BTC/kvB options with different field names.

The fee rate is not based simply on the amount of bitcoin being transferred. Input and output structure determine the transaction’s size.

Evidence: [walletcreatefundedpsbt RPC](https://bitcoincore.org/en/doc/29.0.0/rpc/wallet/walletcreatefundedpsbt/); [Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki)

## Questions

### Can I multiply a sat/vB quote by a raw-byte count?

Only if that raw count happens to equal the transaction’s virtual size. Use the explicitly reported virtual size or compute it from weight.

Evidence: [Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki)

## Claims and scope

### bitcoin-virtual-size-quick-answer

Bitcoin virtual size is transaction weight divided by four, rounded up. Under the SegWit weight definition, non-witness bytes count more heavily than witness bytes. A transaction’s raw serialized byte count can therefore differ from the virtual size used when quoting fees in sat/vB.

Scope: {"collection":"bitcoin","dataAsOf":"2026-10-02","blockHeight":null}

### bitcoin-virtual-size-fact-weight

Weight: Weight = base size × 3 + total size.

Scope: {"collection":"bitcoin","dataAsOf":"2026-10-02","blockHeight":null}

### bitcoin-virtual-size-fact-virtual-size

Virtual size: Virtual size = ceiling(weight ÷ 4).

Scope: {"collection":"bitcoin","dataAsOf":"2026-10-02","blockHeight":null}

### bitcoin-virtual-size-fact-fee-rate

Fee rate: A sat/vB quote applies to virtual size, not necessarily raw bytes.

Scope: {"collection":"bitcoin","dataAsOf":"2026-10-02","blockHeight":null}

## Sources

- [Segregated Witness consensus layer](https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki) — Bitcoin BIPs contributors. Transaction weight and virtual-size definitions in the SegWit specification. Locator: Block size; Transaction size. Retrieved: 2026-10-02T17:22:20.465Z.
- [walletcreatefundedpsbt RPC](https://bitcoincore.org/en/doc/29.0.0/rpc/wallet/walletcreatefundedpsbt/) — Bitcoin Core. Input selection, fee units, change output, selected inputs and transaction funding. Locator: Arguments and result fields. Retrieved: 2026-10-02T17:03:40.827Z.

## Revision history

- 2026-10-02: Initial Bitcoin encyclopedia entry at this permanent URL.
- 2026-10-02: Added reusable claims, explicit source locators, and matching Markdown and JSON. This publishing change does not itself establish factual verification.

## Cite this entry

Degrees of Satoshi editorial project. “Bitcoin virtual size: bytes, weight and vbytes.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/bitcoin-virtual-size/
