Sending Bitcoin from specific address in core & electrum wallet – Coin control
One of our readers recently asked us “is there a way to send funds from a specific bitcoin address in a wallet?” Yes, by making use of the coin control you can send from specific address or specific UTXOs.
Most Bitcoin wallet has coin control feature and many know how to make use of this feature. Coin control feature is usually utilized for privacy reasons and it mainly involves two things.
- Using this function users can spend specific UTXOs (Unspent Transaction Outputs). and
- Users have the control over the change address.
In simple terms using coin control you can control which address / UTXO in your wallet you want to associate in a transaction.
In most cases you won’t need this feature as wallet today are smart enough to manage the unspent outputs for you. For example here is a simplified visual on how Bitcoin wallet picks UTXOs that is only necessary for the transaction.
UTXO management by wallet
When you are sending Bitcoin the wallet won’t draw all the UTXOs. It only utilizes the required amount you are willing to spend.
Let us assume your wallet has 4 inputs each having a separate TXID. The total balance of your wallet is the sum of all the (unspent transaction outputs) UTXOs. Now when you are spending coins from this wallet the entire balance is not moved. Only the subset of UTXOs that is required for the amount will be chosen.
For example let us consider the following scenario.
UTXO1: 0.2 BTC
UTXO2: 0.5 BTC
UTXO3: 1.1 BTC
UTXO4: 0.1 BTC
Wallet balance: 1.9 BTC
Now when you are sending 0.2 BTC the wallet automatically chooses the UTXO1 that contains 0.2 BTC. It chooses this because there is no change address involved in this transaction which results in lower transaction fees.
Now if you are sending 0.05 BTC then the wallet automatically chooses the UTXO4 that contains 0.1 BTC. Out of the 4 UTXOs the one that contains 0.1 BTC is closest number to 0.05 BTC. Also it is the oldest unspent output. So it chooses this UTXO and sends 0.05 BTC to the recipient address and the remaining back to your change address.
If you are sending 1.5 BTC the it only uses UTXO 2 and 3. It sends 1.5 to the recipient address and .1 to your change address.
Learn what is change output and change address
Also know why the Bitcoin addresses in your wallet keep changing
While the wallet handles the UTXOs smartly there are certain occasions where you’ll be needing the coin control feature. Before we see how to send Bitcoin from specific address or specific UTXOs let us see why and when to use the coin control.
Why use the coin control feature?
With coin control you basically have granular control over the transaction outputs and inputs. Have you noticed that when requesting Bitcoin your wallet never uses the same address which you used previously? Also your wallet never uses the same change address twice.
Even though you can use the same receiving address for every incoming transaction it is not recommended. For the following 2 reasons you need to always use a fresh address whenever receiving payment.
- To increase your privacy: By using different address you are making it difficult for someone to associate your address, relate your transactions and know your balance.
- To discern between different sources of funding. By using a fresh address for every payment you can easily identify from whom and from where the payment came from.
For the same 2 reasons you also need to know how to spend specific UTXOs from your wallet. This can be done using coin control.
Just like how you have full control over the address when receiving payments you also have control over the address when spending.
Instead of letting the wallet pick the UTXOs you can manually select specific address or UTXOs to send coins from.
So how to spend from specific UTXO or send from specific address in a wallet? Or how to use the coin control feature?
How to spend specific UTXO / send from specific address?
Most Bitcoin wallet has this feature that allows you to send from specific address. But here in this guide we are only going to cover core and electrum wallet. Two most popular Bitcoin wallets.
Coin control is one of the important feature in your Bitcoin wallet that helps you preserve your anonymity. But this feature is hidden by default. You’ll need to enable it to use it.
Here is how to enable and use coin control in both core and electrum wallet.
Coin control in core wallet
- Open core wallet and go to settings >> options.
- Navigate to wallet tab and enable coin control features.
Once enabled you’ll see the feature added in your wallet send tab.
Choose inputs and you’ll find the complete list of your wallet address that contains coin. You might also notice same address being listed multiple times. This is because an address can have multiple UTXOs and you can manually choose the particular UTXO to spend from.
Once chosen click OK and it will take you back to the send page. Now enter the recipient address and fill the amount to send.
Optionally you can also enter custom change address. But this is highly not recommended especially if you are a beginner. It is better to let the wallet choose the change address for you.
That’s it! Verify all the information and click send. The coins will be sent only from the address or UTXO which you manually selected.
Now let’s see how to spend specific UTXOs in electrum.
Coin control in electrum wallet
Even in electrum wallet this function is disabled by default.
To use the coin control feature in electrum drop down view and click show coins option. A new tab named coins will show up.
Now go to coins tab and you’ll find the list of addresses. Just like core wallet electrum also lists UTXOs separately even if they belong to the same address.
Now choose the UTXO that you wish to spend, right click and then click spend. To choose multiple UTXOs hold control and select specific outputs. This tells the wallet which inputs you want to use in a transaction.
Like wise if you want to use all the UTXOs except few then only select the ones you want to exclude from the transaction, right click and freeze coins. This will exclude and not spend the particular output.
Once done go to send tab, enter the recipient address, enter the amount and click send. The fees will be paid from the outputs that you’ve selected. The unselected coins will remain untouched.
In the preview window verify all the inputs and outputs of the transaction. The ones that are highlighted in green and yellow belong to your wallet. Finalize the transaction after ensuring everything is perfect.
Coin control in mobile electrum (android)
How do I manually choose the address to send from in mobile electrum? As of now manual coin control is not available in electrum android application. Hope the developers will soon implement this. Once implemented we’ll update this page.
Hope this guide helped you to spend Bitcoins from a specific address. With the help of this feature you can use the same wallet and still keep your private and business transactions separate.
By manually picking UTXOs you are not only preserving anonymity but also have control over the transaction size.
Similar article: How to send exact amount of BTC to the recipient?