Every Bitcoin transaction goes through the mempool before it is confirmed. During quiet periods, the mempool is nearly empty and transactions confirm within the next block or two. During busy periods, the mempool can swell to hundreds of thousands of transactions, fee rates spike, and low-fee transactions can sit unconfirmed for hours or days. Understanding how the mempool works explains why Bitcoin fees are not fixed, why transactions sometimes appear stuck, and what you can do about it.
"Mempool" is short for memory pool. It is not a single place - every Bitcoin node maintains its own local mempool. When a new transaction is broadcast to the Bitcoin network, it propagates from node to node, and each node that receives and validates it adds it to its own mempool.
The mempool is stored in RAM, not on disk. This is why it is called a "memory" pool - the data is held in fast temporary memory, not written to the blockchain. It is also why the mempool is not perfectly synchronized across all nodes. Different nodes have different mempools depending on which transactions have reached them, what limits their node software sets on mempool size, and what transactions they have already rejected or evicted.
The purpose of the mempool is to act as a buffer. Bitcoin blocks are produced roughly every 10 minutes and have limited capacity. The mempool absorbs incoming transaction demand and holds transactions until block space is available to confirm them.
Bitcoin can confirm roughly 3,000-4,000 transactions per block, and a new block is produced approximately every 10 minutes. That gives the network a throughput ceiling of about 5-7 transactions per second under normal conditions. When demand exceeds that ceiling, transactions queue up in the mempool faster than they are confirmed.
When this happens, fees spike. Senders who need fast confirmations bid up their fee rate to outcompete everyone else in the mempool queue. Fee rates are measured in satoshis per virtual byte (sat/vbyte). During normal periods, a fee of 2-10 sat/vbyte is sufficient. During peak congestion, fees can spike to 100, 200, or even 500+ sat/vbyte.
Common triggers for mempool congestion:
Several public tools let you see the real-time state of the Bitcoin mempool before deciding on your fee:
Most modern Bitcoin wallets also display a fee estimate and let you select between priority tiers (fast, standard, economy) based on current mempool conditions. The wallet queries the mempool state and recommends an appropriate fee rate for your desired confirmation time.
If you send a transaction with a fee that turns out to be too low, there is a mechanism to rescue it: Replace-by-Fee (RBF). RBF allows you to rebroadcast the same transaction with a higher fee, effectively replacing the stuck version in the mempool.
How RBF works:
If the original transaction was not marked as RBF-eligible, nodes may refuse the replacement. In that case, another option is CPFP (Child Pays for Parent) - where the recipient creates a new transaction spending the stuck unconfirmed output with a very high fee, incentivizing miners to confirm both the parent and child transaction together in the same block.
Mempool dynamics are a real-time auction. The mempool is not a first-in, first-out queue - it is a fee-rate-sorted priority queue. Understanding this means you can make informed decisions about fees: paying more when you need speed, and saving money during off-peak hours when block space is plentiful.
Bitcoin From Scratch covers the mempool, transactions, mining, and the full technical picture of how Bitcoin works - through 34 3D animated lessons built for beginners.
Get Bitcoin From Scratch - $97The Bitcoin mempool (memory pool) is the holding area on each Bitcoin node where unconfirmed transactions wait before being included in a block. When you broadcast a Bitcoin transaction, it does not go directly into a block - it first enters the mempool on every node that receives it. Miners then pull transactions from the mempool to build the next block, and once a transaction is confirmed in a block, it is removed from the mempool.
Most transactions confirm within the next few blocks (10-30 minutes) if the fee is appropriate for the current network conditions. Transactions with very low fees can sit in the mempool for hours, days, or even weeks during high congestion. Most Bitcoin nodes automatically drop transactions from their local mempool after 336 hours (14 days) if they remain unconfirmed. A dropped transaction is not permanently gone - the inputs become spendable again and the transaction can be rebroadcast with a higher fee.
A stuck Bitcoin transaction almost always means the fee per vbyte was too low for current network conditions. Miners fill each block with the highest-fee transactions first - if your fee is lower than what other senders are offering, your transaction waits at the back of the line. During busy periods, this can mean your transaction stays unconfirmed for a long time. The fix is either to wait for congestion to ease, or to use Replace-by-Fee (RBF) to rebroadcast the transaction with a higher fee.
Mempool congestion happens when the number of pending transactions exceeds what miners can confirm in a reasonable number of blocks. Common causes include: bull market price surges bringing large transaction volumes, popular inscription activity competing for block space, exchange mass withdrawals, and periods following a halving when miner fee revenue becomes more important. During congestion, fees spike as senders compete to have their transactions prioritized.
Miners are economically incentivized to maximize revenue from each block. They sort pending mempool transactions by fee rate - the fee paid per virtual byte (sat/vbyte) of transaction data. Higher fee-rate transactions generate more revenue per unit of block space, so miners fill blocks from the top of this sorted list downward until the block is full. This is why paying a higher fee rate gets your transaction confirmed faster - it moves you higher in the priority queue.