What Is a UTXO?

UTXO stands for Unspent Transaction Output. It is the fundamental unit Bitcoin uses to track ownership on the blockchain. Every Bitcoin you own exists as one or more UTXOs - discrete chunks of Bitcoin received from previous transactions that have not yet been spent. Your wallet balance is simply the sum of all your UTXOs.

Understanding UTXOs is key to understanding how Bitcoin transactions actually work under the hood. Unlike a bank account where you have a single balance number, Bitcoin tracks ownership through a collection of discrete, individually spendable outputs.

How UTXOs Are Created and Consumed

Every Bitcoin transaction takes UTXOs as inputs and creates new UTXOs as outputs. When a UTXO is used as an input, it is "consumed" - it ceases to exist as an unspent output. New UTXOs are created as the outputs of the transaction.

UTXOs must be spent entirely. You cannot spend part of a UTXO the way you might spend $20 out of a $50 bill. Instead, the whole UTXO is consumed and new outputs are created - one for the recipient and usually one back to yourself (called change).

A Concrete Example

You have: 1 UTXO worth 0.1 BTC
You want to send: 0.03 BTC to a friend

Transaction inputs: [0.1 BTC UTXO] (consumed, destroyed)
Transaction outputs: [0.03 BTC to friend] + [0.069 BTC back to you as change] + [0.001 BTC fee to miner]

Result: You now have 1 UTXO worth 0.069 BTC. Your friend has 1 UTXO worth 0.03 BTC.

What Is the UTXO Set?

The UTXO set is the complete list of all unspent transaction outputs across the entire Bitcoin blockchain at a given moment. It represents the current state of Bitcoin ownership. Every full node maintains this set in memory to quickly validate new transactions - checking that any inputs being spent actually exist and haven't already been used.

As of 2024, the Bitcoin UTXO set contains roughly 100 million entries, occupying several gigabytes of data.

Why UTXO Management Matters for Fees

Bitcoin transaction fees are based on transaction size in bytes, not the amount being sent. Each UTXO you include as an input adds bytes to the transaction. If your wallet has accumulated many small UTXOs (called "dust"), your transactions will be larger and therefore more expensive.

Consolidating UTXOs during periods of low fees is a common best practice - combine many small UTXOs into fewer larger ones so future transactions are cheaper.

See UTXOs and Transactions Animated in 3D

Bitcoin From Scratch explains UTXOs, inputs, outputs, and how transactions flow through the blockchain - all visualized with 3D animation that makes the abstract model concrete.

Start Bitcoin From Scratch - $97

Frequently Asked Questions

What is a UTXO in Bitcoin?
UTXO stands for Unspent Transaction Output. It is a chunk of Bitcoin that has been received but not yet spent. Your wallet balance is the sum of all your UTXOs. When you send Bitcoin, UTXOs are consumed as inputs and new ones are created as outputs.
How is a UTXO different from a bank balance?
A bank balance is a single number. Bitcoin works differently - you have a collection of discrete UTXOs, like a pile of bills. When you spend Bitcoin, you consume whole UTXOs and create new ones, rather than subtracting from a number.
What is change in a Bitcoin transaction?
Because UTXOs must be spent entirely, if you send less than your full UTXO, the remainder is sent back to you as change. A 0.1 BTC UTXO sending 0.03 BTC creates a 0.03 BTC output to the recipient and ~0.07 BTC back to you (minus fees).
Why does UTXO management matter?
Many small UTXOs make transactions expensive because each input adds to transaction size. Consolidating UTXOs when fees are low saves money. From a privacy angle, combining UTXOs from different sources can link them together on the public blockchain.
What is the UTXO set?
The UTXO set is the complete collection of all unspent transaction outputs on the Bitcoin blockchain. It represents the current state of ownership. Every full node maintains this set to validate new transactions without replaying the entire blockchain.