<h2>Mempool basics</h2>
<p>When a bitcoin user wants to pay another user, they craft an announcement to the whole network. This announcement takes the form of a <em>transaction</em> which specifies the funds that are being spent and the funds to be created. It also includes proof that the message was authorized by the owner of the spent funds. These payment promises are gossiped through the network. Each node keeps track of unconfirmed transactions in their individual <em>memory pool (mempool)</em>.</p>
<p>As transactions are gossiped through the distributed network, the mempools of any two nodes generally overlap greatly (and I refer to this overlap as &quot;the mempool&quot;), but do not match exactly. Particularly, two nodes may receive transactions at different times or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge on a common state. To this end, some nodes, called <em>miners</em>, assemble sets of unconfirmed transactions and propose them as updates to the network's state. The protocol performs a perpetual distributed lottery to select one among the many proposed updates to the shared state. The winning <em>block</em> commits the transactions to the network's journal (the <em>blockchain</em>) and indicates to participants that they should update their copy of the ledger (the <em>Unspent Transaction Output set</em>).</p>
<p>The protocol limits the overall transaction data as transactions consume resources of all participants in the network. Blocks are limited to 4,000,000 weight units, and the network regulates itself by targeting a stable block interval.
On the other hand, the amount of transactions that get submitted to the network is flexible. Miners can often not include all transaction that are queued in their mempools and they pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoin to incentivize inclusion in a block. Miners generally choose the transactions that pay the highest <em>feerate</em> (fee per weight unit) to maximize their revenue.</p>
<p>Especially, when bitcoin's exchange rate makes big swings, the volatility prompts people to participate in the market. As &quot;being your own bank&quot; is a core tenet among many Bitcoin users, a lot of people do not keep funds in exchange accounts but in wallets fully controlled by themselves. This means that market moving news and price swings often prompt the creation of higher than usual transaction traffic. Once the transaction creation rate exceeds the available blockspace supply, the mempool grows quicker than transactions get confirmed.</p>
<p>Anecdotally, transaction creation seems to follow a daily and weekly cyclical pattern. Transactions pick up with the start of the business day in Europe, and slow down with the end of the business day of the US west coast. The mempool usually shrinks between those hours as the Asian markets currently do not seem to produce as much traffic. Generally, the transaction volume drops on weekends. These patterns are sometimes overshadowed by other influences such as price rallies, or slumps in the hashrate that reduce the blockspace production.</p>
<h2>Reading the mempool chart</h2>
<p>As mentioned before, each node keeps their own view of the queued transactions in the so-called memory pool (or mempool). <a href="https://jochen-hoenicke.de/queue/#0,24h" rel="noreferrer">Jochen Hoenicke's website</a> publishes mempool statistics of his own node. The website has three different graphs:</p>
<ul>
<li>Unconfirmed Transaction Count (Mempool)</li>
<li>Pending Transaction Fee in BTC</li>
<li>Mempool Size in MB</li>
</ul>
<p>All of the below charts show  the &quot;mempool size in MB&quot; from Jochen's site.</p>
<p><a href="https://i.sstatic.net/B05yf.png" rel="noreferrer"><img src="https://i.sstatic.net/B05yf.png" alt="Mempool Size in MB Oct 16th–Oct 23rd 2020" /></a></p>
<p>In the past few days, transaction creation has been exceeding transaction confirmation and more than 50 blocks worth of data have accumulated in the queue. This is about 1/3 of a day's capacity as the network targets 144 blocks per day. As users have varying urgency to see their transactions confirmed, they bid accordingly for inclusion of their transactions.</p>
<p>The colors in the graph represent different feerates. The feerate of a transaction is the ratio of fee per data amount. The higher the feerate, the more money a miner will make by including the transaction in their block.</p>
<ul>
<li>The <strong>blue bands</strong> in the bottom represent low-urgency transactions. The users may just be consolidating dust or have other reasons to prefer low cost over quick confirmation. The blue bands collect transactions in the feerates of 1–10 sat/vB.</li>
<li>The <strong>green bands</strong> in the middle consist of transactions that want to get some priority, but are unwilling to pay a premium to get confirmed as quickly as possible. These are users usually aiming to see transactions confirmed in a day or two. The green bands collect transactions in the feerates of 10-40 sat/vB.</li>
<li>The <strong>yellow (and red) bands</strong> at the top are users vying for express confirmations. They usually choose their bids to get confirmations within the next hour. These transactions could for example facilitate business deals or attempt to enter a market as quickly as possible. Yellow ranges from 40–140 sat/vB, red starts at 140 sat/vB.</li>
</ul>
<p>While the transaction creation exceeds block capacity, the mempool grows more quickly than it shrinks. New transactions attempt to skip to the front of the line to make yet a higher bid and especially get added to the top. This pushes up the top feerates.</p>
<p><a href="https://i.sstatic.net/91iV6.jpg" rel="noreferrer"><img src="https://i.sstatic.net/91iV6.jpg" alt="Growing mempool depth causes the top feerates to rise" /></a></p>
<p>Eventually, the transaction creation slows down and drops below the rate of blockspace production. The mempool starts clearing from highest feerate to lowest feerate.</p>
<p><a href="https://i.sstatic.net/5u1st.jpg" rel="noreferrer"><img src="https://i.sstatic.net/5u1st.jpg" alt="Mempool starts receding at the end of Friday" /></a></p>
<p>However, during a market frenzy or a hashrate slump, the demand for blockspace may exceed production for an extended period of time and bridge the nights and weekends which have lower blockspace demand. For example, in May after the third halving, more than 50 blocks worth of transactions amassed in the 1-2 sat/vB band (the lowest blue) when the transaction queue did not clear for over two weeks.</p>
<p><a href="https://i.sstatic.net/TNFwK.png" rel="noreferrer"><img src="https://i.sstatic.net/TNFwK.png" alt="Backlog after third halving" /></a></p>
<p>Last weekend, the mempool did not clear out either.</p>
<p><a href="https://i.sstatic.net/9y3tn.png" rel="noreferrer"><img src="https://i.sstatic.net/9y3tn.png" alt="Blockspace production did not meet demand over the weekend" /></a></p>
<p>This is by no means the worst we have seen. In the 2017/2018 winter, around the time that the Bitcoin price reached its latest all-time-high, the transaction queue never fully cleared between Oct 26th 2017 and February 22nd 2018.</p>
<p><a href="https://i.sstatic.net/vdTUS.png" rel="noreferrer"><img src="https://i.sstatic.net/vdTUS.png" alt="The 2017 fee event" /></a></p>
<p>At the peek, just before Christmas, <a href="https://blockchair.com/bitcoin/block/500546" rel="noreferrer">Block 500,546</a> collected 14.82150630 BTC for an average feerate of 1,415 sat/vB.</p>
<h2>When to send your transaction</h2>
<p>This really depends on the urgency of your transaction. If you need to make a payment that will be confirmed soon, you will need to be aware of the current queue and bid appropriately near the top. If you can choose the time of your transaction, you can either send with a lower feerate and just wait for the mempool to clear to that level, or wait for the transaction queue to recede to the levels you are willing to pay and submit your transaction then.</p>

CC BY-SA 4.0
2020-10-28T16:26:58.440Z
2020-12-03T17:19:15.320Z
2020-12-03T17:19:15.320Z
Murch
<p>I often see mempool graphs such as <a href="https://jochen-hoenicke.de/queue/#0,24h" rel="noreferrer">Jochen Hoenicke's</a> that show significant fluctuations in mempool depth and hence the fee needed to get into upcoming blocks. Can you explain some of the dynamics that are driving these variations?</p>
<p>Should I be monitoring and understanding these graphs before making a transaction if I want to choose an opportune time to broadcast a lower fee transaction?</p>
<p>I have heard it is generally better to broadcast transactions at the weekend as there is less activity on the network. Is this a good rule of thumb such that I don't need to monitor these graphs?</p>

<transaction-fees><mempool>
Can you explain some of the dynamics that drive the variations in mempool depth?
Michael Folkson
# Can you explain some of the dynamics that drive the variations in mempool depth?

(Asked by: username_0 on 2020-10-28)

I often see mempool graphs such as [Jochen Hoenicke's](https://jochen-hoenicke.de/queue/#0,24h) that show significant fluctuations in mempool depth and hence the fee needed to get into upcoming blocks. Can you explain some of the dynamics that are driving these variations?

Should I be monitoring and understanding these graphs before making a transaction if I want to choose an opportune time to broadcast a lower fee transaction?

I have heard it is generally better to broadcast transactions at the weekend as there is less activity on the network. Is this a good rule of thumb such that I don't need to monitor these graphs?

**Tags:** transaction-fees, mempool


---

## 1 answers

### Answer by username_1 on 2020-10-28. Score: 10 | Accepted answer

## Mempool basics

When a bitcoin user wants to pay another user, they craft an announcement to the whole network. This announcement takes the form of a *transaction* which specifies the funds that are being spent and the funds to be created. It also includes proof that the message was authorized by the owner of the spent funds. These payment promises are gossiped through the network. Each node keeps track of unconfirmed transactions in their individual *memory pool (mempool)*.

As transactions are gossiped through the distributed network, the mempools of any two nodes generally overlap greatly (and I refer to this overlap as "the mempool"), but do not match exactly. Particularly, two nodes may receive transactions at different times or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge on a common state. To this end, some nodes, called *miners*, assemble sets of unconfirmed transactions and propose them as updates to the network's state. The protocol performs a perpetual distributed lottery to select one among the many proposed updates to the shared state. The winning *block* commits the transactions to the network's journal (the *blockchain*) and indicates to participants that they should update their copy of the ledger (the *Unspent Transaction Output set*).

The protocol limits the overall transaction data as transactions consume resources of all participants in the network. Blocks are limited to 4,000,000 weight units, and the network regulates itself by targeting a stable block interval.
On the other hand, the amount of transactions that get submitted to the network is flexible. Miners can often not include all transaction that are queued in their mempools and they pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoin to incentivize inclusion in a block. Miners generally choose the transactions that pay the highest *feerate* (fee per weight unit) to maximize their revenue.

Especially, when bitcoin's exchange rate makes big swings, the volatility prompts people to participate in the market. As "being your own bank" is a core tenet among many Bitcoin users, a lot of people do not keep funds in exchange accounts but in wallets fully controlled by themselves. This means that market moving news and price swings often prompt the creation of higher than usual transaction traffic. Once the transaction creation rate exceeds the available blockspace supply, the mempool grows quicker than transactions get confirmed.

Anecdotally, transaction creation seems to follow a daily and weekly cyclical pattern. Transactions pick up with the start of the business day in Europe, and slow down with the end of the business day of the US west coast. The mempool usually shrinks between those hours as the Asian markets currently do not seem to produce as much traffic. Generally, the transaction volume drops on weekends. These patterns are sometimes overshadowed by other influences such as price rallies, or slumps in the hashrate that reduce the blockspace production.

## Reading the mempool chart

As mentioned before, each node keeps their own view of the queued transactions in the so-called memory pool (or mempool). [Jochen Hoenicke's website](https://jochen-hoenicke.de/queue/#0,24h) publishes mempool statistics of his own node. The website has three different graphs:

* Unconfirmed Transaction Count (Mempool)
* Pending Transaction Fee in BTC
* Mempool Size in MB

All of the below charts show the "mempool size in MB" from Jochen's site.

[![Mempool Size in MB Oct 16th–Oct 23rd 2020](https://i.sstatic.net/B05yf.png)](https://i.sstatic.net/B05yf.png)

In the past few days, transaction creation has been exceeding transaction confirmation and more than 50 blocks worth of data have accumulated in the queue. This is about 1/3 of a day's capacity as the network targets 144 blocks per day. As users have varying urgency to see their transactions confirmed, they bid accordingly for inclusion of their transactions.

The colors in the graph represent different feerates. The feerate of a transaction is the ratio of fee per data amount. The higher the feerate, the more money a miner will make by including the transaction in their block.

* The **blue bands** in the bottom represent low-urgency transactions. The users may just be consolidating dust or have other reasons to prefer low cost over quick confirmation. The blue bands collect transactions in the feerates of 1–10 sat/vB.
* The **green bands** in the middle consist of transactions that want to get some priority, but are unwilling to pay a premium to get confirmed as quickly as possible. These are users usually aiming to see transactions confirmed in a day or two. The green bands collect transactions in the feerates of 10-40 sat/vB.
* The **yellow (and red) bands** at the top are users vying for express confirmations. They usually choose their bids to get confirmations within the next hour. These transactions could for example facilitate business deals or attempt to enter a market as quickly as possible. Yellow ranges from 40–140 sat/vB, red starts at 140 sat/vB.

While the transaction creation exceeds block capacity, the mempool grows more quickly than it shrinks. New transactions attempt to skip to the front of the line to make yet a higher bid and especially get added to the top. This pushes up the top feerates.

[![Growing mempool depth causes the top feerates to rise](https://i.sstatic.net/91iV6.jpg)](https://i.sstatic.net/91iV6.jpg)

Eventually, the transaction creation slows down and drops below the rate of blockspace production. The mempool starts clearing from highest feerate to lowest feerate.

[![Mempool starts receding at the end of Friday](https://i.sstatic.net/5u1st.jpg)](https://i.sstatic.net/5u1st.jpg)

However, during a market frenzy or a hashrate slump, the demand for blockspace may exceed production for an extended period of time and bridge the nights and weekends which have lower blockspace demand. For example, in May after the third halving, more than 50 blocks worth of transactions amassed in the 1-2 sat/vB band (the lowest blue) when the transaction queue did not clear for over two weeks.

[![Backlog after third halving](https://i.sstatic.net/TNFwK.png)](https://i.sstatic.net/TNFwK.png)

Last weekend, the mempool did not clear out either.

[![Blockspace production did not meet demand over the weekend](https://i.sstatic.net/9y3tn.png)](https://i.sstatic.net/9y3tn.png)

This is by no means the worst we have seen. In the 2017/2018 winter, around the time that the Bitcoin price reached its latest all-time-high, the transaction queue never fully cleared between Oct 26th 2017 and February 22nd 2018.

[![The 2017 fee event](https://i.sstatic.net/vdTUS.png)](https://i.sstatic.net/vdTUS.png)

At the peek, just before Christmas, [Block 500,546](https://blockchair.com/bitcoin/block/500546) collected 14.82150630 BTC for an average feerate of 1,415 sat/vB.

## When to send your transaction

This really depends on the urgency of your transaction. If you need to make a payment that will be confirmed soon, you will need to be aware of the current queue and bid appropriately near the top. If you can choose the time of your transaction, you can either send with a lower feerate and just wait for the mempool to clear to that level, or wait for the transaction queue to recede to the levels you are willing to pay and submit your transaction then.


---

