This post originally appeared in the Blockonomics Blog
As bitcoin sees a rise in its adoption, so does its transaction fee. With the number of bitcoin transactions-per-minute on a rise, miners usually give preference to transactions with a high fee, driving the overall fees up.
In a period of one year, the average transaction fee has seen a rise of almost 2690%, rising from $0.630 to $17.58.
It is not uncommon for bitcoin transactions to be stuck on the blockchain for hours or even days at a time.
If you have one of your bitcoin transactions stuck on the blockchain and wish to speed up its confirmation there are a few things you can do to make that happen.
Let's have a look…
Replace-by-Fee (RBF) [For transactions sent by you]
If the transaction you sent has been stuck in the mempool for a long time due to network congestion then the best option currently available to clear it is through RBF.
Simply put, RBF allows you to replace your old stuck transaction with a new one sent at a higher fee, thereby increasing the probability of getting confirmed and unsticking your transaction.
To implement RBF, you need to use a wallet that supports this functionality and it must be enabled before sending a transaction.
For this tutorial, we will be using Electrum,
Step 1: Before you send a transaction from your electrum wallet head to Tools -> Electrum Preferences -> Transactions.
In the pop-up menu make sure the ‘Use Replace-By-Fee’ option is checked.
Step 2: When making a transaction, fill out all the necessary fields and click Pay-> Advanced, and double-check that the ‘Replace by fee’ option is checked.
Step 3: Once the transaction is made, you can increase its fees.
Head to ‘History’, find your unconfirmed transaction, right-click and select ‘Increase fee’.
Step 4: Add the desired fee and click OK.
Child Pays for Parent (CPFP) [For transactions you receive]
You can clear transactions you receive by a method called child pays for parent (CPFP). This method involves creating a new transaction [child] using the funds of the old stuck transaction [parent] and sending it at a much higher fee.
For the new transactions to confirm the old transaction must confirm as well and if the fee is high enough, miners usually include both transactions into the block, thus confirming them.
To use CPFP you need a bitcoin wallet that supports it, and it must be enabled. Different wallets have different settings for its implementation so do check the steps before using it.
For this tutorial, we will be using Electrum,
Step 1: In your Electrum Wallet, head to ‘History’ and right-click the unconfirmed transaction you received, and select ‘View Transaction’.
Step 2: Find any addresses highlighted in yellow or green. Note down those addresses along with the transaction size and fees.
Step 3: Select Tools-> Electrum preferences -> Transactions and make sure the ‘Spend only confirmed coins’ is unchecked.
Step 4: Then head to the ‘Receive’ tab and click ‘New Address’ to generate a new receiving address.
Step 5: Then select View [Top bar] -> Show Addresses and switch to the Addresses tab.
Step 6: Run a search command and find the address you noted down in step 2 [if you noted down multiple addresses use the one that you wish to spend from]. Right-click on it and select ‘Spend from’.
Step 7: In the spend window that opens up paste the receiving address you generated in step 4 and enter any small amount [anything less than the unconfirmed amount].
Click ‘Pay’ and move the slider next to ‘Fee rate’ all the way to the right and send the transaction.
This will create a transaction that you send to yourself but with a higher fee.
Transaction Accelerators are external services that you can use to accelerate your transactions. These services are run by none other than miners themselves and for a fee, you can get your transaction confirmed.
They are simple to use and require very few steps.
Step 1: In your wallet, head over to transactions history and right-click the unconfirmed transaction you wish to confirm.
Select the Transaction ID.
Step 2: Head over to viaBTC transaction accelerator and paste the transaction ID.
You have a choice of 2 options, Free or Paid service.
Free service will broadcast your transaction across the mempool in the hopes that the transaction will get picked by a miner. This option does not guarantee a quick confirmation, it just increases the chances by a little bit.
If you want a guaranteed confirmation then opt for the paid service and follow the necessary steps.
Speeding up unconfirmed bitcoin transactions is easier than you might think and there are a few methods currently available to make this possible.
If you wish to speed up the transactions using your bitcoin wallet then it is advised to use Electrum or a similar wallet that supports this functionality.
If your wallet does not support this feature then your best options are using a transaction accelerator or simply waiting it out.