Those familiar with Bitcoin and who visit mempool.space won't be surprised to see that many blocks contain transactions where users paid less than 1 sat/vByte in fees. It is now possible to pay as low as 0.10 sat/vByte, while for a long time, the bottom threshold was 1 sat/vByte.
People who run their own nodes and use Bitcoin Core can easily adjust a few settings to enable their software to support and relay transactions to other peers at such low fees. However, ordinary users don't run their own nodes, so they need another solution. Two popular wallets that support sub 1 sat/vByte transactions are
Trezor Suite and
Electrum. Sparrow Wallet and Blue Wallet have announced their support for future releases.
How to send a bitcoin transaction and pay less than 1 sat/vByte with Trezor Suite?Owners of Trezor hardware wallets can create and sign transactions that pay less than 1 sat/vByte in fees using Trezor Suite. There are two very similar ways to do that. I will describe the one that worked for me, but
this link has an alternative that you can try if you want. Please note that this alternative method did not work for me.
1. Create a transaction the normal way. Enter the address you are sending bitcoin to, the amount you are sending, and the fee you wish to pay (eg, 0.3 sat/vByte).
2. Above the field where you entered the destination address, you will see the option "Broadcast". Click on it to change it to "Broadcast: off."
3. You will notice that you can't click on the "Sign" button yet.
4. Click on the three dots in the upper right corner of Trezor Suite and click on "Send raw".
5. A new window will pop up.
6. When it opens, close it again without entering anything.
7. After closing the window, it will be possible to click on the "Sign" button to sign your transaction. You may have to open and close the window two or three times to make the "Sign" button clickable.
8. Sign the transaction by clicking "Sign."
9. After signing the transaction, a "Copy raw transaction" button will appear.
10. Click on "Copy raw transaction."
11. Paste the signed and still non-broadcast transaction that you copied on
https://mempool.space/tx/push into the "Broadcast Transaction" field.
12. Click the "Broadcast Transaction" button.
13. The transaction ID of the broadcasted transaction you sent will appear on screen. You can use this ID to track the status of your transaction.
How to send a bitcoin transaction and pay less than 1 sat/vByte with Electrum?Electrum wallet can send bitcoin transactions with fees lower than 1 sat/vByte if you are connected to a node that supports such transactions, and after entering one line of code in the Electrum console. Below are instructions on how to set this up.
1. Open Electrum and the wallet from which you want to send a sub 1 sat/vByte transaction.
2. Click on the orb in the lower right corner of the app to change network settings.
3. If you have not previously changed the method of connecting to Electrum servers, Electrum will randomly select one and connect to it. You need to change that by clicking on the "Connection mode" field and choosing "Manual server selection."
4. After that, click on "Close."
5. Click again on the orb in the lower right corner to adjust network settings.
6. In the "Server" field, copy/paste the following server:
electrum.labrie.ca and click "Close." Electrum will then connect to this server. You can also connect to LoyceV Electrum server,
electrum.loyce.club if you wish.
7. If the "Console" tab is not visible in your Electrum app, you need to activate it by clicking "View > Console" in the upper left corner of the software.
8. After you have connected to the appropriate server, click on the "Console" tab and copy/paste the following command:
wallet.relayfee = (lambda: 0) and click ENTER. You need to enter this command every time you want to send a transaction with fees lower than 1 sat/vByte until this becomes the standard and is merged into an official Electrum release. TryNinja made his own plugin that includes this command when you start Electrum. You can also install it if you want, using the instructions
in this post.
9. When you're done, create your transaction in Electrum and send it. With Electrum, you also have an option to copy a raw transaction and broadcast it via the mempool.space page as I explained in step #11 above. To do this, you first need to sign the transaction in Electrum and then click the buttons "Preview > Share > Copy to clipboard." Paste the copied string on the page
https://mempool.space/tx/push.
How to send a bitcoin transaction and pay less than 1 sat/vByte with Sparrow Wallet?The 2.2.4 pre-release beta version of Sparrow Wallet supports sending transactions that pay less than 1 sat/vByte in fees. However, the user must configure the
minrelaytxfee option in their server settings to support lower-fee transactions or be connected to a node that has this setting adjusted.
1. Download the 2.2.4 beta version of Sparrow Wallet from
https://github.com/craigraw/beta/releases/tag/2.2.4-support-minrelaytxfee.
2. Connect to a server that has changed the minrelaytxfee setting or make the changes yourself in your bitcoin.conf file. Fee settings can also be changed by "
editing the Sparrow config file in Sparrow home and changing the value of minRelayFeeRate to a value >= 0.0 and < 1.0."
If the server you are connected to isn't configured correctly, you will get a broadcast error.
I intend to expand this thread and add to the list the procedure for sending sub 1 sat/vByte transactions with Sparrow and Blue wallets in the future if needed. I will only do that if it's a non-standard way of sending transactions.