There is perhaps no worse feeling than making a huge Bitcoin transaction and then seeing the status as ‘Unconfirmed’. You know that the transaction will be confirmed in a short while in all probability, but there is still a nagging feeling in your stomach that something has gone wrong.
Well, you are not alone! This happens more often than you think, and it causes a similar reaction in other people. However, there is no need to fret. There are ways that you can mitigate this. In this guide, we will take an in-depth look at unconfirmed Bitcoin transactions, why they occur, and what you can do to avoid them.
Before we explore why certain Bitcoin transactions show up as unconfirmed, we first need to understand how Bitcoin transactions work.
How Bitcoin Transactions Take Place
Since Bitcoin is a decentralized currency, it is programmed to performed without the intervention of any central power. Because of this, all of the transactions taking place must be verified by someone. In this case, these people are known as the miners (the technical term is nodes, but these nodes are commonly referred to as miners).
Let’s take a step by step look at how Bitcoin transactions take place!
Initiating the Transaction
Whenever you make a transaction, you have the option of choosing the fee. The fee is in terms of Satoshis/byte (A Bitcoin has a 100 million Satoshis). This fee usually determines how quickly the transaction is going to be processed.
As for the transaction itself, it is important to prevent the double-spending problem that someone verifies you actually own the Bitcoin that you are trying to send (and vice versa if you are trying to receive Bitcoin). In order to do this, a computer that maintains a full copy of the blockchain needs to check the transaction history of the Bitcoins to see if they belong to you.
What Do the Miners Do?
The miners are essentially responsible for checking the legitimacy of your transaction. In order to do this, a lot of computing power must be spent. This is why miners usually have dedicated ASIC miners or stacks of GPUs to mine cryptocurrency.
Once the miners are able to confirm that you do own the Bitcoin that you are trying to send, the transaction gains its first approval. The miners do this because they are rewarded with a small amount of currency whenever they successfully do their job.
What Happens After the First Confirmation?
Once your transaction has been accepted, it is broadcasted on the network in terms of a block. Other miners need to pick up the block and complete the chain (hence the name blockchain) in order to complete the transaction.
As the block expands, you receive further confirmations for your transaction. In general, six confirmations are considered appropriate for a transaction to be completed. However, this number may vary depending on the total amount of Bitcoin that you are trying to send.
What Exactly is an Unconfirmed Bitcoin Transaction?
An unconfirmed Bitcoin transaction is any transaction that has not been confirmed to be legitimate as of yet. The problem that people have is not with having an unconfirmed transaction, as all transactions are initially unconfirmed.
Usually, it takes about 10 minutes for the first confirmation to get through. After that, each subsequent confirmation takes 10 minutes. In most cases, once you get the first confirmation, you will get the subsequent 5 shortly afterward. However, getting that first confirmation can be a bit tricky.
However, remember that 10 minutes is the average time it takes for a confirmation to get processed. It is entirely possible that your transaction remains in the memory pool for more than 10 minutes.
Why Do Bitcoin Transactions Remain Unconfirmed?
The problem that scares users is when a transaction stays at an unconfirmed status for far too long. Let’s look at a few reasons why that may happen. After that, we will be able to look at what you can do about it!
The Memory Pool
Once you confirm that you want to make a transaction, a miner does not begin working on it immediately. Instead, your transaction goes into something called the memory pool.
The memory pool is where your transaction stays until it is picked up by a miner and work begins on confirming it. Various websites allow you to check the size of the Bitcoin memory pool.
Just remember that the memory pool is not a queue, and it is not certain that your transaction will be processed. A lot of people new to Bitcoin simply do not pay a fee for their transaction (or they pay a very small fee), and their transactions are not processed as a result.
A miner can choose to begin work on any transaction in the memory pool. In most cases, the miner would begin work on the one that pays the highest fee. Usually, transactions with fees of 250 Satoshis/byte or more are almost instantly processed. The lower ones take some time.
This is another thing that you must take into account. Even if you have set a high fee for your transaction, it is possible that it takes time for the transaction to be completed.
One important thing that you must remember is that regardless of the size of the transaction, the actual hash power required to confirm it is the same. As such, the network can get congested if there are a lot of transactions waiting to be processed. This is true even if most of the transactions on the network are only sending a small amount of Bitcoin.
These increases in network loads are most common during Bitcoin bull runs when the price of Bitcoin is rapidly rising. A lot of people are looking to cash out their gains which makes the number of transactions very high. Throughout the years, numerous exchanges have reported a slowdown in withdrawals due to network congestion.
DDoS Attacks are very scarce these days, but they have been a huge problem in the past. If you are making a transaction through an exchange and it is taking too long, it could be that the exchange is under an attack.
A DDoS attack, although extremely complicated to perform, is based on a very simple concept. A server is bombarded with requests in such a large number that the processor is unable to handle these requests, thus leading to network slowdown or even downtime.
Thankfully, most exchanges are now developed enough to not have this problem for the most part. However, you may want to check to make sure this isn’t what’s causing your unconfirmed transaction, as even the most powerful companies can fall victim to hackers.
How Can I Avoid Unconfirmed Transactions?
Let’s look at how you can make transactions that will not stay unconfirmed for too long. After that, we will look at what you can do in case a transaction is stuck in the memory pool.
Set the Right Fee
This one is self-explanatory. If you set a fee that is high enough, your transaction will be processed much quicker than it would otherwise. Data suggests that a transaction with a relatively high fee has a 60% chance of receiving the first confirmation within 10 minutes.
There are numerous Bitcoin fee calculators that can help you determine the optimal fee to pay for your transactions. While these calculators may not be 100% accurate, they will still make sure that your transaction gets through in a reasonable amount of time.
Make Transactions When Network Load is Low
We have already linked to websites where you can check the size of the memory pool. When the memory pool is greater than usual, the chances of network congestion are high. As such, it is possible that your transaction may be processed later than usual.
The size of the memory pool increases and decreases throughout the day. As such, you should try and pick a time when the load on the network is low. This way, not only will you have a better chance of sending your Bitcoin without hiccups, but you will probably be able to send it with a smaller fee.
What if I Don’t Want to Pay a Lot of Fees
In all probability, your transaction will be processed as long as the fee isn’t minuscule. It will just take longer to leave the memory pool. If you are insistent on making the transaction with a very low fee, it is best to wait up to 72 hours to see if the transaction is confirmed before making it again.
Alternatively, if you need to send multiple payments to the same party, you can send those payments in a single large transaction instead of numerous smaller ones.
What to Do if My Transaction Is Stuck?
If you made a mistake when making a transaction and it is now stuck, there are three main things you can do to fix it.
Replace By Fee
Replace By Fee allows you to fix an unconfirmed transaction when the reason for it being unconfirmed is a low fee.
All you need to do is to broadcast the same transaction with a higher fee. Remember that the fee you end up paying will be the sum of both of your transactions. For example, if your first transaction had a fee of 20 Satoshis/byte and your second transaction has a fee of 100 Satoshis/byte, you will end up paying 120 Satoshis/byte for the transaction in total.
Child Pays For Parent
This is an alternative to Replace By Fee. It achieves the same thing, but it is a lot more complicated to perform.
In simple terms, the receiver of the transaction makes a transaction spending the Bitcoin he is going to receive from the previous transaction. If the fee of the new transaction is very high, miners will be incentivized to confirm both the first transaction (the parent) and the second one (the child).
The easiest way to make a child transaction pay for its parent is through a wallet that supports it. However, you can also do it manually. Just remember that the process is a little complicated and not suited for beginners.
Transaction accelerators are offered by mining pools. For a fee, the mining pool will prioritize your transaction. However, considering the fees that they charge are much higher than the previous two methods, transaction accelerators should only be used if you are unable to exercise the previous two options.
A Primer on Bitcoin Confirmations
Since whether or not your transactions are stuck is entirely based on being able to get a confirmation, here is what you need to know about Bitcoin transaction confirmations.
How to Check My Confirmations?
When you make a transaction, you get a unique Transaction ID. You can use one of the various blockchain explorer tools to enter that ID and see how many confirmations you have.
The same tool will also let you check the size of the memory pool and the average fee for which transactions are being confirmed. This will help you estimate how long it will take for your transaction to be confirmed.
How Many Confirmations do I Need?
This depends on the size of your transaction. For smaller transactions i.e. less than $1,000, a single confirmation is more than enough.
Three confirmations are considered the standard for slightly larger payments ranging between $1,000-10,000.
For most larger transactions, experts advise you to wait for 6 confirmations before accepting them to be complete.
However, to be on the safe side, you should wait for more confirmations if the size of your transaction is huge. For example, a veteran crypto trader is likely to wait for up to 60 confirmations if the size of his transaction is greater than $1 million.
To summarize everything, Bitcoin transactions get stuck either because the fee is too low, the network is congested, or because of rare hiccups such as a DDoS attack.
The easiest way to avoid unconfirmed transactions is to attach a reasonable fee to your transaction and to make the transaction when the network isn’t congested. However, in case your transaction is unconfirmed, you can fix it using the Replace By Fee or the Child Pays For Parent method.