The famous Bitcoin expert Andreas Antonopoulos has published on Twitter a sort of mini-guide on how to avoid high commissions on BTC transactions.
During times of extreme market excitement, the capacity of Bitcoin gets strained. That means that Bitcoin transactions become expensive and slow. Some may even become "stuck". Here's what to do…
— Andreas (aantonop) (@aantonop) November 30, 2020
In fact, as Antonopoulos points out, during periods of euphoria the capacity of the Bitcoin network is heavily strained, resulting in congestion and slow and expensive transactions.
The first step he suggests to do is to monitor the congestion level of the network.
In fact, when a BTC on-chain transaction is sent, it does not immediately end up in the blockchain, but in the so-called Mempool.
The Mempool is nothing more than the list of transactions in the queue, waiting to be placed in a block and confirmed.
The suggested tool is the chart called “Johoe’s Bitcoin Mempool Size Statistics“, which shows minute by minute not only the amount of queued transactions but also breaks them down by fee range, expressed in sat/B (i.e. Satoshi per Byte).
It’s important to bear in mind that there are generally about 2,500 transactions in each block, so it’s enough that there are less than this amount plus a certain level of fee to be almost certain that if you fall within that level of fee, you can have a transaction confirmed in the next block.
Note that a new block is usually mined every 10 minutes or so, so for example, if it takes three blocks before a transaction is confirmed, you will need to wait about 30 minutes.
How to check fees on Bitcoin: Andreas Antonopoulos’ advice
Furthermore, miners clearly choose to include transactions with higher fees in their blocks, so inevitably transactions with higher fees are more likely to be included in one block before the others.
Antonopoulos notes that different types of transactions have different sizes in Bytes, depending on the complexity, the number of input/outputs and the type of address spent, but that generally speaking a typical transaction with one input and two outputs weighs about 144B.
In reality, some wallets do not allow setting the fees at will, so in those cases, the only thing to do is to wait for a moment of low congestion.
Moreover, in the case of wallets that allow to set them, “legacy” addresses starting with “1” are those that require heavier, and therefore expensive, transactions, while SegWit addresses starting with “3”, or native SegWit addresses starting with “bc1” are the best.
It is even better to use wallets that support the “bumping” of the fees, i.e. the possibility to attempt with a low rate, and then eventually increase it in case of excessive slowness.
In case of too low fees, the transaction might not be confirmed, although in that case BTC would not be lost, they would simply go back to the sender, and the transaction would in fact be cancelled. If the network remains congested for a long time, it may take up to 14 days before the transaction is cancelled and the BTC go back, but usually only 2 or 3 days.
However, as long as a transaction is pending, BTC sent with that transaction are effectively blocked.
So it’s important to choose a wallet that allows for SegWit addresses, to set fees as desired, and to be able to change them while the transaction is still pending.