Consolidating UTXOs

The Casa app allows you to consolidate your UTXOs easily, right within the app.

 

A UTXO refers to an "unspent transaction output." Another way of saying this is that a UTXO is an amount contained in a single public/private address keypair. 

Your Casa vault, like many wallets, generates a new address with each transaction you make. If you make, for example, ten deposits to the Casa app, you would have ten UTXOs in your keyset. 

What is UTXO consolidation?

Consolidating your UTXOs simply means sending your funds from some or all of your previous transactions in a single larger transaction to another one of your own address. In other words, you are consolidating your balance from multiple transactions to a single address.

You can also accumulate UTXOs by your sending activity; each time you send a transaction from the Casa app, any amount left over in the address you're sending from is returned to your wallet in a new address as "change." These additional change addresses can contribute to your UTXO bloat. 

Why would I consolidate UTXOs? 

One reason to consolidate UTXOs periodically is a better sending experience. When sending hundreds of UTXOs at once, hardware devices may struggle with signing the transaction due to its size. This means it may take longer than normal to compile transactions, or your device may even fail to sign the transaction completely.

Another reason is to save on mining fees. The more UTXOs you have, especially in smaller amounts, the higher the mining fee to send transactions from all those UTXOs will be. This is because there is more data in the transaction that the network must process to record the transaction on the blockchain. If you consolidate your UTXOs when the mining fee is low, this can save on costs.

As usage grows, it can be anticipated that the mining fee paid for on-chain transactions will increase over time. However, there will be ups and downs. Sometimes, fees will be extremely high, and other times they will be very low. This can vary from month to month, day to day, even hour to hour.

In times that the fees are low, it can make sense to consolidate your UTXOs to avoid paying far more in the future to send that same amount. It's highly recommended to consolidate UTXOs in times when fees are low. 

One place to monitor current fees is https://bitcoin.clarkmoody.com/dashboard/

When should I consolidate UTXOs?

You should consider the following when thinking about consolidating: 

  • The number of UTXOs you have
  • The size of the UTXOs
  • The current average mining fee

In general, you should think about consolidating your UTXOs if you have more than 15 addresses containing small balances (or 15 separate transactions to a single address). If each of those addresses contains a large balance (e.g., over 1 BTC each), then the concern is not as high, since you're less likely to send an amount over this in the future.

If you've ever replaced a key in the Casa app using a key rotation, you have likely swept your full balance to a single address when doing so.

How do I consolidate UTXOs in the Casa app?

From the normal send flow, you'll notice a "Send From" option at the top of your screen.

Select_UTXOs (1)

Once you select the "Send From" dropdown menu, you'll see your UTXOs, which is another way of saying "the transactions you have received and the amount received in each one."

For lowest possible future fees, we recommend selecting "Auto-select," then using "Send Max" to send your full balance (note: the "Send max" button does not appear if "Hide balance" is toggled ON in your settings). Once you have entered the amount, select the shortcut for the same wallet you are sending from in the "Choose Recipient" screen.

If you want, the Casa app does allow you to send from specific addresses, making it possible to consolidate only your smaller balances, leaving the addresses that contain larger amounts alone. This is an alternative to using the "Auto-select" feature. Keep in mind that if you re-use an address, it will contain many UTXOs. In this case, selecting one address, selects all of the UTXOs that were sent to that address.

A couple of important points to note when consolidating your UTXOs: 

  • The Casa app will not show two separate transactions, one inbound and one outbound. It will show only one transaction with an amount of either zero or the amount of the fee paid. This is because the app is adding up all the inputs from your wallet addresses and subtracting out the outputs to your wallet address, since they all belong to the same wallet. These should be equal, or only different by the amount of the fee.
  • The fee for the consolidation transaction will be far higher than a normal fee for a smaller amount. This is because you are collecting multiple former outputs as the inputs in one transaction, which takes up more space in a block. Mining fees are per byte, so the more inputs you have, the higher the fee. The amount of data that is recorded on the blockchain for this one transaction is higher than normal, hence the higher fee. 
  • Signing may take longer than normal. Depending on the number of UTXOs, it may take up to an hour to compile all the data to apply the signature after you've begun the signing process. Just note that you may need to have some patience with your hardware device(s) in the signing process.
  • If your hardware device does time out or fail when it's attempting to compile your transaction, try selecting only 10-15 of your UTXOs, then select 10-15 more. You can always consolidate further once those transactions are fully confirmed.