Since my last post about UTXO consolidation, I’ve received messages and comments with questions like: What are UTXOs? or How do UTXOs work?
Here’s an explanation that’s easy for a newbie to understand and also useful for an expert to refresh.
1) What is a UTXO
A UTXO (Unspent Transaction Output) is a specific “piece” of bitcoin that exists on the network and has not been spent yet.
It’s not a number in an account. It’s more like a bill or a coin: something you can point to and say, “this is mine and I haven’t used it yet.”
Your wallet doesn’t store “a balance” like a bank would. What it has is multiple pieces (UTXOs) that, when added up, make your total. Each one comes from a previous transaction and stays “alive” until you spend it.
Keep this mental note: Bitcoin works with pieces, not balances.
2) Why do you have UTXOs in your wallet
You have UTXOs because every time you receive BTC, the network creates one or more outputs assigned to your address.
If you receive 0.01 BTC today and 0.02 BTC tomorrow, you’ll end up with two different UTXOs, even if your wallet shows a balance of 0.03. This happens because a Bitcoin transaction doesn’t “deposit money into an account”; it creates outputs that become linked to you.
Your wallet simply presents those pieces as a single balance for convenience. But underneath, there’s an inventory of separate pieces.
Consequence: many small receipts = many small pieces accumulating in your wallet.
3) How a transaction works
A Bitcoin transaction consumes existing UTXOs (inputs) and creates new UTXOs (outputs).
Inputs: the pieces your wallet selects from its inventory to cover the payment.
Outputs: the new pieces that are created. Usually two: one to the recipient and one back to you as change.
Fee: the fee doesn’t show up as an output “to the miner.” It’s simply the difference between what goes in and what goes out.
> fee = sum(inputs) − sum(outputs)
The key idea: when you pay, your old UTXOs are destroyed and new UTXOs are born. Nothing is “transferred”; it’s consumed and recreated.
4) UTXOs in Bitcoin: what they are and how they work (big picture)
Think of the blockchain like a factory that, with every block, keeps issuing new pieces.
Every transaction creates outputs. Some are later spent in other transactions; others remain unspent as available UTXOs. The network validates that each UTXO can only be spent once: each input references a specific previous output, and the consensus rules prevent reusing it. That’s how Bitcoin solves the double-spend problem without needing a bank.
That’s why the UTXO model is so robust: accounting is concrete (individual pieces) and verifiable by any node.
5) How you spend a UTXO: inputs, outputs, and change
Spending a UTXO is like paying with a large bill: you can’t split it, you hand it over whole and you get change back.
Example: you have a 0.10 BTC UTXO and you want to pay 0.06 BTC. Your transaction will create:
- Recipient output: 0.06 BTC
- Change output back to you: 0.10 − 0.06 − 0.005 fee
The recipient gets their 0.06 BTC, and you get 0.035 BTC back as change.
The wallet automatically decides which address receives that change. For privacy, it usually uses a new address that belongs to you.
There is almost always change. It’s not a bug or something weird; it’s normal Bitcoin behavior.
6) How the fee is calculated
In Bitcoin, the fee doesn’t depend on the amount you send. It depends on two things: your transaction’s data size and the rate per unit you’re willing to pay.
- Size: measured in vbytes (virtual bytes). The more inputs and outputs your transaction has, the more vbytes it uses.
- Rate: expressed in sat/vB (satoshis per virtual byte). It varies depending on network congestion at that moment.
> fee (sats) = size (vB) × rate (sat/vB)
Direct conclusion: more inputs and outputs = more data = more vbytes = more fee, even if the amount you send is small.
Ideally, if you don’t need the transaction urgently, some people wait for times when the mempool shows low fees to execute it — for example, to consolidate UTXOs.
7) Why your UTXOs affect your fees
The biggest driver of transaction size is the number of inputs.
If your wallet has to combine 30 small UTXOs to cover a payment, the transaction will be large and cost much more than if you could pay with 2 large UTXOs.
That’s why consolidation exists: merging many UTXOs into a few when fees are low. Then, when you need to make a real payment, your transaction will be lighter and cheaper.
Careful: consolidation is useful, but it comes with a privacy cost, because it links multiple pieces in a single transaction and reveals they’re all yours. It’s a trade-off each person must evaluate.
Remember: more inputs → more vbytes → more fee.
8) The essentials in 6 lines
- A UTXO is an unspent piece of BTC.
- Your wallet stores many pieces, not a “bank balance.”
- A transaction consumes inputs and creates new outputs.
- There’s almost always a change output back to you.
- The fee depends on data size, not amount: fee = size (vB) × rate (sat/vB).
- Many small UTXOs mean larger transactions and higher fees.