Glossary / Privacy & security
Coin control
- Definition
- Coin control is the wallet feature that lets you choose exactly which of your existing coins get spent in a transaction, instead of letting the wallet pick for you.
A balance is not one number but a pile of separate chunks, each one left over from an earlier payment into your wallet, and every spend eats whole chunks. Adding one more chunk to a transaction costs roughly 68 virtual bytes in fees and tells anyone reading the chain that both chunks share an owner. Coin control is where you take that decision back.
How it works
Every wallet already selects coins on your behalf. When you type an amount and hit send, an algorithm searches your unspent outputs for a combination that covers it. Bitcoin Core has used Murch's branch and bound solver since version 0.17.0 in 2018, which hunts for a set of inputs matching the target closely enough to skip a change output entirely. It optimizes for fees, and it knows nothing about which coins you would rather not touch.
Turning coin control on replaces that guess with a list. In Bitcoin Core you tick "Enable coin control features" in Settings, and the send screen grows an input selector; the feature has shipped in the graphical wallet since version 0.9.0 in 2014. Sparrow, Electrum, Wasabi, and BlueWallet all expose the same thing as a UTXO tab where each coin shows its amount, its confirmation count, and whatever label you gave it.
Three controls come with it. You can select inputs by hand, so the transaction spends only the coins you ticked. You can freeze a coin, which makes automatic selection permanently blind to it. And you can label coins as they arrive, which is the part people skip and later regret, because an unlabelled output six months old is just a number with no story attached.
Choosing inputs also decides the change. Spend a 250,000 satoshi coin to pay 200,000, and you create a new coin worth the remainder minus fees, which inherits the history of everything you just spent.
Why this matters when you buy bitcoin
Withdrawing from an exchange writes your identity next to an address in someone's compliance database. Every large venue on this site verifies identity first, so the coins that land in your wallet arrive pre-labelled as yours in the eyes of anyone running analytics. Coin control is how you stop that label from spreading. If you later acquire bitcoin somewhere else, a peer-to-peer trade or a payment for work, keeping those coins out of the same transactions as your exchange withdrawals is the difference between two separate stories and one.
The second reason is cost basis. Dollar-cost averaging produces a lot of small coins: River charges nothing on recurring buys, and a weekly withdrawal habit leaves you with 52 separate outputs a year, each bought at a different price. Tax rules in most countries let you identify which units you disposed of, and coin control plus a dated label on every incoming coin is what makes that identification provable rather than theoretical. Selling the 2,000 dollar coin instead of the 200 dollar coin is a real difference in a tax bill.
Third, it protects what you disclose to a counterparty. The person you pay can see every input you used, and therefore the total value of the coins you spent from. Paying a 40 dollar invoice out of a 2 BTC savings output tells the recipient how much you hold. Paying it from a small dedicated coin tells them nothing.
Picking inputs for a 200,000 satoshi payment
Say your wallet holds three coins: 40,000 satoshis from a Swan buy, 250,000 satoshis withdrawn from Kraken, and 5,000,000 satoshis of long-term savings from a hardware wallet you set up years ago. You owe someone 200,000 satoshis and the mempool is quiet at 8 sat/vB.
Left alone, the wallet might pick the 40,000 and the 250,000 coin together, because that combination minimizes waste. The result is 2 inputs and 2 outputs, about 209 virtual bytes, a fee of roughly 1,672 satoshis, and a permanent public statement that the Swan coin and the Kraken coin belong to the same person.
With coin control you tick the 250,000 satoshi coin alone. That is 1 input and 2 outputs, about 141 virtual bytes, a fee of roughly 1,128 satoshis, and change of 48,872 satoshis. You paid 544 satoshis less and disclosed one source instead of two. The 5,000,000 satoshi savings coin stays frozen and invisible to the algorithm, exactly as it should.
Coin control vs UTXO consolidation
Coin control is the steering wheel; consolidation is one particular destination. Consolidating means deliberately spending many coins into one to cut future fees, which is a merge you have chosen. Coin control is the general ability to choose, and most of the time you use it to do the opposite, keeping coins apart that the algorithm would have combined.
Coin control vs CoinJoin
Coin control is bookkeeping discipline and costs nothing beyond attention. It prevents new links from being created, but it cannot erase a link that already exists on the chain. A coinjoin is an active, coordinated transaction with strangers that adds ambiguity to coins whose history is already public. The two are complementary, and coin control is the one that matters first, because careless input selection undoes a coinjoin in a single spend.