Skip to main content
Skip to main content
Transactions

UTXOs: How Bitcoin Actually Works

Most people think of their Bitcoin wallet like a bank account, a single balance that goes up and down. This mental model is wrong, and misunderstanding it leads to costly mistakes.

Bitcoin uses the UTXO model: Unspent Transaction Outputs. Understanding UTXOs is fundamental to understanding Bitcoin.

What is a UTXO?โ€‹

A UTXO is an Unspent Transaction Output, a discrete chunk of bitcoin that you can spend.

Think of UTXOs as digital coins or digital bills in your wallet. You don't have a "balance" in the traditional sense. You have a collection of individual UTXOs, and your wallet displays their sum.

The Cash Analogyโ€‹

Imagine your physical wallet contains:

BillsValue
One $50 bill$50
Two $20 bills$40
Three $5 bills$15
Total$105

You don't have "$105 of balance." You have six physical bills that add up to $105.

Your Bitcoin wallet works the same way:

UTXOsValue
One UTXO0.05 BTC
One UTXO0.02 BTC
One UTXO0.02 BTC
One UTXO0.005 BTC
One UTXO0.005 BTC
Total0.1 BTC

You don't have "0.1 BTC of balance." You have five UTXOs that add up to 0.1 BTC.

How UTXOs Are Created and Destroyedโ€‹

UTXOs follow a simple lifecycle:

CREATION:
When someone sends you bitcoin, a new UTXO is created.
This UTXO is "locked" to your address; only you can spend it.

DESTRUCTION:
When you spend a UTXO, it is completely consumed.
It no longer exists. New UTXOs are created from its value.

Every Transaction Destroys and Creates UTXOsโ€‹

When you send bitcoin:

  1. Inputs: Existing UTXOs you own are consumed (destroyed)
  2. Outputs: New UTXOs are created for recipients (and change for you)

Paying 0.04 BTC from a wallet holding 0.05, 0.03 and 0.02 BTC UTXOs: the 0.05 is destroyed whole and becomes 0.04 for the recipient, a new 0.0099 change UTXO and a 0.0001 mining fee, while the other two UTXOs stay untouched

Key Properties of UTXOsโ€‹

1. UTXOs Are Indivisibleโ€‹

You cannot spend "part" of a UTXO. When you use a UTXO as a transaction input, the entire UTXO is consumed.

Example:
You have a 0.1 BTC UTXO and want to pay 0.03 BTC.

  • You must spend the whole 0.1 BTC UTXO
  • 0.03 BTC goes to the recipient
  • ~0.07 BTC comes back to you as a new UTXO (change)

2. UTXOs Can Be Combinedโ€‹

You can spend multiple UTXOs in a single transaction. They all get consumed, and their combined value creates new outputs.

Combining UTXOs: three 0.02 BTC coins are consumed together to pay 0.05 BTC, produce 0.0099 BTC change and leave 0.0001 BTC as fee; all three inputs are destroyed in one spend

3. Each UTXO Has a Historyโ€‹

Every UTXO can be traced back through the blockchain to its creation. This history is permanent and public.

A 0.05 BTC UTXO traced back through its history: a payment from Alice, before that an exchange withdrawal, a mining pool payout, and finally the coinbase mining reward; every hop is permanent and public

This traceable history has important implications for privacy.

4. UTXOs Are Locked by Addressesโ€‹

Each UTXO is "locked" to a specific Bitcoin address. Only someone with the private key for that address can "unlock" and spend it.

Your wallet manages many addresses and their UTXOs automatically. When you see a "balance," your wallet is summing all UTXOs locked to addresses it controls.

Why the UTXO Model Mattersโ€‹

Transaction Fees Depend on UTXOsโ€‹

Bitcoin fees are based on transaction size in bytes, not the value being sent.

Each UTXO input adds bytes to your transaction:

Input TypeSize
Legacy (P2PKH)~148 bytes
SegWit (P2WPKH)~68 vbytes
Taproot (P2TR)~57 vbytes

More UTXOs = Larger transaction = Higher fees

SAME VALUE, DIFFERENT FEES:
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Sending 0.1 BTC using 1 UTXO:
~140 vbytes โ†’ Low fee

Sending 0.1 BTC using 10 UTXOs:
~680 vbytes โ†’ ~5x higher fee

Sending 0.1 BTC using 50 UTXOs:
~3,400 vbytes โ†’ ~25x higher fee

Privacy Depends on UTXO Handlingโ€‹

When you combine UTXOs from different sources, you reveal they belong to the same owner:

PRIVACY LEAK:
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
INPUTS: OUTPUT:
From Exchange A โ”€โ”
From Exchange B โ”€โ”ผโ”€โ”€โ†’ 0.15 BTC (payment)
From friend โ”€โ”˜

Chain analysis conclusion:
"All three inputs belong to the same person"

This is called the common-input-ownership heuristic. See Chain Analysis Explained for more details.

Small UTXOs Can Become Unspendableโ€‹

If a UTXO is worth less than the fee required to spend it, it becomes economic dust, trapped forever.

Example during high fees (100 sat/vB):

  • Spending one SegWit input costs ~6,800 sats in fees
  • A UTXO worth 5,000 sats costs more to spend than it's worth
  • This UTXO is effectively worthless until fees drop significantly

UTXOs in Your Walletโ€‹

Your wallet software handles UTXOs automatically:

FunctionWhat Your Wallet Does
BalanceSums all UTXOs you control
ReceivingGenerates new addresses to receive new UTXOs
SendingSelects which UTXOs to spend (coin selection)
ChangeCreates change outputs back to addresses you control

Coin Selectionโ€‹

When you send bitcoin, your wallet must choose which UTXOs to spend. This is called coin selection.

Different wallets use different strategies:

StrategyBehavior
Largest firstUses biggest UTXOs first
Smallest firstUses smallest UTXOs first
RandomSelects randomly
Branch and boundTries to find exact match (no change)

Advanced users use coin control to manually select UTXOs. This is important for privacy and fee optimization.

UTXO Visualizationโ€‹

Here's how to think about your wallet:

A wallet showing a 0.088 BTC balance actually holds five separate UTXOs of 0.05, 0.02, 0.01, 0.005 and 0.003 BTC, each locked to its own address with its own history, and each spent whole or not at all

Each UTXO:

  • Has a specific value
  • Is locked to a specific address
  • Has a history on the blockchain
  • Must be spent entirely when used

Common Misconceptionsโ€‹

โŒ "I can send part of my balance"โ€‹

Reality: You can only spend whole UTXOs. Your wallet creates change automatically, but behind the scenes, entire UTXOs are being consumed.

โŒ "Fees depend on how much I'm sending"โ€‹

Reality: Fees depend on transaction size (bytes), which depends on how many UTXOs you're spending, not their value.

โŒ "All my bitcoin is the same"โ€‹

Reality: Each UTXO has different history, came from different sources, and may have different privacy implications.

โŒ "My wallet balance is one number"โ€‹

Reality: Your balance is a sum of discrete UTXOs. Understanding which UTXOs you have and where they came from is important for fees and privacy.

Key Takeawaysโ€‹

  • Bitcoin uses UTXOs (Unspent Transaction Outputs), not account balances
  • Your wallet balance is the sum of individual UTXOs you control
  • UTXOs are indivisible: you spend them entirely or not at all
  • More UTXOs = higher fees because each adds bytes to transactions
  • Combining UTXOs reveals common ownership (privacy implication)
  • Each UTXO has a traceable history on the blockchain
  • Small UTXOs can become unspendable dust during high fees

Continue Learning