Despite Bitcoin offering unprecedented decentralization and security, its network has one significant flow, namely, the transaction speed. A single transaction processing can take up to 10 minutes. But why is this happening?
To understand why bitcoin transactions sometimes take so much time to confirm, it is essential to first understand how they are verified.
Delving into the essence
Once a transaction is created, a transaction message is sent to the Bitcoin blockchain and passed around all the nodes available on the network. This is called the Mempool queue where unconfirmed transactions are waiting to be validated by miners. Now the miners (in simple words, nodes validating a new transaction) will select a collection of transactions (not exceeding in size of 1MB), and try to validate them by solving a complex mathematical problem as their proof of work (POW).
Once a miner successfully validates a transaction and adds a new block to the blockchain, they’ll pass it around the updated ledger to other miners who are trying to validate a new block on top of that. In this case, many miners validate a new block almost instantaneously, and the longest chain rule is applied to accept one block and discard the remaining ones. The longest chain rule is basically accepting the blockchain with more blocks every node on the network, therefore, agreeing on the same transaction history.
Such a process seems time-consuming, although the speed actually depends on the equipment used. However, there are several other reasons for the slow speed of transaction confirmation.
Low transaction fee
Once an unconfirmed transaction is waiting around in the Mempool queue, the miners are more likely to pick up the transactions with a high transaction fee. Why so? Because seeing it from the miners’ perspective, when they mine a new block to validate a translation, they’re using the computing power, thus energy which costs them money. Therefore, they’re more likely to put their resources and money to validate a transaction that offers them better returns.
A block on Bitcoin blockchain can only contain a collection of transactions not exceeding 1MB of data. Therefore, the Bitcoin blockchain can only handle up to 7 transactions per second. Considering the current difficulty of complex mathematical problems, it takes on average 10 mins to apply the longest chain rule and validate a new block. So, if the network is congested and a large number of unconfirmed transactions are lying around in the Mempool queue, it can still take a long time even if you’re willing to pay a higher transaction fee.
Since a block in Bitcoin blockchain can only store information up to 1MB in size, a large transaction can take a lot of space. Thus, making it harder for the miners to validate transactions of a larger size. Therefore, miners are more likely to pick smaller transactions which are comparatively easy to validate.
Most of the exchanges and wallets dynamically adjust the transaction fee based on network congestion. It means the wallet service or exchange will calculate the appropriate transaction fee depending upon the current network load and transaction size. However, the fee can be adjusted manually. Many wallet services offer their users some adjustable options.
What about other altcoins?
Bitcoin is not the only cryptocurrency but is probably the slowest one. As compared to the average transaction speed of 10 largest cryptocurrencies, Bitcoin takes the longest time for processing.
Ethereum usually takes around 6 minutes whereas coins like Ripple (XRP) or Stellar (XLM) take less than 5 seconds. That is because Ripple and Stellar can handle more than 1000 transactions per second, whereas Bitcoin and Ethereum blockchain can only handle 7 and 15 transactions per second respectively.
Talking about the transaction speed and its limitations, in the coming years the rise of Ethereum 2.0 is expected to solve these limitations. On the other hand, Bitcoin developers also work on improvement of their network, so the community might see an improvement as well.