UTXO is one of the most common terms used in the crypto world, but what exactly does it mean? Why is it important to the blockchain network?

What is UTXO

Blockchain technology may have been around for more than a decade now, but there are still many people who don't understand the fundamental aspects of how the system actually works. This is quite understandable because the whole thing seems too complicated and probably not interesting enough unless you're a tech geek or a crypto developer. However, since cryptocurrency has become super popular recently, more and more people are getting curious about the basic concepts of a blockchain.

When it comes to cryptocurrency, you might find yourself coming across new terminologies that you have no idea about. Most of the time, the terms use technical words that are not common in day-to-day conversations. One such word is "UTXO", which is commonly used in the world of Bitcoin.

 

What Is the UTXO Model?

The term UTXO stands for "Unspent Transaction Output". It is basically a type of cryptocurrency recording method that is used to represent the number of tokens that a person receives after they make a transaction on the blockchain. As the name suggests, UTXO is the "unspent" output of the transaction. To put it simply, if you spend 5 BTC to buy an item for 3 BTC, then you will receive a new UTXO with a value of 2 BTC. We'll discuss this more in a bit.

The concept of UTXO was first created and used by Satoshi Nakamoto on the Bitcoin blockchain. Later, the system was adopted by all forks of Bitcoin, including Bitcoin Cash (BCH), Litecoin (LTC), Zcash (ZEC), as well as several others that are not Bitcoin forks like Monero and Cardano. The purpose of UTXO is partly to check whether or not a certain wallet holds sufficient balance to make a requested transaction.

For instance, if owner A wants to send 5 BTC to owner B, the network needs to know if owner A has at least 5 BTC in his wallet. If the balance is insufficient, it would be impossible to make the transaction.

Other than that, UTXO is also used to make sure that no funds are spent twice, hence eliminating the double-spending issue. Every UTXO can only be spent once, so if you spend the specific UTXO, you won't be able to use it again in the future. For each UTXO spent, one or more new UTXOs are created as a result of the transaction. The new UTXO will be sent to the appropriate wallet.

Put simply, you can think of UTXO as an indivisible and unique chunk of native tokens that are controlled by the owner's private keys.

 

How Does It Work?

To begin with, we should point out that blockchain is essentially a public ledger that stores all transactions that have ever happened within the network. As the name implied, blockchain is a chain of blocks. Every new block added to the network consists of a list of transactions that are already verified and broadcasted to the whole community. Now each transaction in a block is divided into several smaller parts as shown in the image below.

The structure of a transaction

Since we're talking about UTXO, we're going to focus on the Input and Output parts of the structure. As mentioned before, UTXOs are indivisible native tokens that you use in transactions. When you make a transaction, the blockchain will use the UTXO generated by the previous transaction or the one from your wallet as Input, then create a new UTXO as the transaction Output. Here's a simple illustration of how it works.

How UTXO works

Simply put, each transaction uses some past UTXOs and produces new UTXOs. And since each UTXO can only be used once, the blockchain is able to track every transaction and make sure that the total circulating supply of coins remains constant. With that being said, it's even possible to trace a coin transaction history all the way back to its first-ever transaction. In addition, a collection of all UTXOs is called the UTXO set and it constantly updates every time a new block is added to the network.

 

UTXO Model in Crypto Transactions

In the real world, UTXO has a similar concept to the use of fiat bills with several differences. For example, let's say you want to buy a cup of coffee for $4.00. When you take a look at your wallet, you have two 10 dollar bills and a 5 dollar bill. You decide to spend the 5 dollar bill and receive a 1 dollar bill in return. Such a scenario can also happen in crypto transactions.

For example, you have 500 BTC in your crypto wallet. This number is actually a sum of several UTXOs and each UTXO might have different values. Similar to when you have $45 in your wallet, then you might have different combination of bills such as four $10 bills and a $5 bill, or nine $5 bills.

Therefore, one of your UTXOs might be worth 140 BTC, the second might be worth 100 BTC and the third might be worth 260 BTC. Now, if you want to send 100 BTC to your friend, you need to ship one full UTXO to complete the transaction. In this case, you need to send your 140 BTC UTXO and receive a new UTXO that's worth 40 BTC.

The reason why you can't directly send 100 BTC from your wallet is that you don't have any UTXO that's worth exactly 100 BTC. The same logic applies to any transaction in the real world. If you want to buy $10 merchandise, you can't just simply tear a $20 bill in half. Therefore, you need to send the entire bill and receive a change in return.

The main difference between UTXO and fiat bill transactions is that they happen on totally different platforms. But apart from that, it's worth noting that blockchain transactions have additional transaction fees. The amount may vary depending on the blockchain. Also, the value of fiat bills is always fixed and determined by the government that prints them. Meanwhile, each UTXO may be worth any value and may be different from one another.

 

The Benefits of UTXOs

  • Higher Flexibility
    Since the value of each UTXO may be different, there are more choices and greater flexibility compared to fiat bills. You could have 1000 BTC or 1 BTC in a UTXO, so you can use it depending on your needs. This also gives the builders the chance to manage the information of the blockchain in manageable proportions. UTXO makes tracking transactions easier and hence, makes the transaction processing time faster.

  • Useful for Decentralized Exchanges and Atomic Swaps
    UTXOs allow users to make transactions in a safe way, without using the help of any centralized firms, escrow providers, or any other third parties. Users can simply exchange, send, and receive cryptocurrencies directly between wallets in a relatively short time.

  • Privacy and Security
    Each UTXO transaction has a unique address, so there's a small chance that your transaction will be tracked. We have also explained before that UTXO can be used to prevent malicious activities such as double-spending coins.

  • Increasing Scalability
    UTXO allows you to process several transactions at the same time, thus giving you more opportunities and scalability. Not only that, but such a system can also reduce the computation load on a blockchain network.

 

The Difference between UTXO and Account Models

Apart from UTXO, there are other forms of blockchain protocols. The account model, for instance, is another popular one and it's used by the Ethereum blockchain. What is the comparison between the two?

To begin with, the UTXO model has a more similar concept to physical cash and records all transactions as a set of outputs or unspent transactions. Meanwhile, the account model requires users to have one or multiple accounts and there's no concept of change back. Credit is simply added to the balance and debit is removed away from it.

In a nutshell, the two models might aim for a similar goal, which is to pay money to people. However, each option has its own benefits and limitations that should be taken into consideration. The UTXO model is better for privacy and scalability. This is great for blockchains like Bitcoin because they aim to develop electronic money. On the other hand, the account model offers more usability and is very intuitive for users. Therefore, this model is suitable for Ethereum that focuses more on building smart contracts.

Recently, new projects are trying to innovate from the two models. Projects like Cardano (ADA), Tron (TRX), and Qtum (QTUM) have tried to make a hybrid model that basically takes the benefits from the UTXO model without giving up the power of smart contracts.

 

Final Remarks

The UTXO model is one of the most popular blockchain protocols that's used mainly in the Bitcoin network along with all of its forks and some other blockchains. It is basically a method to keep records of all transactions that happen on the blockchain. The concept is more or less similar to fiat transactions in the physical world, so it's quite easy to understand even for beginners.

Now that you've learned how the UTXO model works, you're likely to have a better understanding of the blockchain system and be able to manage your balance more effectively. Blockchain technology now is being used in numerous areas such as finance, business, payment methods, even the music industry. Top music companies are now starting to adopt the technology to help users discover and listen to music easier.