UTXOs and U: A beginner’s guide to Bitcoin UTXOs
If you’ve ever sent bitcoin before, you’ve already used a UTXO, even if you didn’t know it. UTXOs are just one of the many things that take place in the background when you send bitcoin from one wallet to another.
It doesn’t matter if you’re transferring your bitcoin to another account or wallet that you control, a cold wallet, or a friend. All bitcoin transactions since the first one ever operate with the UTXO model.
UTXO stands for Unspent Transaction Output (the “X” is supposedly there because “transaction” is often abbreviated as “tx”, but the main reason is that it sounds cooler). A UTXO is an amount of bitcoin that has been grouped together as a result of a past transaction. Any amount you receive is itself a UTXO, any amount you send is made up of one or more UTXOs in your wallet.
Don’t worry. You don’t need to know what UTXOs are to send or receive bitcoin, but knowing more about them might help you understand why fees are sometimes higher and why confirmations are sometimes slower.
It sounds more complicated than it is. Let’s break it down, letter by letter.
Gimme a “U”!
Unspent. This is the bitcoin in your wallet. Literally all of the bitcoin that you currently have is “unspent.” When you think about the cash in your wallet or the balance of your bank account, that’s “unspent” too, because if you had spent it, it would be… spent.
What makes the unspent amount of bitcoin unique versus the traditional banking model is that with the UTXO model, unspent amounts are grouped together based on past transactions. Any amount you received would have made a new UTXO in your wallet; e.g., if you were sent 0.00573 BTC, that 0.00573 BTC is considered a UTXO.
The sum total of all bitcoin in your wallet could be thought of as a collection of UTXOs, like coins in a piggy bank, where each UTXO was created by past transactions – hey, that’s our “T” word! Better move on.
Gimme a “T”!
Transaction. Every bitcoin transaction results in a new UTXO. If you receive bitcoin in a transaction, the transaction amount becomes a UTXO. If you send bitcoin to someone else, you’re probably sending a few UTXOs to add up to the correct amount, but you can’t break a UTXO apart to send it, so you have to send too much and then receive some back.
What’s happening in the background is more like you’re sending bitcoin in the set amounts of the UTXOs you have, and then receiving a new UTXO back as change.
It’s kind of like how physical cash works. If you have $100 cash, it could be a $100 bill, or it could be five $20 bills. It could also be some whacky combination like three $20 bills, two $10s, three $5s, a toonie, nine quarters, seven dimes, and a nickel.
Each of those individual amounts of all of those pieces of money that help add up to your $100 total are like the UTXOs of your bitcoin wallet. If you have the right combination, you can pay with exact change – but that’s pretty uncommon.
What’s far more likely is you’ll have to give too much, like handing over a $20 bill for a coffee, and then getting your change (hopefully expecting change from a $20 for a coffee stays true for a long, long time).
The outputs of your transaction are… what the “O” is for. But first, “X.”
Gimme an “X”!
Cool!
Gimme an “O”!
Output. The outputs of your transactions are the amount you sent, and then also the amount you get back as “change.” For the recipient, the amount you sent is a new UTXO for them. For you, the amount you get back is a new UTXO too.
Just like how taping two $10 bills together doesn’t make a twenty and ripping a $10 bill in half doesn’t make two fives, your UTXOs are fixed.
That’s about where the comparison between cash and UTXOs ends, because unlike cash with the set denominations of bills and coins, bitcoin has way more flexibility when it comes to being divided for convenience.
Now gimme a “Y”! As in, “Y should I care?”
Plain and simple, more UTXOs means more data needs to be processed which in turn, increases transaction fees. If you don’t move bitcoin around often, you probably don’t need to worry about UTXOs at all.
It’s only with frequent transactions, including sending it to your own wallet for self-custody, that you might notice the fees adding up.
How to manage UTXOs
Some shakers mistakenly believe that they can achieve UTXO consolidation by withdrawing funds from their Shakepay account to the same address multiple times. Sadly, that’s not true – each withdrawal would still count as a separate transaction, which might lead to higher fees later on.
The simplest approach to manage UTXOs is to withdraw in larger amounts. This will create fewer UTXOs and therefore lower transaction fees later, when you want to move your bitcoin again.
Some hardware wallets, like Trezor, offer a feature called Coin Control that lets you see and manage your UTXOs. You can’t change them, but you can select which to use in your next transaction.
I’ve heard of bitcoin “dust,” what’s the deal there?
Bitcoin dust is a byproduct of bitcoin transactions that’s usually swept up in the fees. It’s teeny tiny UTXOs that are so small you would lose money to send them. Dust can get “trapped” in wallets because it’s not economically feasible to include it in a transaction.
To put the negligibility of the amount into perspective, it would be like paying for overnight first-class mail to send yourself a penny. You’d be better off worrying about whether there’s change between your couch cushions.
Wrapping up
So let's sum things up. If you're moving small amounts of bitcoin into self-custody regularly, be aware that high transaction fees can eat into your funds when you go to use them.
Smart UTXO management can help keep these fees in check and prevent bitcoin dust from piling up. To strike a balance between maintaining self-custody and keeping costs down, consider withdrawing larger amounts.
When it comes to UTXOs, a little planning goes a long way in saving you more than just pocket change, so you might be better off bulking up your withdrawals to slim down those fees.