Mcap -- BTC -- ETH -- SOL -- BNB -- XRP -- F&G -- View Market
Loading prices…

UTXO

Unspent Transaction Output — the accounting model Bitcoin uses for balances. Each coin is a discrete chunk that exists until it's fully spent.

Bitcoin 5 min read

UTXO stands for Unspent Transaction Output. It is the accounting model Bitcoin uses to track balances, and understanding it is the thing that makes Bitcoin’s transaction structure make sense. In the UTXO model, there are no “account balances” at the protocol level. Instead, there are discrete chunks of coin — each one the output of some previous transaction — that are either spent or unspent. Your “balance” is the sum of all UTXOs that are payable to addresses you control. When you send a payment, you are selecting some set of your UTXOs as inputs, destroying them, and creating new UTXOs as outputs — some going to the recipient and some going back to you as change if the inputs totaled more than the amount you wanted to send.

The mental model that helps is physical cash. If you have a $20 bill and you want to pay someone $7, you hand them the $20 bill and they give you $13 in change. Bitcoin works the same way: you cannot “send half of a UTXO”, you have to spend the whole UTXO as an input and then construct outputs that add up to the right totals. The UTXO you spent no longer exists after the transaction; in its place are the new outputs. Over a wallet’s lifetime, it accumulates many UTXOs, spends them in transactions, and ends up with a different set of UTXOs each time, all of which still add up to a balance that represents how much Bitcoin the wallet controls.

Why Bitcoin Chose This Model

The UTXO model has several useful properties that made it a natural choice for Bitcoin’s design.

Parallel verification. Because each transaction’s validity depends only on the UTXOs it consumes (not on any shared global state), transactions can be verified in parallel. Two transactions from two different senders using two different sets of UTXOs have no interactions and can be processed independently. This makes Bitcoin’s consensus rules simpler to implement and reason about than Ethereum’s account-based model, where transactions can have complicated interactions through shared contract state.

Explicit history. Every UTXO has a clear provenance — you can trace any coin back to the mining transaction that created it — and the entire history of a bitcoin is recoverable from the transaction graph. This makes audit, forensics, and protocol-level coin tracking easier than in account-based systems.

Simpler state. The entire state of Bitcoin at any moment is just the UTXO set — the collection of outputs that have been created but not yet spent. This is a simple, bounded data structure that every full node maintains. Ethereum’s state, by contrast, includes all the storage of every contract and is much larger and harder to prune.

Ethereum’s Account Model as Contrast

Ethereum uses a different accounting model called the account-based model. Each address has a balance stored in a global state database, and a transaction simply decreases the sender’s balance and increases the recipient’s balance — like a bank transfer. There are no UTXOs; there are account balances that get updated in place. This model is more intuitive for most people (it matches how bank accounts work) and makes some things easier — smart contracts in particular are much more natural in an account model, because contract state can be stored alongside the contract’s address.

The tradeoff is that Ethereum’s state is harder to manage and verify. Every node has to track every account’s balance and every contract’s storage, and the state grows continuously as new accounts and contracts are created. This is why Ethereum nodes have much larger hardware requirements than Bitcoin nodes — the state is fundamentally bigger.

Coin Control and Privacy

Because each UTXO is a distinct object with its own history, Bitcoin users have more control over which coins get spent in a given transaction. Sophisticated wallets offer “coin control” — the ability to manually select which UTXOs to use as inputs rather than letting the wallet automatically pick the cheapest combination. This matters for privacy: if you have UTXOs from multiple sources, combining them in a single transaction creates a link between the sources (from a chain analysis perspective), whereas keeping them separate preserves some privacy.

Wallets like Sparrow and Wasabi make coin control a first-class feature and encourage users to think carefully about which UTXOs to combine. Most consumer wallets (Blue Wallet, Phoenix, Coinbase Wallet) hide coin control entirely and just present a single balance, which is friendlier for beginners but surrenders some of the privacy benefit of the UTXO model.

The Practical Implication

For ordinary Bitcoin users, UTXOs are mostly invisible — you see a balance in your wallet and you send transactions without thinking about the underlying chunks. But a few things surface occasionally. Dust is the term for UTXOs that are smaller than the minimum amount that makes economic sense to spend — spending them would cost more in fees than they are worth. Wallets accumulate dust over time, especially if they receive many small payments, and at some point the dust becomes unspendable in any practical sense.

Consolidation is the practice of combining many small UTXOs into one larger UTXO by sending them to yourself in a single transaction, usually done during a low-fee period. This reduces future transaction fees because your subsequent transactions will have fewer inputs to include. It also creates a privacy event that links all the combined UTXOs together, which is a tradeoff to consider.

Change addresses are addresses your wallet uses to receive the change portion of outgoing transactions. Because reusing addresses hurts privacy, wallets generate fresh change addresses for each transaction, which is why your “wallet” has many addresses even though you may have only ever shared one for receiving. The UTXO model is what makes this pattern work.