If you’ve been into Bitcoin long enough, you may have heard the term “Mempool” being thrown around. In this post I’ll explain exactly what the Mempool is and why it’s important.
The Mempool is a “waiting area” for Bitcoin transactions that each full node maintains for itself. After a transaction is verified by a node, it waits inside the Mempool until it’s picked up by a Bitcoin miner and inserted into a block.
Mempool Explained. Before we begin, here’s a short and important video about how Bitcoin transactions get confirmed.
When a Bitcoin transaction is transmitted to the network, it first gets verified by all of the Bitcoin nodes available (i.e. computers participating in the Bitcoin network. After it successfully passes verification by a node, it sits inside that node’s “Unconfirmed Transactions” area called the “Mempool” (short for Memory Pool). The transaction patiently waits until a miner picks it up and includes it in the next block.
The Mempool is basically the node’s holding area for all the pending transactions. Each node has a different capacity for storing unconfirmed transactions. As a result, each node has its own version of the pending transactions. This explains the variety of Mempool sizes & transaction counts found in different sources.
Mempool Management. You may be wondering: how do nodes keep from crashing due to overload of pending transactions in the Mempool? The answer is simple. Once the Mempool reaches full capacity, the nodes start prioritizing transactions by setting up a minimal transaction fee threshold. Transactions with a fee-rate lower than the threshold are immediately removed from the Mempool and only new transactions with a large enough fee are allowed access to the Mempool. Default size in Bitcoin Core is 300MB.
The Importance of the Mempool. The Mempool is part of BIP 35 (Bitcoin Improvement Proposal No.35). The idea was that outside nodes would be able to access other nodes’ Mempool. This is useful for several cases: SPV clients (also known as lite wallets), wishing to know about transactions before they were confirmed and entered into a block. Miners who want to check for lucrative fees or download the current “transaction waiting list” in order to start confirming transactions. Remote network diagnostics. The Mempool is the “waiting room” of the Bitcoin network. The faster transactions are cleared from it and added into blocks on the Blockchain, the better experience users will get. In other words, if new transactions arrive at a higher rate than they are cleared from the mempool into blocks, a “traffic jam” will occur and transactions can take a long time to get approved (depending on their size and attached fee). When a node receives the latest mined block from the miner, it removes all the transactions contained in this block from its mempool. This results in a sharp drop in the Mempool size. If you want to see the current status on the Mempool you can take a look at this graph.
If, for example, the Mempool size is around 3MB then most transactions will have to wait at least one or two blocks until they get confirmed. This is because each block is 1MB in size, so it can take up to 3 confirmations to clear the whole mempool (assuming no new transactions are coming in). Keep in mind that some of the Mempool transactions are low priority transactions that their sender knows they will take a long time to be confirmed – for example “dust transactions” (sending really small amounts of Bitcoin).
How Long Does it Take to Confirm a Bitcoin Transaction? On average a new block of Bitcoin transactions is mined every 10 minutes. This is an average, meaning it could take 1 minute or 1 hour as well. Each block holds a few thousand transactions. Depending on the fee you’ve attached to your transaction you’ll be able to estimate how long it will take your transaction to get confirmed (again, on average). You can use this page to see how much of a fee you need to attach to get confirmed within a certain amount of time.
What Should I Do If My Transaction is Stuck in the Mempool? As a rule of thumb, if you wait long enough (max timeout is 21 days) your transaction will drop from all of the Bitcoin mempools and the funds will be returned to your wallet. However, here are some other things you can do to expedite transaction confirmation: Use Replace By Fee (RBF) – Some wallets (e.g. Electrum) will allow you to replace an existing transaction with a new one with a higher fee. Use transaction accelerators – Some mining pools supply a service of accelerating specific transactions for a fee or on a first come first serve basis. also consult the “Tools page” where you can find fees calculators and accelerators for your stuck txs.
Conclusion. The Mempool is a very important part of the Bitcoin network. It allows us to understand how crowded the network is and if there are “transaction traffic jams” which result in slower confirmation times and higher fees. As a general user rule, is better to check the Mempool page before you make a tx and see how is the status and the level of fees. If your tx is not really urgent, just wait for more empty mempool, or set your tx with a lower fee. If you are in a hurry, set yout tx with the reasonable fee for being confirmed by miners in the time you want. Don’t get panicked if your tx takes more time than you expect. If the mempool is big, just wait, be patient, it will get through in the end, don’t worry.
Another aspects to mention.
1. miner “fees” = a price that you as a user you pay for securing your transaction. Is not a “fee” just for doing something because they want to charge you x amount. This is calculated by the weight/size of your tx, mathematically, not by some kind of % algorithm, random by each miner. This is a market fee. Demand and offer for space occupied on the blockchain.
These “fees” are controlled by each user: low, medium, high, custom, depending on each wallet app that the user have.
So when you send to somebody else, YOU are the one that choose a fee and you pay it from your own balance, NOT from the sum you are supposed to send. The destination receive EXACTLY what is supposed to receive.
2. Exchanges fees = INSANITY!!!!!
Exchanges, yes, they also have to do as all, txs onchain to send you the BTC you bought and you want to withdraw to your own wallet.
But these fuckers, in order to take from their balance the fee for miners, are deducting it from your withdrawal balance, so you will receive minus the fee THEY want to pay to the miners, NOT the fees that is supposed to be, from the mempool.
Why they do this? SIMPLY TO ROB YOU and make you NOT to withdraw your money form that fucking bank!
If they keep the money, they can manipulate more the liquidity and the price. That means more money for them.
Right now (feb 2021) mempool fees are around 60 – 80 sats/vB. Exchanges right now are charging (robbing) 200-800 and even 20k sats/vB.
You can always check here: https://mempool.space/
More mempool fees and calculators on our Tools page.
Here is an intensive guide about how to read and use the tools from the page of Mempool.space
Other articles and studies about mempool and empty blocks: