Want to know a secret about Bitcoin? There’s no such thing as accounts or balances, they’re all made up! In fact, there’s only ever UTXOs, nothing more, nothing less. While it might not seem terribly important at first, UTXOs and the UTXO Model that Satoshi pioneered is one of the main reasons why Bitcoin is so private, auditable and transparent.
What Is A UTXO?
In Bitcoin UTXO stands for Unspent Transaction Output. Each UTXO is a discrete, single output or spend that comes from a Bitcoin transaction. For example, if you have 9.61 BTC and you send 0.03 BTC to your friend and keep 9.58 BTC for yourself, besides being a baller, you have just created two UTXOs as they are the output of your transaction.
We can see that the input for this transaction which is on the left (9.61351826 BTC) was a UTXO. Now that it has been spent in this transaction, it’s removed from the network and the bitcoins are transferred to the two new UTXOs on the right hand side (0.0305 BTC + 9.58262826 BTC). When you add up all of the current UTXOs you get the total supply of all bitcoins on the network.
Understanding UTXOs & Examples
UTXOs can be a bit strange for most people as we’re used to money having consistent denominations such as a $5, $10 or $20 bill. However each UTXO can be any value so long as it’s the same or more than the base unit of Bitcoin which is the Satoshi or 0.00000001 BTC.
Importantly, cryptocurrencies like Bitcoin that use the UTXO model don’t have any concept of an account or balance at the network level. Everything is UTXOs to the Bitcoin Network. When you use a Bitcoin Wallet and want to know what your balance is, it simply adds up all the UTXOs that you have the authority to spend. For example, say you have a wallet that has four UTXOs:
- 1 BTC
- 0.5 BTC
- 0.25 BTC
- 0.1 BTC
The Wallets Balance = 1 + 0.5 + 0.25 + 0.1 = 1.85 BTC
All UTXOs that are in the Bitcoin Blockchain are constantly getting spent, destroyed and updated. This is called the UTXO set (technically the chainstate) and is maintained by every Full Bitcoin Node. Each node updates the UTXO set as soon as a new block is mined and as a result, all Full Bitcoin Nodes have the exact same UTXO set. If a new transaction tries to spend a UTXO that has already been spent, then the node knows that it’s a fraudulent transaction, also called a double-spend and will reject it.
The UTXO model allows each Full Bitcoin Node to fully and automatically audit the entire supply of the Bitcoin Network to ensure there’s no fraud happening. Every time another block comes in, the node fully audits the entire network again ensuring its integrity every ten minutes.
While this might not sound very special, being able to audit the entire supply of an asset in seconds and for essentially free was never possible before Bitcoin. Imagine trying to fully audit all the gold or real estate or art in the world, it would take years, be full of mistakes and cost millions of dollars only to be out of date by the time you finished.
With every block, all Full Bitcoin Nodes audit and confirm the networks integrity, ensuring honesty and fairness throughout. No one, no matter how rich or powerful can cheat, create fake bitcoins or Double Spend existing ones. It is truly an amazing feat of beautiful engineering.
Transactions Vs UTXOs
Each transaction has an input and an output. Existing UTXOs are used as the inputs to a new transaction and the outputs are new UTXOs that are created. A transaction can have multiple inputs that combine into one output (2 in 1 out) or it can have one input that gets split out into multiple outputs (1 in 2 out). Transactions can also have multiple inputs and multiple outputs (2 in 2 out).
Learn More: Why Does Your Bitcoin Address Change?
The Coinbase UTXO
While not well known, the popular Crypto Exchange Coinbase was actually named after the Coinbase transaction. This is a special transaction in each new block that details where the newly minted bitcoins are to be sent.
When Bitcoin Miners successfully mine a new block, they’re rewarded with the block subsidy. These newly minted bitcoins are the first transaction in each block and have no “input” to them as shown in this example Coinbase transaction from block 796,992.
Every UTXO, if traced back through enough transactions, can be tracked back to its original Coinbase transaction. Currently the block subsidy is 6.25 BTC, however after the next Bitcoin Halving it will be reduced to 3.125 BTC. The reason this Coinbase transaction has a UTXO of 6.63215949 BTC is because 6.25 BTC is for the block subsidy and the rest (0.38215949 BTC) is from all the fees in each transaction inside the block.
UTXO Vs Account Model
In the UTXO model as explained so far, a user sees all of the individual UTXOs in the network and has full control over the ones that they own. All these UTXOs combined equals their total balance.
In contrast, traditional banks as well as some cryptocurrencies like Ethereum, instead keep track of all their coins using the Account model. In the accounts model, users instead see and have control over all of their accounts. While this will likely be a lot more familiar to most people, the UTXO model allows for greater transparency and auditability.
For example, no one can do a full audit of all the bank accounts in the US where as auditing the Bitcoin network is done every 10 minutes by every Full Bitcoin Node. The UTXO model also allows for much more privacy as it’s free and easy to generate virtually unlimited Bitcoin Addresses.
Each of these addresses can store any number of bitcoins and by default, there’s no connection between each address as viewed by an outside party. Compared to the legacy financial system, users are usually forced to keep all their funds in a single account that’s tied to their identity.
Coin Control & UTXO Management
Good Bitcoin Wallets will not only show you your balance, but also all your individual UTXOs. This allows for what’s called Coin Control or UTXO management which is where you’re able to select the specific UTXOs you want to include (or exclude) from a transaction. With wallets like Sparrow Wallet, you can see what UTXOs you own as well as label and organise them so you can better manage your privacy and security.
When you go to create a new transaction you can chose to consolidate multiple UTXOs or split up a single UTXO into many. Regardless of which one you do, the transaction can be made to another person or simply another wallet that you also own which can throw off Chain Analysis.
Proper UTXO management can also help ensure you pay the lowest Transaction Fee while at the same time keeping any KYC Crypto you own separate from your non-KYC coins. We don’t recommend using any wallet that doesn’t support both coin labeling and coin control.
Is Bitcoin A UTXO?
Bitcoin is one of many cryptocurrencies that uses the UTXO Model. An Unspent Transaction Output (UTXO) is a discrete, single output or spend that comes from a Bitcoin transaction.
Which Blockchains Are UTXO?
Bitcoin is the biggest blockchain that uses the UTXO model, however there are many others such as Litecoin and other Bitcoin Forks such as Bitcoin Cash and Bitcoin SV.
Why Bitcoin Uses UTXO?
Bitcoin uses the UTXO model because it allows for increased privacy for the individual as well as full transparency and audibility of the entire Bitcoin supply. These features simply wouldn’t be possible using the Account model.
Who Invented UTXO?
While earlier works from Hal Finney’s Reusable Proof Of Work (RPOW) paper has a lot of similarities, the fully fleshed out UTXO model was first documented by Satoshi Nakamoto when they released the Bitcoin Whitepaper in 2009.