Consider a doomsday scenario. You've spent the last two years seriously studying dollar cost averaging and pulling it into your wallet. You have tons of small UTXO1Bitcoin and Bitcoin transaction fees rise so high that your Bitcoin turns to dust2. You are now unable to spend your Bitcoin. For some Bitcoin users, this is not a doomsday scenario, but rather a reality they have lived through for the past six months.
During 2023, we have seen very large fluctuations in Bitcoin transaction fees such as ordinals3 It brought a flood of new Bitcoin users and with that a huge increase in demand for block space. Despite the positive press generated by the approval of the Bitcoin Spot ETF, users have faced serious challenges from high transaction fees, especially for users with small UTXO. In some cases, the UTXO was non-consumable, also known as turning into dust. This pain in transaction fees has led many people to ask the question, how do I know if my UTXO devices are at risk? In this article, we will explore the point at which dust is created and try to help create a minimum plan to mitigate this risk.
Average Bitcoin transaction fees in sat/vB over the past 6 months
Over the past six months, we have seen significant fluctuations in average Bitcoin transaction fees. We've seen memory sets clear with 0 sat/vB and rise above 350 sat/vB. While this may not mean much to you on the face of it, it could mean significant challenges for users who send multiple small-value SegWit UTXOs in single transactions. In fact, some users saw their UTXO turn to dust. This obviously caused panic, and for some this caused an expensive lesson in UTXO management. This is not an article explaining a UTXO management strategy, this article is trying to tell you that you definitely want a big UTXO. If Bitcoin does what we think it will, multiple UTXO transactions as large as 0.001 BTC may be unspendable under high fee environments, and you can kiss the dust.
Before we jump into the data, we need to decide what we want to look at. For us, we are trying to understand whether UTXO is spendable or whether it is dust (unspendable). For this we will need the following:
- The total UTXO is sent
- Gross weight units4
- sats/vB transaction fee
Using this information, we can create a formula that shows how much value is transferred in a Bitcoin transaction after removing the transaction fees.
Converted value = BTC sent – ( ( (total weight units / 4) * transaction fee in sats/vB) * 0.00000001 )
If the transferred value is a negative number, it means you have dust, and sending the UTXO amount costs more than it is worth. Since calculating Bitcoin transaction weight units is a bit complicated, we will use a real-life scenario to build our table, assumptions, and recommendations.
In this example, we use 5 basic SegWit financial transactions (P2WPKH) with the following weight units:
- Single Input, Single Output, Single Signature, Single Public Key, SegWit Transactions (P2WPKH script) The total weight units will be approximately 440 weight units.
- 5 inputs, individual outputs, individual signature, individual SegWit transactions (P2WPKH script) The total weight units will be approximately 1,528 weight units.
Using our formula above and a SegWit transaction with (5) inputs weighing 1528 weight units, we have constructed the following dust table.
Dust table
Dust table calculated in 1,528 weight units per5 Example of SegWit input above.
The dust table reveals some important information. The dust is real, and the threshold is lower than I thought. As transaction fees continue to rise, UTXOs with a larger value become more vulnerable. During peak transaction fee times over the past month, our example transaction would have been dusty even for .001 BTC. That's just under $50 in current market conditions. This is an incredible feeling. 100,000 seats suddenly turned to dust. gold. Unusable. This is Terrifying.
Although this scenario does not affect all users, the lesson is very clear, make a big UTXO! For long-term storage, you should not keep UTXO smaller than 0.01 BTC. We've seen over 300 sat/vB charges in the past year and this will increasingly become the norm. In this fee market, multiple UTXO transactions smaller than .001 are considered dust. Don't be that guy.
Dust may be an afterthought for you today, as we're blessed with returns to sub-50 sat/vB fees, but dust could become a costly problem for you in the future if it's not managed today. By understanding the relationship between UTXO weight units and transaction fees, we gain valuable insights into UTXO minimum sizes.
Maximum dust
Modeling the dust threshold for UTXOs is an interesting experiment because it shows you how crazy things have to get and at what point BTC becomes dust. For the table below, we are using the same data as above, which is a 5-input SegWit transaction with 1,528 weight units.
This table shows the fee rate at which the amount of BTC sent in a 1,528 unit weight transaction turns to dust.
Signing the UTXO
Another key finding in all this research is the cost of signing a single standard (P2PKH) UTXO. This is extreme on the small side because it is one of the smallest transactions you can make. In this example, we want to use standard script (non-Segwit) because it is the heaviest type of script. Here are the details:
- Standard script type (P2PKH).
- 1 entry
- 1 popkey
- 0 outputs
- 632 weight units
Signature economics
The economics of signing a standard UTXO with 1 signature, 1 public key, and 0 outputs weighs 632 weight units.
With this information, you can understand the minimum cost of making Bitcoin transactions.
Main sockets
- The dust threshold is lower than you think, especially in high transaction fee markets
- When withdrawing Bitcoin from exchanges, consider waiting until your balance reaches ≥ 0.01 before sending it to your vault.
- If you have many small UTXOs (<0.001 BTC), you should consolidate them into a larger UTXO while the fees are low.
You don't have a crystal ball, and there are only so many things within your control. BTC prices, block space demand, hashrate, hashrate, and Bitcoin in general are out of your control. You have control of your keys, and the best thing you can do is prepare for the inevitable high-fee market. It will happen or Bitcoin will fail, I don't make the rules. Don't let your precious Bitcoin turn to dust. Remember this, if you do nothing, you will return to dust.
In the sweat of your face you will eat bread until you return to the land from which you were taken. For you are dust, and to dust you shall return.
-Genesis 3:19
Footnotes
- UTXO (Unspent Transaction Output): [n.]
A component of a Bitcoin transaction that represents an amount of digital currency that has not yet been spent and is available for future transactions.
The output of a blockchain transaction that can be used as input into a new transaction, showing how much cryptocurrency is left after the transaction is executed. ↩︎ - In the Bitcoin protocol, dust refers to small amounts of currency that are less than the fees required to spend in a transaction. Although it is “economically irrational”, dust is commonly used to achieve unconventional side effects, rather than to exchange value. ↩︎
- Ordinal sprites as a phenomenon are just over a year old and have been making big waves in Bitcoin. They melt some people's brains but will eventually be priced out. ↩︎
- Weight units (n.) [Bitcoin]
A unit of measurement used in the Bitcoin network, specifically introduced with the Segregated Witness (SegWit) protocol, to count the size of transactions and blocks.
A composite measure that takes into account both non-witness data (such as transaction inputs and outputs) and witness data (such as signatures) specific to the transaction. In this system, non-witness statements are weighted more heavily than witness statements.
The standard by which the block size limit is enforced in the SegWit protocol, with a maximum of 4,000,000 weight units per block, allowing for efficient and flexible allocation of block space. ↩︎ - Use Lopp's open source transaction calculator. Link ↩︎