As you become a more advanced user of Bitcoin, you might notice that some wallets allow you to pick and choose which coins you spend. Taking charge of your wallet like a pro via Coin Control allows for a number of benefits over just letting the wallet software do it automatically. It can save you from wasting sats on fees as well as help protect your privacy and security. So let’s dig in!
What Is Coin Control?
Coin Control is a feature that many Bitcoin Wallets have to help their users control which UTXOs (or coins) they want to use when they create a new transaction. For example, they may choose a 0.1 BTC coin and a 0.4 BTC coin when creating a transaction to send 0.5 BTC.
A good analogy are the notes and coins someone might have in their wallet. Each note and coin is totally separate and can be organised into different parts of the wallet. If you want to know the balance you simply add them all up. When you want to spend some money, you have control over which coins you chose to use. This is coin control.
In Bitcoin UTXO stands for Unspent Transaction Output. Each UTXO is a discrete, single output or spend that comes from a Bitcoin transaction similar to a $1 coin you might receive after buying something (a transaction).
Understanding Coin Control
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.
Beyond the ability to see all your UTXOs and control which ones will (or won’t) be used in a new transaction, coin control can also include other sub features that make this task easier such as labeling of coins, searching of coins and even tagging of coins.
Automatic Coin Selection
Most wallets automatically pick which UTXOs are used each time a new transaction is created. Some use simple ways of doing this, others use more sophisticated methods. Some of the common approaches include:
- First In First Out (FIFO) / Last In, First Out (LIFO): Spends the oldest/youngest coins first
- Pruned FIFO: FIFO, but the smallest coins are filtered out in the post-selection step.
- High Priority First: Coins selected by priority, calculated by their value x their age
- Minimize Fees (Optimise Size): Spending the lowest number of coins to reduce fees
- Minimize Future Fees (Merge Coins): Spending the maximum number of inputs to merge coins as a single change output
- Target Sized Change: Minimise the value difference of the target input and change output
- Branch & Bound (BnB): Finds an input set equal in value to the target, avoiding change
- Blackjack: Accumulates inputs until the target value plus fees are matched
- Accumulative: Accumulates inputs until the target value plus fees are reached
UTXO Management
UTXO management is very similar to coin control as it also deals with labeling, sorting and controlling of coins. While the two terms are often used interchangeably, UTXO management is generally used to describe long term management of how a person or company handles their coins. In contrast, coin control mainly relates to the ability to view and control which coins you select in a transaction.
For example, if a company constantly receives thousands of orders that are paid in bitcoins, each order will be sent to its own unique UTXO. Labeling, sorting and planning are needed to manage all these UTXOs in the most efficient way, especially over many years.
Transaction Fees
Bitcoin Transaction Fees are based on the size (in bytes) of the transaction, not how much value is being transferred like legacy systems. As a result, the more UTXOs or coins you have in a transaction the more kilobytes of block space it will take up and the more in fees it will cost you.
Learn More: How Bitcoin Transaction Fees Work
From a cost perspective, the fewer UTXOs you have in your wallet, the better. A transaction with a single UXTO of 1 BTC will be cheaper than another transaction that has ten UTXOs of 0.1 BTC as it has ten inputs vs only one.
Coin control can help reduce fees as you can fully control which UTXOs are put in the transaction. In times of high fees, you can select the UTXO with 1 BTC in it, reducing your fees as much as possible. Later on, once the Mempool quietens down a bit, you can then select the ten UTXOs of 0.1 BTC and consolidate them at a much cheaper rate.