Output

Also: vout, TxOut, change

network · beginner

A chunk of bitcoin locked to a spending condition (usually an address). Once created, lives in the UTXO set until consumed by a future input.

A transaction output has two fields:

- value — an integer number of satoshis (1 BTC = 100,000,000 sats).
- scriptPubKey — a locking script that says who is allowed to spend this output.

When a transaction is confirmed, each of its outputs becomes a new [UTXO](/glossary/utxo) — a discrete chunk of bitcoin waiting at an address. The output sits in the UTXO set until some future transaction includes it as an [input](/glossary/input), providing the data needed to satisfy the locking script.

The locking script determines the address type. A few common ones:

- P2PKH (1...) — pay to public-key-hash, the original Satoshi-era address format
- P2SH (3...) — pay to script-hash, a generic wrapper for arbitrary scripts including wrapped SegWit
- P2WPKH (bc1q..., 42 chars) — native SegWit single key
- P2WSH (bc1q..., 62 chars) — native SegWit script (multisig, etc.)
- P2TR (bc1p...) — Taproot

When you "send" Bitcoin, your wallet picks UTXOs as inputs whose total value covers what you want to send plus a fee, then constructs two outputs: one to the recipient and one to a fresh change address you control. The change output is the same as any other output; it just happens to be paying you. This is why your address keeps changing — the chain doesn't reuse output addresses.

Related terms

Where you'll see this