What Is the Bitcoin Mempool and How Does It Work?
The Bitcoin mempool, short for memory pool, is the set of valid transactions a node has received but not yet seen confirmed in a block. Every full node keeps its own, so there is no single global queue: miners build blocks from their mempool, usually taking the highest fee rates first, and a transaction leaves it when it is confirmed, replaced by a version that pays more, or dropped.
Mempool Limits at a Glance
The defaults below are Bitcoin Core’s, the software most nodes run. Operators can change every one of them, which is one reason mempools differ.
| Setting | Default | What it controls |
|---|---|---|
-maxmempool | 300 MB | Memory the mempool may use before the lowest fee rates are evicted |
-mempoolexpiry | 336 hours (two weeks) | How long an unconfirmed transaction is kept |
-minrelaytxfee | 0.1 sat/vB | Lowest fee rate the node accepts and relays |
-dustrelayfee | 3 sat/vB | Fee rate used to decide which outputs count as dust |
| Replace-by-fee | Full RBF | Any unconfirmed transaction can be replaced by one that pays more |
-persistmempool | On | The mempool is saved to mempool.dat at shutdown and reloaded at startup |
The size and expiry limits are set in mempool_options.h and the fee rates in policy.h. The minimum relay fee rate fell from 1 to 0.1 sat/vB in Bitcoin Core 29.1 (September 2025), and full RBF became the default in Bitcoin Core 28.0.
How Does a Transaction Get Into the Mempool?
A wallet builds and signs a transaction, spending earlier outputs as how Bitcoin works describes, and sends it to one or more nodes. Each node checks it before accepting it: the signatures must be valid, the coins it spends must exist and not be spent already, and it must pass the node’s relay policy, which sets a minimum fee rate, a maximum size of 400,000 weight units and a ban on creating dust outputs too small to be worth spending. A transaction that passes goes into the node’s mempool and is announced to its peers, which run the same checks, so it usually reaches nodes across the network within seconds.
Mempools still differ from node to node. A transaction may not have reached a node yet, a node may run a smaller mempool or a stricter policy, or it may have evicted low-fee transactions that others still keep. That is why two block explorers can show different numbers for “the” mempool.
How Do Fees Decide What Confirms First?
Block space is limited: a block may hold at most 4 million weight units, about 1 million virtual bytes (BIP 141). Miners want the most fees from that space, so they rank transactions by fee rate, in satoshis per virtual byte (sat/vB), not by the total fee or the amount sent. A simple payment with one input and two outputs takes about 140 vbytes (Bitcoin Optech), so at 5 sat/vB it pays 700 satoshis whether it moves 0.001 BTC or 100 BTC.
Unconfirmed parents and children are judged together. Bitcoin Core’s block template ranks a transaction with its unconfirmed ancestors by their combined fee rate, which is what lets a high-fee child pull a low-fee parent into a block (Bitcoin Optech). Block explorers use the same logic to draw projected blocks: slices of the mempool sorted by fee rate, each about one block’s worth, with the fee rate needed to make the next one.
Services that send many payments can shrink their share of the queue by batching payments into one transaction, which takes far less block space per payment.
What Happens When the Network Is Congested?
When demand for block space outruns supply, whether from payments or from data such as Ordinals inscriptions, the backlog grows. Once a node’s mempool reaches its memory limit, the node evicts the transactions with the lowest fee rates and raises its own minimum fee rate, so new transactions below that level are turned away; mempool.space shows this level as the purging fee rate. Separately, a transaction that waits two weeks without confirming expires from Bitcoin Core’s mempool.
A big mempool does not always mean high fees. On 18 October 2026, mempool.space counted about 38,000 unconfirmed transactions, roughly 30 million vbytes or 30 blocks’ worth. Yet 3 sat/vB was enough for the next block, because 95% of that backlog paid only 0.1 to 0.2 sat/vB, just above the minimum relay fee rate. What decides your wait is how much is queued above your fee rate, not the total size.
Why Is My Transaction Stuck, and How Can I Speed It Up?
A transaction stays unconfirmed when its fee rate is below what miners can earn from other transactions. Nothing is lost while it waits: the transaction will either confirm or drop out of mempools, and your wallet keeps control of the coins. There are three ways forward.
- Replace-by-fee (RBF). Broadcast a new version that spends at least one of the same inputs and pays a higher fee (Bitcoin Optech). Under Bitcoin Core’s replacement rules, the new version must pay more in total than what it replaces, plus enough to cover its own size at the incremental relay fee rate. Wallets call this “bump fee”, “speed up” or “increase fee”. Transactions once had to opt in to replacement by signalling, as BIP 125 describes; since Bitcoin Core 28.0, nodes accept replacements by default without the signal, although some wallets still offer the button only for transactions that signalled.
- Child pays for parent (CPFP). Spend an output of the stuck transaction, either your change or, if you are the recipient, the payment itself, in a new transaction with a high fee. Miners evaluate the two together, so the child pulls the parent into a block.
- Wait. If it is not urgent, let it sit: fee rates rise and fall with demand, and the transaction confirms once the queue above it clears.
A transaction that expires or is evicted is not cancelled. Until its coins are spent in a confirmed transaction, the original can still be rebroadcast by anyone and mined. If you need certainty, replace it with RBF, for example with a version that sends the coins back to your own address.
How Can You See What Is in the Mempool?
Block explorers show the mempool of their own nodes. mempool.space is a popular open-source example: it shows projected blocks with their fee ranges, fee estimates in sat/vB and, when mempools fill up, the purging fee rate. Paste a transaction ID into its search box to see the transaction’s fee rate and how far it is from the next block. Its fee estimates are guides, not promises.
With your own Bitcoin Core node you can query the mempool directly:
bitcoin-cli getmempoolinfo # transaction count, total vsize, memory use, minimum fee
bitcoin-cli getrawmempool # IDs of every transaction in the mempool
bitcoin-cli getmempoolentry <txid> # fee, size and ancestors of one transaction
In the getmempoolinfo output, size is the number of transactions, bytes their total virtual size, usage the memory they take and mempoolminfee the lowest fee rate the node currently accepts (RPC reference).
Mempool vs Blockchain: What Is the Difference?
| Mempool | Blockchain | |
|---|---|---|
| Contents | Valid transactions waiting for a block | Confirmed transactions in blocks |
| Copies | Each node keeps its own, and they differ | The same chain on every node that follows it |
| Lifetime | Temporary: transactions confirm, expire or get replaced | Permanent |
| Rules | Node policy, which operators can change | Consensus rules every node enforces |
The two meet during a chain reorganization. When a block becomes stale because another branch overtook it, its transactions can go back into the mempool to wait for a new block, unless the winning chain already contains them or a conflicting spend (Bitcoin developer guide). The longest chain rule explains why such reorganizations happen.
Frequently Asked Questions
Is there one mempool for the whole Bitcoin network?
No. Each node keeps its own mempool, and the contents differ with timing, settings and policy. An explorer shows the view of its own nodes.
Can a transaction disappear from the mempool?
Yes. It can expire after two weeks, be evicted when mempools fill up, or be replaced by a version with a higher fee. Disappearing is not the same as being cancelled: until the coins are spent in a confirmed transaction, the original can still be rebroadcast and mined.
What fee rate should I pay?
Look at how much is queued above a fee rate rather than at the size of the mempool. If the lowest fee rate in the next projected block is 3 sat/vB, paying a little more should get you into it unless a rush of new transactions arrives. If you are in no hurry, a lower fee rate with the option to bump it later is cheaper.