What Is a Mempool?
The mempool is the waiting room for unconfirmed Bitcoin transactions. How miners choose by sat/vB, what happens when it is full and how to read it.
The mempool is the waiting room for Bitcoin transactions that have been sent but are not yet confirmed in a block. Every node keeps its own mempool. Miners build the next block from it and take first the transactions that pay the most per unit of space. Whatever doesn't fit waits for the next block.
How a transaction gets into the mempool
When you press "Send" in your wallet, it sends the signed transaction to one or more Bitcoin nodes. How a transaction is built from inputs, outputs and change is explained in the article How does a Bitcoin transaction work?. This article is about what happens next.
The first node checks the transaction before accepting it:
- Do the bitcoin exist? Every input must point to an amount that has not been spent yet.
- Is the signature valid? Only whoever holds the matching key may spend the amount.
- Does it pay enough? Below a minimum fee the node won't accept it.
- Does it follow the usual rules? For example a maximum size and no tiny outputs that would cost more to spend than they are worth.
If the transaction passes, the node puts it into its mempool and tells its neighbours about it. They check it again and pass it on. Within a few seconds almost every node in the world knows your transaction. That does not make it confirmed. It is confirmed only once a miner writes it into a block.
Every node has its own mempool
The blockchain is the same for everyone. The mempool is not. Three reasons:
- Time. A new transaction doesn't reach every node at the same moment. For a few seconds one node knows it and another doesn't yet.
- Space. Every node decides how much memory its mempool may use. A small node drops cheap transactions earlier than a large one.
- Rules. What a node accepts and relays is its own setting, called policy. The consensus rules, what is valid in a block, are the same for everyone. The policy for waiting transactions is not. An example: in 2025 Bitcoin Core 30 raised the default limit for data outputs (OP_RETURN) by a wide margin. Some operators therefore run Bitcoin Knots, which filters such data more strictly. Their mempools differ slightly as a result.
For you this means: a website like mempool.space shows the mempool of its nodes. That is a very good guide, but not an official queue. With your own Bitcoin node you see your own mempool and estimate fees without asking someone else's server.
How miners choose from the mempool
A miner wants to earn as much as possible from each block. They receive the block reward and all fees of the transactions they include. But space in the block is limited. So they take the transactions that pay the most per unit of space.
This price per unit of space is the fee rate, measured in satoshis per vbyte (sat/vB). A vbyte is the unit for the space a transaction takes up in a block. How large your transaction is and what that costs in euros is worked out in the article Understanding Bitcoin transaction fees.
What matters is also what does not count:
- The amount. €10 and €10 million are worth the same to a miner if they take the same space and pay the same.
- Arrival time. Coming early gives no priority. A new transaction with a higher rate overtakes everything that offers less.
- The absolute fee. A large transaction paying 5’000 satoshis can end up behind a small one paying 1’000 satoshis if it pays less per vbyte.
Block space: 4’000’000 weight units
Since SegWit (BIP 141, 2017) Bitcoin measures a block in weight units (WU). A block may weigh at most 4’000’000 WU.
- Signature data (witness) counts 1 WU per byte, all other data 4 WU per byte.
- 1 vbyte = 4 WU. So at most 4’000’000 ÷ 4 = 1’000’000 vbytes fit into a block.
- Fee rate = fee in satoshis ÷ size in vbytes.
A miner thus solves a packing problem: fill 1’000’000 vbytes so that the total of fees is as high as possible. Sorting by sat/vB and filling from the top comes very close to the optimum. The software keeps a small part free for the miner's own reward transaction.
Parents and children count together
A transaction can spend an amount that is itself still waiting in the mempool. It is then the "child", and the waiting predecessor the "parent". A miner may include the child only if the parent is in the same or an earlier block. So they count both together: total fee divided by total size. CPFP rests on exactly this principle, more on that below.
What happens when the mempool is full?
By default Bitcoin Core gives its mempool 300 MB of memory. That sounds like a lot, but a transaction takes several times as much space in memory as in a block. When for days more is sent than blocks can carry away, it gets tight. Then three mechanisms kick in.
1. The cheapest are dropped
When memory is full, the node drops the transactions with the lowest fee rate, together with everything that builds on them. This is called eviction. The node simply forgets these transactions. They are not invalid, just no longer in this node's waiting room.
2. The minimum fee rises
After an eviction the node raises its entry threshold: just above the rate it has just dropped. New transactions below that it doesn't accept at all. As the mempool empties again, the threshold slowly falls back to the fixed floor, the minimum relay fee. In Bitcoin Core this has been 0.1 sat/vB since version 29.1; before it was 1 sat/vB (as of November 2026).
That is why your wallet sometimes shows an error like "min relay fee not met" or "mempool min fee not met" during busy periods. Your fee was simply below the current threshold.
3. After 14 days it's over
A transaction that does not make it into a block for two weeks is removed from the mempool by Bitcoin Core by default. That is 336 hours. Other nodes may keep it for a while longer, and your wallet can broadcast it again.
Bitcoin Core's default values
As of November 2026; every node operator can change them:
maxmempool= 300 MB of memorymempoolexpiry= 336 hours (14 days)minrelaytxfee= 0.1 sat/vB (since 29.1, before that 1 sat/vB)- Maximum size of a standard transaction: 400’000 WU = 100’000 vbytes, a tenth of a block
When the threshold is raised after an eviction, it sits at the rate of the evicted transaction plus a small step (incremental relay fee). After that it halves at least every twelve hours, faster when the mempool is almost empty again, until it reaches the floor.
Reading a mempool visualisation
Sites like mempool.space make the mempool visible. Using the site, its fee recommendations and searching for your own transaction are covered in the fees article. Here are the parts that show what the waiting room looks like right now:
- The projected blocks. On the left are blocks that don't exist yet. The site builds them from the mempool the way a miner would. Each shows a range like "2 – 15 sat/vB" and the median rate. The last one is often a thick block marked "+ 30 blocks": all the rest waiting after it.
- The blocks on the right. These are blocks already found. Each of them was a slice of the mempool shortly before.
- Mempool size in vMB. 1 vMB = 1’000’000 vbytes, one full block. If it says 30 vMB, without new transactions it takes about 30 blocks, roughly five hours, until everything is confirmed. Don't confuse it with the memory display "x MB / 300 MB": that is the node's working memory, which is much larger than the block space.
- The coloured area (mempool by fee rate). Each colour is a fee level. If the area grows at the top, expensive demand is arriving. If only the bottom layer grows, mostly patient transactions are waiting.
- Incoming per second. Above about 1’667 vbytes per second, more comes in than blocks carry away on average (1’000’000 vbytes every 600 seconds). The mempool then grows.
Here you see the three newest blocks. Each of them took its transactions from the mempool and carries the fingerprint of its predecessor:
- Block 975’721Previous fingerprintPaymentsOwn fingerprint
- Block 975’722Previous fingerprintPaymentsOwn fingerprint
- Block 975’723Previous fingerprintPaymentsOwn fingerprint
A large mempool, by the way, is no sign that Bitcoin is "clogged". Often tens of thousands of transactions are waiting there at the minimum fee, sent by people who deliberately have time. What matters is how much waits above your rate, not how much in total.
RBF and CPFP: two ways out of the queue
If your transaction is stuck, there are two tools. Both use the mempool's rules. How to trigger them in your wallet is in the fees article.
RBF (Replace by Fee). You send the same payment again with a higher fee. Nodes replace the old version in the mempool with the new one because it pays more. The new one must offer a higher total fee than the old one and also pay for its own space. Since Bitcoin Core 28.0 (October 2024) nodes by default replace any waiting transaction that meets these rules, even without a special flag.
CPFP (Child Pays for Parent). You spend the waiting amount, for example your change, onward with a high fee. Because miners count parent and child together, the child pulls the parent into the block. This also works as the recipient, for example when an exchange paid out too cheaply. Since Bitcoin Core 28.0 nodes can accept a parent that alone is below the minimum fee together with its child. So in many cases CPFP works even when the parent has already been dropped from the mempool.
What the mempool means for you as a saver
For long-term holders the mempool is above all a price display. You buy bitcoin and withdraw them to your own wallet. You are almost never in a hurry. If you take a quick look at the mempool before sending, you often pay a fraction for the same transaction.
Two habits help:
- Send with RBF. Start low. If it gets tight, raise the fee later. Most modern wallets can do this.
- Use quiet times. If you have many small savings-plan amounts, combine them when the mempool is empty. Then each input is cheap.
For fast, small payments the mempool is the wrong place. That is what the Lightning Network is for; it works without waiting for blocks. How blocks are made and who builds them is explained in the article Bitcoin mining.
Frequently asked questions
What is the mempool in Bitcoin?
The waiting room for transactions that have been sent but are not yet confirmed in a block. Every node keeps its own mempool in memory. Miners pick the transactions for the next block from it, highest fee rate first.
How long does a transaction stay in the mempool?
Until a miner includes it in a block, or until it expires. Bitcoin Core removes waiting transactions after 14 days by default. When the mempool is full, a cheap transaction can be dropped earlier.
Is my money gone if the transaction falls out of the mempool?
No. A transaction that never made it into a block never happened. The bitcoin stay at your address and you can send again.
Why does mempool.space show something different from my wallet?
Because every node has its own mempool. Your wallet may ask a different server that saw a transaction earlier or later or uses different settings. The differences are usually small.
Do miners prefer large amounts?
No. Miners only see the fee rate in sat/vB. Whether you send 0.001 BTC or 100 BTC doesn't matter, as long as the transaction takes the same space and pays the same.
What does "mempool min fee not met" mean?
Your fee was below the node's current entry threshold. This happens when the mempool is full and the node has raised its threshold. Send at a higher rate or wait until the mempool empties.
Sources
- Satoshi Nakamoto: Bitcoin whitepaper, sections 5 "Network" and 6 "Incentive" (2008)
- BIP 141: Segregated Witness, weight units and block weight
- BIP 125: Opt-in Replace-by-Fee, rules for replacement transactions
- Bitcoin Core: default values for mempool size and expiry (kernel/mempool_options.h)
- Bitcoin Core 28.0: release notes, full RBF by default and package relay
- Bitcoin Core 29.1: release notes, lower minimum fee
Not financial, legal or tax advice. Models are no guarantee.
The Bitcoin Power Law newsletter
An email when we publish a new article or calculator. Every issue has a one-click unsubscribe link.