Whenever someone spends bitcoins, they have first been sent to what’s called the memory pool or “mempool,” where transactions await confirmation by miners before they can become an official part of the digital ledger known as blockchain.
Increased demand from users coupled with increased supply causes congestion within this space, leading to slow transaction speeds.
If you’ve ever traded Bitcoin – or any other cryptocurrency – then you’ve probably experienced a delay in confirming your transactions.
Transactions can sometimes be completed within minutes while remaining unconfirmed for more than 24 hours on other occasions.
Experiencing a delay in confirming a Bitcoin transaction can induce some anxiety, but it’s a normal thing to expect on a blockchain network.
In this article, we cover some of the main reasons why your bitcoin transaction remains unconfirmed.
What happens in a Bitcoin transaction?
Let’s start with the basics of a bitcoin transaction. This will be helpful in understanding the entire bitcoin exchange process and why it can take some time to confirm a transaction.
The Bitcoin Network
A Bitcoin transaction involves the transfer of bitcoin (BTC) cryptocurrency over the Bitcoin network, which is a series of different computers connected to each other on the Internet. Each computer acts as a “node”, where transaction records are recorded in a database stored in “blocks”.
A node can have different amounts of blocks and, therefore, a different number of transactional information stored inside. Because the database is distributed across many computers, it is said to be decentralized.
Authentication via Miner
When a user attempts to send BTC to another recipient through the Bitcoin network, the information is transmitted to all network nodes for authorization. The authorization process requires miners to verify each transaction through a PoW Proof of Work consensus. What this essentially means is that all nodes in the network must accept the details of a transaction to confirm it.
These details include:
- Private and public keys of the parties making transactions
- The number of cryptocurrencies traded
- The transaction fee
Miners must authenticate private and public keys by solving cryptographic puzzles. This process requires some computational effort and has a fee attached.
Once the computational work is completed and the user details are authenticated, the transaction is considered verified by the node and the relevant information is added to a block on the node.
Transaction information entering a node is not automatically added to a blockchain. Instead, it is first sent to a virtual drive that stores information about all unconfirmed transactions.
This unit is called a mempool. Each node has its own mempool, depending on the hardware and software configuration. As a result, the number of transactions stored in the mempool varies between different nodes.
When there are too many transactions in a network, most of them end up being stored in the mempool of a node, resulting in a backlog of transactions. A node will attempt to verify transactions as quickly as possible, but high network congestion means that this process can take time.
Since the Bitcoin network is designed to automate the authorization process, a node will try to prioritize transactions that have a higher fee associated with it. In other words, a higher transaction fee for a miner (or an offer from a user) will result in a faster transaction confirmation. A confirmed transaction is removed from the node mempool.
It is worth noting that the transaction data does not disappear. It is stored on the blockchain, which is shared across all nodes in the network. If you need decentralized data storage solutions, you don’t need to store your raw data on the blockchain.
Transaction fees incentivize miners to prioritize users willing to reward them for their work (the computational effort required to solve cryptographic puzzles when authenticating a transaction). Miners are also rewarded with freshly minted BTC.
The tariff is dynamically affected by user congestion on the network. A higher transactional load on the network increases transaction fees to prioritize a Bitcoin transaction. On the contrary, low traffic translates into a net decrease in transaction fees.
Transaction fees are also determined by the number of bytes used in the transaction. Typically, each byte will be assigned a rate in satoshi (the smallest BTC denomination equal to 100 millionths of a bitcoin). For example, a rate of 2 sat/per byte should allow a user to confirm his transaction in a few days. If the transaction requires the creation of another block, you may incur a higher fee.
If you are using the services of a bitcoin exchange, the fee structure may be different from the above. Bitcoin exchanges are third-party platforms that help buyers and sellers trade cryptocurrencies. Exchanges may charge a fixed fee or percentage fee for high-volume transactions. These rates vary between different exchanges, and we recommend that you check these rates before trying their services.
Now that you understand what happens in a bitcoin transaction, we can explain why they remain unconfirmed.
Why is your Bitcoin transaction not confirmed?
There are several reasons why your transactions may be pending for some time. We can group them into two basic categories.
Processing transactions are
incomplete transactions on the Bitcoin network that are still being processed. At this stage, transactions are not confirmed, and there are a few reasons for this.
- high volume of traffic: A large number of transactions slows down processing speed and increases wait times due to the backlog of pending transactions. You can view the number of transactions on a blockchain tracker as Blockchain.com. A quick look at recent confirmation times in May 2022 suggests that the average daily confirmation time for a BTC transaction is between 6 and 15 minutes.
- Low transaction fee: Since mining nodes are programmed to prioritize transactions that offer a higher fee, chances are you’ve paid a small fee. This means that your transaction will remain in the queue for a longer period of time. You can compensate for the low commission by paying additional fees or initiating another transaction. We explain more about this below.
- Older protocols: While this is a special case, you could use a bitcoin network or wallet with an older architecture (with the classic block size of 1MB) and no Segwit protocol that typically allows users to speed up transactions. However, many applications are adopting the latest protocols, and this is usually not a problem. To check if your transaction is compatible with the Segwit protocol, you need to make sure that it has a witness connected and that the fifth byte (for input counts) shows a value of 0x00.
Failed or incomplete transactions
In this case, transactions are incomplete because something went wrong. You should be able to perform basic troubleshooting to resolve these issues.
- Internet error: This is simple. A faulty internet connection means that you were unable to connect or transmit your transaction details to the bitcoin network. If your internet is working, check if there is a firewall blocking the Bitcoin application.
- Incorrect transaction details: If you sent the information to the wrong address or wallet, the network may not be able to confirm it. Please check all the details carefully before initiating a transaction. In some cases, you may lose some of your BTC funds.
- Transaction declined. If your transaction fee is too low (or not assigned), some miners will reject it. Too much waste on a congested network results in a failed transaction.
- Issues with the recipient’s wallet: Sometimes, you may see multiple nodes confirming your transactions, but your transaction still appears as unconfirmed. This is usually a problem that occurs when specific wallets are not synchronized with the blockchain network. An idle receiver or someone with a limited wallet may not be able to immediately view all the information on the network.
How long does it take to send Bitcoin?
All Bitcoin transactions require 6 confirmations in the blockchain by miners before being processed. In general, Bitcoin transactions usually take anywhere from 1 minute to 1.5 hours to complete. However, there may be delays in the transaction if there is a high volume of transactions taking place at the same time.
What can I do when my transaction is not confirmed for too long?
Transactions can sometimes take up to 48 hours to confirm. Normally there is no need to panic in these cases. However, if you’re not sure whether to wait for the confirmation notice, you have two options.
Use the Re Replace-by Fee (RBF) protocol
RBF is a way to cancel the unconfirmed transaction. This protocol allows you to resend a bitcoin transaction with a higher transaction fee. Your transaction information is transmitted to the entire Bitcoin network.
Mining nodes will prioritize the highest fee and process the transaction accordingly. Your previous transaction will be canceled and the funds associated with that transaction will be returned to your wallet.
Using the RBF protocol requires your wallet to be compatible with it, and the option is usually enabled by clicking a checkbox before accepting the transaction.
Use a normal dual-use method
In case the RBF protocol is not supported, you can simply initiate a second transaction from your wallet with a similar amount. A higher fee will typically be added in this case. Miners usually collect your new transaction and complete the operation.
Most bitcoin software has double-spending guarantees to prevent bitcoin loss. Therefore, you may need to use a second wallet or another client to allow you to do this.
We recommend sticking to the use of the RBF protocol to be on the safe side when you think you want to cancel a bitcoin transaction.
Waiting for a bitcoin transaction can be a frustrating experience. However, it’s all part of the cryptocurrency exchange process.
Understanding how the Bitcoin network works and the options available to you when responding to a long wait time can ease your frustration.