High Fees and UTXO Sets
High fees have been a complaint for a while now in Bitcoin. A question that’s been asked but hasn’t really been answered is one of useless coins. That is, how many Bitcoins can’t be moved without paying fees that are more than the actual output’s worth?
In this article, I’m going to examine some blockchain data and report on roughly how many of the coins on the Bitcoin blockchain are not worth spending.
To do this, we need to first figure out how much it would cost to move certain coins. In Bitcoin, all transactions except coinbase transactions are outputs of previous transactions. The outputs that are able to be spent are called UTXOs (Unspent Transaction Outputs). What we need to do is figure out how much each UTXO will cost to spend and see if the value of the UTXO is below the cost. Such a UTXO would be economically irrational to spend.
We could simply figure out the cost of a transaction with just the UTXO as an input and a single address to an output, but that would be somewhat inefficient as you would incur the satoshi/byte cost of the entire transaction. We want to minimize the cost of moving coins we’ll want to combine it with another output.
This is like buying multiple things at a grocery store instead of making a back-and-forth trip to the grocery store for each item. The cost to get in your car, drive, park and get a shopping cart are what would be called fixed costs and the cost to get the actual grocery store item is what would be called the marginal cost. We want to figure out the marginal cost for spending the UTXO.
I asked this question on Stack Exchange a while back and finally got an answer. It turns out that there are around 42 million p2pkh outputs (aka outputs sent to the normal Bitcoin address that starts with a 1) on the Bitcoin blockchain. Of those, about 13 million have a marginal cost that’s greater than their worth at 50 satoshi/byte. This is less than $0.75 as of this writing.
These UTXOs represent 31.4% of all p2pkh UTXOs and total to about 452 BTC. That means that almost a third of all p2pkh UTXOs actually represent less than 0.0036% of the BTC value!
If we go out a little further to the marginal cost at 50–100 satoshi/byte (about $1.50), we have about 7 million more UTXOs that total to 868 BTC. This is an additional 16.6% of all p2pkh UTXOs which represent 0.0069% of the BTC value.
At 100–200 satoshi/byte (about $3), we have about 5 million more UTXOs that total to 1316 BTC, which is 12.7% of all p2pkh UTXOs and 0.01% of the BTC value.
At 200–500 satoshi/byte (about $7.50), we have another 3 million UTXOs that total to 1835 BTC, which is 7.7% of all p2pkh UTXOs and 0.015% of the BTC value.
In total, outputs that are less than $7.50 take up a staggering 68.4% of the total p2pkh UTXO set but represent a measly 0.0358% of the total value. That means 32.6% of the UTXO set represent 99.96% of the total BTC value.
What this means
If Bitcoin UTXOs were like items in a vault, we would see about two thirds of the vault filled with trinkets and the rest filled with much higher value items.
Continuing with the analogy, a transaction fee would be like the vault owner charging you to withdraw trinkets which belong to you. If the fees are high, it’s not worth taking out those trinkets. What’s staggering is that already, a large amount of the vault is taken up by trinkets which are economically irrational to move.
This is the situation that Bitcoin finds itself in. So much of the UTXO set is taken up by outputs which won’t be spendable in a few years. This is not a trivial matter. Having a smaller UTXO set means there’s less memory and disk required to run a Bitcoin node.
What Will Help
Some of these outputs will hopefully be spent to larger outputs when fees are lower. Segwit will help with new UTXOs created as spending p2wpkh outputs will have a lower transaction weight than their p2pkh counterparts.
It may get to the point where the private keys of these UTXOs are sent around instead of utilizing the blockchain! For example, the 1000 bit poker chip from BTCC is currently worth about $2.50. Physically exchanging that poker chip instead of opening the chip and redeeming it on the blockchain would save a significant portion of its value. Will we see UTXOs being made into physical coins going forward? Better yet, will people encapsulate the private keys in some way and figure out a way to trade them digitally? It’s an interesting question and probably an opportunity for a savvy entrepreneur going forward.
The UTXO set currently has too many transactions that really aren’t worth spending. What’s more, this will get worse as fees rise.
This can be looked at in two ways. First, as sympathy for the owners of the UTXOs, since they can’t move the coins. Second, as sympathy for the node operators who have a larger burden in memory costs to run a node despite these coins being unlikely to move. Whatever your opinion, it’s clear this isn’t a very big portion of Bitcoins in existence, so it may not be worth worrying about.
Want to get curated Technical Bitcoin News? Sign up for the Bitcoin Tech Talk newsletter!