A friend asked me yesterday, “why does it take time for a Bitcoin transaction to get confirmed?”
Bitcoin transactions take roughly 10-30 minutes to get confirmed because they first go to the mempool and then from there Bitcoin miners pick-up these transactions to be added in a successful block.
Hearing this my friend was clueless!!
That’s when it hit me that still, the average person out there isn’t aware of the full transaction lifecycle of Bitcoin. And that’s why I decided to do a series of posts on this topic.
In line with that today I am going to share with you, the significance of Bitcoin mempool, its meaning and definition so that you can understand an essential part of the Bitcoin transaction cycle.
So let’s get to the business:
Bitcoin Mempool Explained: What Is Bitcoin Mempool?
Bitcoin mempool is nothing but a pool of unconfirmed Bitcoin transactions.
To understand this entirely, you need to first look at the Bitcoin transaction cycle:
As shown in the above flowchart, as soon as you do a transaction over Bitcoin’s blockchain, it is not added instantly to the blockchain.
Instead, first, that transaction goes through a pool of transactions where all the pending/unconfirmed transactions sit, waiting to be picked by miners.
But where is the mempool?
Well, this mempool is maintained individually by each miner who is running a Bitcoin full-node, and the actual size of mempool can vary from miner to miner (historically the size even reached 137 MB and as low as 0.2 MB also).
Once the transaction reaches the mempool, the miners at their respective nodes pick up a bunch of transactions from the mempool to solve an energy-intensive Bitcoin mining math problem.
So, in short, this is Bitcoin Mempool where the transactions there are made by users but not yet added to the blockchain and are waiting for confirmations.
But wait, there is more to it:
Bitcoin mempool is a simple thing, but it has complex and important implications over the Bitcoin’s network.
And I think by reading so far, you should have this question as, ‘How miners decide which transactions to pick-up first and which ones later?’
You should have this question because I believe you must have noticed that some transactions get confirmation very fast while some take even up to hours. (even when Bitcoin’s block time is 10 minutes)
This happens because your transaction is not getting picked by the miners, even if it is in the mempool?
You are wondering, how that happens?
Well, here comes the genius incentive model built by Satoshi Nakamoto in the Bitcoin protocol itself.
If you remember in my Bitcoin mining article, I have shared with you that Bitcoin miners compete with each to win a lottery of 12.5 BTC to mine a block successfully.
But apart from this lottery the miners also prioritize which transaction to pick first over the others based on the bonuses they are getting for picking the transactions, and this is called ‘Block mining fee or Bitcoin transaction fee’
So, the miners receive 12.5 BTC plus the ‘X’ amount of Block mining fee for their mining work. And if you see, here that 12.5 BTC reward is fixed for all the miners, but ‘X’ amount of block mining fees varies.
So higher the ‘X’ amount, higher the income/reward for miners to mine a successful block.
I know you are thinking, how block mining fee is related to your transaction not getting picked from the mempool?
Well, for that let’s understand, block mining fee first,
Block is merely a collection of transactions and each transaction has a transaction fee attached to it. And the sum of the transaction fees attached to individual transactions that a miner has taken into his block is called ‘Block mining fee.’
So assume for a moment that you are a Bitcoin miner.
What would you do?
Well, if I were a miner, I would try to maximize the ‘X’ amount by always picking up those transactions from the mempool which has higher transaction fees attached to it so that I can get more block mining fee as a reward.
Now look at this snapshot of blocks that have been mined already and their individual bonuses (i.e., block mining fee) attached to it:
So you see in this image that how mining pools such as (ViaBTC, F2Pool, SlushPool) received extra reward apart from the fixed 12.5 BTC for mining these respective blocks.
Hence it makes economic sense for the miners to pick up those transactions first from the mempool which has higher fees attached to it.
And miners are quite proactive in this, as all the miners keep their mempool in descending order of transaction fees (bitcoin mempool fees) attached to it and that’s one of the main reasons for your transaction to be stuck in the mempool, if your fees is less.
However, this doesn’t mean that you need to attach absurd amount of transaction fees to your transactions, but you certainly need to be pro-active in finding out the right and competitive fee at the time of your transaction.
But that’s a whole new topic of Bitcoin transaction fees, that we will cover some time else.
Understanding Bitcoin Mempool Backlog
So this, what the meaning of mempool is.
But some people even consider Bitcoin mempool as Bitcoin network’s backlog also, and this is true because this is the bottleneck of the network so the faster transactions get picked up from here, the better will be the user experience.
And as common sense says, if the rate at which transactions are arriving in the mempool is less than the rate at which the blocks are being mined, a bottleneck will naturally occur.
That’s why understanding the concept of mempool and transaction fee is so crucial to enhance your user experience of using Bitcoin.
If you have any questions on mempool, feel free to shot to us in the comments section below, and we will be happy to answer them 🙂
Enjoyed this post? Don’t forget to share it with your friends!!