Skip to main content
Removed some needless words, added some that were missing
Source Link
Murch
  • 77.8k
  • 35
  • 190
  • 641

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 inat different times or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge toon a common state. To this end, some nodes, called miners, groupassemble 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).

AsThe protocol limits the overall transaction data as transactions consume resources of all participants in the network, the protocol limits the overall transaction data. Blocks are limited to 4,000,000 weight units, and the network regulates itself toby targeting a roughly constantstable block interval. On the other hand, the amount of transactions that get submitted to the network is flexible. Often, miners cannotMiners can often not include all transaction that are queued in their mempool. In that case,mempools and they have to pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoinsbitcoin to incentivize inclusion in a block. Naturally, the minersMiners 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 seem to 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.

All of the below will only refer to the third chartcharts show the "mempool size in MB" from Jochen's site.

For example, inIn the past few days, transaction creation has been exceeding transaction confirmation and more than 50 blocks worth of data have accumulated in the queue. Since usually about 144 blocks are found per day, thisThis 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 blue bands in the bottom represent low-urgency transactions. The users may for example 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.

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

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.

And lastLast weekend, the mempool did not clear out either.

This really depends on the urgency of your transaction. If you need to make a payment that iswill be confirmed soon, you will need to be aware of the current queue, but you are also unlikely to have and bid appropriately near the luxury to make your payment at a later timetop. 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.

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 in different times or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge to a common state. To this end, some nodes, called miners, group 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).

As transactions consume resources of all participants in the network, the protocol limits the overall transaction data. Blocks are limited to 4,000,000 weight units, and the network regulates itself to a roughly constant block interval. On the other hand, the amount of transactions that get submitted to the network is flexible. Often, miners cannot include all transaction that are queued in their mempool. In that case, they have to pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoins to incentivize inclusion in a block. Naturally, the miners 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 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 seem to 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.

All of the below will only refer to the third chart.

For example, 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. Since usually about 144 blocks are found per day, this is about 1/3 of a day's capacity. As users have varying urgency to see their transactions confirmed, they bid accordingly for inclusion of their transactions.

  • The blue bands in the bottom represent low-urgency transactions. The users may for example 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.

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

However, during a market frenzy or a hashrate slump, the demand for blockspace may exceed production for an extended period 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.

And last weekend, the mempool did not clear out either.

This really depends on the urgency of your transaction. If you need to make a payment that is confirmed soon, you will need to be aware of the current queue, but you are also unlikely to have the luxury to make your payment at a later time. 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.

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.

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

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 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.

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

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.

Last weekend, the mempool did not clear out either.

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.

added 88 characters in body
Source Link
Murch
  • 77.8k
  • 35
  • 190
  • 641

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 in different orderstimes or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge to a common state. To this end, some nodes, called miners, group a setsets of unconfirmed transactions and propose them as an updateupdates 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).

As transactions consume resources of all participants in the network, the protocol limits the overall transaction data. Blocks are limited to 4,000,000 weight units, and the network regulates itself to a roughly constant block interval. On the other hand, the amount of transactions that get submitted to the network is flexible. Often, miners cannot include all transaction that are queued in their mempool. In that case, they have to pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoins to incentivize inclusion in a block. Naturally, the miners choose the transactions that pay the highest feefeerate (fee per weight unit) to maximize their revenue.

Especially, when the pricebitcoin'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 participantsusers, 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 higher than usual transaction amountstraffic. 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 seem to 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 quite as much traffic. Generally, the transaction volume drops on weekends. These patterns are sometimes overshadowed by other influences such as price rallies, or a slumpslumps in the hashrate that reducesreduce the blockspace production.

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 transactions in their individual memory pool (mempool).

As transactions are gossiped through the distributed network, the mempools of any two nodes generally overlap greatly, but do not match exactly. Particularly, two nodes may receive transactions in different orders or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge to a common state. To this end, some nodes, called miners, group a set unconfirmed transactions and propose them as an update 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).

As transactions consume resources of all participants in the network, the protocol limits the overall transaction data. Blocks are limited to 4,000,000 weight units, and the network regulates itself to a roughly constant block interval. On the other hand, the amount of transactions that get submitted to the network is flexible. Often, miners cannot include all transaction that are queued in their mempool. In that case, they have to pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoins to incentivize inclusion in a block. Naturally, the miners choose the transactions that pay the highest fee per weight unit to maximize their revenue.

Especially, when the price makes big swings, the volatility prompts people to participate in the market. As "being your own bank" is a core tenet among many Bitcoin participants, 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 higher than usual transaction amounts. Once the transaction creation rate exceeds the available blockspace, the mempool grows quicker than transactions get confirmed.

Anecdotally, transaction creation seems to follow a daily and weekly pattern. Transactions seem to 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 quite as much traffic. Generally, the transaction volume drops on weekends. These patterns are sometimes overshadowed by other influences such as price rallies, or a slump in hashrate that reduces the blockspace production.

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 in different times or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge to a common state. To this end, some nodes, called miners, group 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).

As transactions consume resources of all participants in the network, the protocol limits the overall transaction data. Blocks are limited to 4,000,000 weight units, and the network regulates itself to a roughly constant block interval. On the other hand, the amount of transactions that get submitted to the network is flexible. Often, miners cannot include all transaction that are queued in their mempool. In that case, they have to pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoins to incentivize inclusion in a block. Naturally, the miners 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 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 seem to 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.

Source Link
Murch
  • 77.8k
  • 35
  • 190
  • 641

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 transactions in their individual memory pool (mempool).

As transactions are gossiped through the distributed network, the mempools of any two nodes generally overlap greatly, but do not match exactly. Particularly, two nodes may receive transactions in different orders or even have conflicting information altogether. The network needs a mechanism to resolve conflicting information among participants and converge to a common state. To this end, some nodes, called miners, group a set unconfirmed transactions and propose them as an update 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).

As transactions consume resources of all participants in the network, the protocol limits the overall transaction data. Blocks are limited to 4,000,000 weight units, and the network regulates itself to a roughly constant block interval. On the other hand, the amount of transactions that get submitted to the network is flexible. Often, miners cannot include all transaction that are queued in their mempool. In that case, they have to pick which (valid) transactions to include. Each transaction offers miners a small amount of bitcoins to incentivize inclusion in a block. Naturally, the miners choose the transactions that pay the highest fee per weight unit to maximize their revenue.

Especially, when the price makes big swings, the volatility prompts people to participate in the market. As "being your own bank" is a core tenet among many Bitcoin participants, 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 higher than usual transaction amounts. Once the transaction creation rate exceeds the available blockspace, the mempool grows quicker than transactions get confirmed.

Anecdotally, transaction creation seems to follow a daily and weekly pattern. Transactions seem to 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 quite as much traffic. Generally, the transaction volume drops on weekends. These patterns are sometimes overshadowed by other influences such as price rallies, or a slump in hashrate that reduces 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 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 will only refer to the third chart.

Mempool Size in MB Oct 16th–Oct 23rd 2020

For example, 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. Since usually about 144 blocks are found per day, this is about 1/3 of a day's capacity. 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 for example 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

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

Mempool starts receding at the end of Friday

However, during a market frenzy or a hashrate slump, the demand for blockspace may exceed production for an extended period 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

And last weekend, the mempool did not clear out either.

Blockspace production did not meet demand over the weekend

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

At the peek, just before Christmas, Block 500,546 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 is confirmed soon, you will need to be aware of the current queue, but you are also unlikely to have the luxury to make your payment at a later time. 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.