You may have noticed these past weeks that Bitcoin transaction fees were particularly high compared to the earlier part of the year. This is due to a surge in Bitcoin transactional activity compounded by inefficient miners leaving the network post-halving, causing blocks to be mined slower than normal. This has lead to an excessive number of transactions waiting to be included in the next block.
The above scenario effectively shows that Bitcoin is working as intended because rising transaction fees demonstrate the efficiency of the fee market. As explained in the last BTSE Academy article on Bitcoin transaction fees, these fees are an essential part of the Bitcoin ecosystem. They guarantee that miners will continue to provide the necessary proof-of-work to secure Bitcoin once the mining subsidy (currently at 6.25 bitcoins per block) becomes insignificant.
Therefore, each Bitcoin user must be prepared for rising Bitcoin transaction fees, as expensive fees will become the norm sooner or later. Without the proper preparations, this could hurt your satoshi balance in the next Bitcoin bull run. Historically, the largest percentage of the total transactional fees paid to miners were paid in only a few months of the eleven years of Bitcoin existence.
You can easily prepare for rising transaction fees. In fact, you should optimize your Bitcoin tools and setup to do so any time you see Bitcoin fees dip.
This week’s article includes a non-exhaustive list of actions you can take in order to reduce your fees to a minimum. You can thank us later for the saved satoshis! The savings might not look significant today, but they will as the world wakes up to the Bitcoin standard.
Tip #1: Understand How the Mempool Works!
The Bitcoin mempool is like a giant virtual auction house where countless participants present bitcoins transactions to be selected and included in the next block by the miners.
Each transaction has an associated transaction fee (denominated in sat/vbytes) and is awaiting to be selected in the next block. Obviously, the limited space of the block means that the miner who finds a valid block is likely to only include the transactions that offer the highest transaction fees, while other transactions may remain pending.
In order to save on transaction costs and not overpay, you should understand exactly how the mempool works so you always pay the lowest minimal fee. In order to do so, we suggest consulting one of the Bitcoin mempool graphics out there. We certainly recommend the one developed by @softsimon_, @wiz and @markjborg, found here, as it is visually appealing and customizable.
Here is a snapshot of a graphical representation of the mempool at the time of writing the 18th of May 2020. It may seem daunting at first but after some explanation you will see it’s not that complicated.
In the legend on the left, you have different transaction cost denominations in sats/vbytes starting from 1 sat/vbyte up to 350+ sats/vbyte. They each have a different color and are stacked one on top of the other depending on the size of the fee per vbyte (amount of data being conveyed in a transaction). In the vertical axis, we have an indication of the size of the sum of all the pending transactions accumulated in the mempool, waiting to be included in the next block. As you can see at the time of writing, the transactions sum up to a staggering size of 75 MvB. The problem is that a singular Bitcoin block has only 1 MvB of space, which is represented by the white dotted line at the bottom of the graphic. Only the transactions that have associated fees that are below the white dotted line have a chance to be included in the next block.
If this is hard to read, you have the option to deselect the low fee layers at the top in order to pinpoint exactly how much in fees you should associate with your transaction. After trimming the graphic up until you clearly see the white dotted line, its telling you that in order to be certain to be included in the next block, you should apply a transaction cost between 150 to 175 sats/vbyte, since the previous cost layer (125 sat/vbyte) goes over the white dotted line.
If you are in a hurry and want to be included in the next block while paying the minimum fee you should follow this technique in order to do so. Obviously, if you are not in a hurry, you can set a much lower fee and the transaction will eventually be selected when the mempool decongests (if ever).
Tip #2 Use Wallets that support Segwit and RBF (Replace-by-Fee)
In recent years, several protocol implementations have optimized the use of Bitcoin by making transactions more compact and light in terms of the space they take up in a block. One of these famous implementations, which was at the heart of great debates during the Bitcoin scalability wars in 2017, is called Segwit. The technical complexity of the implementation exceeds the objective of this article. Simply put, this technique allows you to extract part of the information from a standard transaction and transfer it to a new section called "Witness". Segwit, therefore, makes it possible to reduce the size that a transaction takes in a block and consequently reduces the transaction costs associated with it. You can save anywhere between 26 and 52% in fees depending on the nature of your transaction. The address format resulting from this implementation is called bech32 and Segwit addresses will start with the characters bc1.
RBF is an acronym meaning “Replace by Fee”. It is a practical tool which allows you to modify the cost of a transaction that you have already initiated and which is pending in the mempool. If the transaction is still pending and isn’t included quickly enough for you, you can increase the fee paid to speed up the process of being selected by a miner. You have the choice of always paying a minimal fee without worrying that your transaction remains blocked for hours by being able to increase the fee paid when necessary.
Not all wallets offer these features. To check if your favorite wallet supports these or if you are looking for a wallet, check out this Bitcoin software wallet analysis by Veriphi.
Tip #3: Use Transaction Batching
This technique is especially useful for users making multiple payments. Imagine the following scenario: you just got home after grocery shopping and it’s time to empty your car trunk. You could empty it out one bag at a time, making you do multiple trips back and forth and using up more of your energy. Instead, what you could do is take everything at once and optimize your trip to bringing the goods inside your house and save yourself time and energy.
This concept can be transposed when it comes to making bitcoin transactions. You could either pay fees for every singular payment you make, or you can save by putting multiple recipients into one transaction.
Fees paid are determined based on the amount of data our transactions use, so the larger the transaction, the more we pay. The input (what you’re spending) of your transaction accounts for about 65% of the transaction size. The output of a transaction (the instructions for spending) accounts for about 30%. By putting together multiple payments outputs in a single transaction, we are only increasing the total size of the transaction by every incremental output. That means that instead of paying ten times the fees for 10 separate transactions, you’d only pay a quarter of that amount by batching them.
Tip #4: Use Layered Scaling Solutions
While it is beyond the scope of this article, many have been hard at work building protocols which allow for Bitcoin transactions to be executed quickly with minimal fees. With every solution there can often be tradeoffs (there's no such thing as free lunch, after all), but if you are allocating funds for the purpose of speed and efficiency we recommend you read our posts on the Lightning Network and the Liquid Network.
The aforementioned are some practical tools you can use in your Bitcoin transactions. We hope enacting these techniques will help you save more sats. By thinking ahead and preparing today, you'll be better suited to navigate your utilization of Bitcoin well into the future. The savings achieved with these methods can seem small at the moment, but your future self will be thankful to have conserved those extra sats.
If you have any feedback on this or any other topic, please feel free to reach out to us at any time at email@example.com or @BTSEcom on Twitter. We always love to hear from our amazing BTSE community.