What is a mempool?

A mempool – shorthand for memory pool – is a holding room for all unconfirmed transactions a node can see on the Bitcoin network.

How does it work?

Bitcoin transactions are sent through a network of peered connections, called nodes. Each node has its own pool of unconfirmed transactions sent to it by other attached peers. Nodes validate or invalidate transactions on a few criteria including a correct cryptographic signatures, if funds are double spent or if the amount if inputs is greater than the amount of outputs.

Valid and invalid transactions are then broadcast to other nodes nearby. Valid transactions are picked up by mining nodes to be packaged in a block after a sufficient number of nodes have propagated the valid transaction throughout the network. Nodes drop invalid transactions from their mempools when told to do so by their peers.

The mempool can be measured in a number of ways, but is typically done by fee-per-byte or satoshis per byte (sats/byte). As an on-chain market, the mempool ebbs and flows with demand for blockspace.

Look at a live snapshot of the mempool

How do miners use it?

Miners maintain many peer connections than a typical node. In other words, miners have larger mempools than a typical node. Transactions with higher fees are typically picked out of the mempool by miners and packaged into blocks faster than those with lower fees.

Read: What is a mining node?

Finding a new block happens roughly every 10 minutes. Historically, that has proven a low enough threshold for nodes to propagate transactions around the network and update their mempools before a valid transaction is packaged in a block.

Was this article helpful? If you still have questions, join the Compass Mining community to chat with our team and other mines. Or email media@compassmining.io with feedback or for more information.