Author

Topic: Minimize your transaction fee with Electrum wallet (Read 365 times)

legendary
Activity: 2310
Merit: 4085
Farewell o_e_l_e_o
I notice some irregularities in fees from your images, which I segregated each in a quote and simplified them further. It seems that these errors appeared across most of the images. My assumption is that they could be attributed to either internet connectivity or a potential bug in the version of Electrum you are using.
It is like a bug and I noticed it too.

The brown color appeared when I changed the estimation option around and scroll the slider left and right. It appeared when you don't have enough satoshi to pay the transaction fee. I guess it comes from inaccuracy of transaction value is not subtracted transaction fee correctly. You can see the transaction value is not correct from transaction size x fee rate too. It is like a bug on that day  Cheesy

I remember in previous versions, Electrum has an option to subtract transaction fee like in Bitcoin Core. In this version, it no longer exists to choose.

I am not sure why it happened as today it works well.
hero member
Activity: 1106
Merit: 912
Not Your Keys, Not Your Bitcoin
I notice some irregularities in fees from your images, which I segregated each in a quote and simplified them further. It seems that these errors appeared across most of the images. My assumption is that they could be attributed to either internet connectivity or a potential bug in the version of Electrum you are using.
The three transaction fee rates are not well displayed when you change between the mining fee;

Let's take a look at the fees from ETA images

ETA
What does ETA means? It is Estimate Time of Arrival. It means something. It is only estimation of arrival time or first confirmation time for your transaction.

*If transactions fee= size*rate;
Input(s)=450
fee rate=44

Transaction fee becomes= 44*450=19800 sats; that's equivalent to 0.000198 BTC, the fee on the first image is correct.

Quote

*If transactions fee= size*rate;
Input(s)=450
fee rate=106.3

The transaction fee becomes= 106.3*450=47835 sats; that's equivalent to 0.00047835 BTC, the fee on the second image is wrong.



Let's take a look at the fees from Mempool images

Quote

Mempool
Mempool is an option which gives you information in how many waiting blocks for your first confirmation, such as within next 1-2 blocks, next 10 blocks, 25 blocks, etc.
It is a better option than ETA. You will have less likely overpay fee for your transaction.

*If transactions fee= size*rate;
Input(s)=481
fee rate=14.5

Transaction fee becomes= 14.5*481=6974 sats; that's equivalent to 0.00006974 BTC, the fee on the first image is correct.

Quote

*If transactions fee= size*rate;
Input(s)=481
fee rate=135.7

The transaction fee becomes= 135.7*481=65271 sats; that's equivalent to 0.00065271 BTC, the fee on the second image is wrong.

Quote

*If transactions fee= size*rate;
Input(s)=481
fee rate=103.1

Transaction fee becomes= 103.1*481=49591 sats; that's equivalent to 0.00049591 BTC, the fee on the third image is wrong.


Quote

*If transactions fee= size*rate;
Input(s)=481
fee rate=35.4

Transaction fee becomes= 35.4*481=17027 sats; that's equivalent to 0.00017027 BTC, the fee on the fourth image is correct.




Let's look at the fees on the static fee rate.

Quote

Static
This option is useful when you comprehensively know what you are doing. It is helpful when you only make your transactions when mempool drops to your favorite fee rate.
When you use this option, with your experience and mempool observation, you won’t overpay fee for sure.

*If transactions fee= size*rate;
Input(s)=481
fee rate=30

Transaction fee becomes= 30*481=14430 sats; that's equivalent to 0.0001443 BTC, the fee on the first image is correct.

Quote

*If transactions fee= size*rate;
Input(s)=481
fee rate=100

Transaction fee becomes= 100*481=48100 sats; that's equivalent to 0.000481 BTC, the fee on the second image is wrong.
Clearly looking at the USD value, you will notice they are the same, they didn't change even when you increased the sats in each transaction.
full member
Activity: 1489
Merit: 150
However, this thread objective is mainly for 3 options for fee estimation in Electrum wallet. What is the best if you have to pick one as your default option and naively base on it for your transaction fee. It's a Mempool option.

I checked it yesterday and again, Mempool option is the best.

for me, even if the mempool option is the best, i would prefer to set the fee by myself by looking at the mempoolspace first and then use the low/medium priority for my transaction.
because in your screenshot above you are using 15.2 sat/byte which means it will take 1/2 day to get a confirmation block.
legendary
Activity: 2310
Merit: 4085
Farewell o_e_l_e_o
However, you could have missed out one of the tools that was created by one of our dedicated members, bitmover who has taken his time to make sure certain access to on-chain data and tasks can be simplified  Wink

I found this tool very fascinating - https://bitcoindata.science/plot-your-transaction-in-mempool.html it comes in handy for those who have no access to the desktop version of electrum.
I knew about bitmover's tool and used it too but I forgot to mention it as in my memory, that site is under rebuilding process. Thanks.

I will do the same thing as you if fees are high, but will consolidate the inputs if fees are low.
Assuming the network isn't congested and the fee rate of 1 sat/vbyte is enough, with using 1 UTXO instead of all 4 UTXOs, you save around 200 satoshi, but you will still have 4 UTXOs after your transaction and this may cause you to have to pay high fee for your next transactions.
When the network isn't congested and you can make transaction with the fee rate of only 1 sat/vbyte, it's better to use all the UTXOs, even if one of them is enough for making a payment.
I knew about consolidation and how good it is as a preparation for times when transaction fee becomes more expensive later.

However, this thread objective is mainly for 3 options for fee estimation in Electrum wallet. What is the best if you have to pick one as your default option and naively base on it for your transaction fee. It's a Mempool option.

I checked it yesterday and again, Mempool option is the best.
legendary
Activity: 2380
Merit: 5213
For example, right now, in my signature campaign address, I have 4 unspent outputs(0.0015, 0.004, 0.005, 0.005). I tried to send 0.001 BTC in normal mode without selecting any coins(inputs) and the fee with 1 sat/byte was a total of 400 sats. It's because it was either taking all the unspent output as input or most of them while with my first UTXO, I could send 0.001 BTC. In that case, there would be only 1 input. I tried and it was asking for a fee of 200 sats in total.
I will do the same thing as you if fees are high, but will consolidate the inputs if fees are low.
Assuming the network isn't congested and the fee rate of 1 sat/vbyte is enough, with using 1 UTXO instead of all 4 UTXOs, you save around 200 satoshi, but you will still have 4 UTXOs after your transaction and this may cause you to have to pay high fee for your next transactions.
When the network isn't congested and you can make transaction with the fee rate of only 1 sat/vbyte, it's better to use all the UTXOs, even if one of them is enough for making a payment.
copper member
Activity: 2198
Merit: 1837
🌀 Cosmic Casino
Great guide

However, you could have missed out one of the tools that was created by one of our dedicated members, bitmover who has taken his time to make sure certain access to on-chain data and tasks can be simplified  Wink

I found this tool very fascinating - https://bitcoindata.science/plot-your-transaction-in-mempool.html it comes in handy for those who have no access to the desktop version of electrum. Mobile version has very limited features.

ANN: UPDATED - Plot your transaction in the mempool
legendary
Activity: 2310
Merit: 4085
Farewell o_e_l_e_o
I can confirm this because I figured it out a long way back and since that I only used the mempool feature to pick the transaction fee for all of my transaction via Electrum wallet but they do give inaccurate fee too because of sudden change in the network but the wallet isn't picked it up so we have to go back and set the amount we want to send to find the required fee at the moment.
You can only Electrum gives you inaccurate fee estimation if it is considerable different than real data from mempool at the same time.

Mempool can change a lot when more people broadcast their new transactions to mempool so if you get information from Electrum and mempool at two far time points, difference should be big and in this case, maybe you are wrong, not Electrum.

I think that mempool.space is the best option
It is good for Bitcoin users who are not familiar with mempool to start with. Later, they can use a more advanced website, https://jochen-hoenicke.de/queue/#BTC%20(default%20mempool),8h,weight

Sorry but it's kinda off-topic, I think it's good for them to remind after making such a transaction you can use a free Bitcoin transaction accelerator.  I used ViaBTC to rebroadcast my transaction and put it on priority on the mempool.  It has a limit of 100 transactions per hour.  This contributes to making faster your transaction even if you set it a low-priority fee per bytes based on the mempool status.
ViaBTC has two conditions for free tx accelerator so you must self-check your transaction with those conditions first. You might need to bump your fee rate to their minimal one before submit your transaction to their tx accelerator.
  • The volume of a single transaction must be ≤0.5 KB
  • The transaction fee rate should be ≥ 0.0001 BTC/KB.

For reducing transaction size, you have other ways too but it doesn't apply all the time.
Transaction fees change with time and are not cheap forever for consolidations.

Quote
Consolidating the inputs when the fee is low is a very great solution but in case, if you miss doing so, you can try spending different UTXO in case you want to send a small amount.
I know. More details from [Guide] Wait for opportunity to Consolidate your small inputs and notification when fees are low enough for consolidation.

Quote
You can only use this option in Desktop wallet, not in android app.
Electrum wallet censors some features on its wallet for Android, security-wise likely.
legendary
Activity: 2534
Merit: 1233
And Electrum wallet isn't the only Bitcoin wallet that has an adjustable transaction fee, I use Trust wallet and you can also easily adjust your transaction fee in this wallet for Bitcoin..
Yeah right, and I think even closed-source wallets can be modified the transaction fee manually aside from open-source wallets.
When doing a transaction, we should always refer to the mempool to see the status of the network, because when setting a fee that is too low may result in a delay in transaction confirmation, while setting it too high may lead to unnecessary fees.  So, it's important to monitor current network conditions and adjust your fee accordingly to achieve the balance between speed and cost that you want.

Sorry but it's kinda off-topic, I think it's good for them to remind after making such a transaction you can use a free Bitcoin transaction accelerator.  I used ViaBTC to rebroadcast my transaction and put it on priority on the mempool.  It has a limit of 100 transactions per hour.  This contributes to making faster your transaction even if you set it a low-priority fee per bytes based on the mempool status.
legendary
Activity: 2268
Merit: 2327
Marketing Campaign Manager |Telegram ID- @LT_Mouse

For inputs, you can reduce the input number by consolidate your small inputs when network is not at high demand from users. Then you can make consolidation with very cheap fee rate.
For reducing transaction size, you have other ways too but it doesn't apply all the time. Consolidating the inputs when the fee is low is a very great solution but in case, if you miss doing so, you can try spending different UTXO in case you want to send a small amount. For example, right now, in my signature campaign address, I have 4 unspent outputs(0.0015, 0.004, 0.005, 0.005). I tried to send 0.001 BTC in normal mode without selecting any coins(inputs) and the fee with 1 sat/byte was a total of 400 sats. It's because it was either taking all the unspent output as input or most of them while with my first UTXO, I could send 0.001 BTC. In that case, there would be only 1 input. I tried and it was asking for a fee of 200 sats in total.

To do so, you have to enable "Show coins". With enabling that, you can see all the UTXO you have in the menu. So, when you will want to send funds, you can check which of your UTXOs can fill the amount and thus, you can avoid using more inputs. This will help you reduce the transaction size and thus, save some fees.

You can only use this option in Desktop wallet, not in android app.
hero member
Activity: 882
Merit: 792
Watch Bitcoin Documentary - https://t.ly/v0Nim
I think that mempool.space is the best option, I like its visual aspect and nice interface. Personally, I would never trust Electrum to decide my transaction's fee because most of the time you'll be overcharged. On mempool.space, you can see the recently mined blocks and upcoming blocks, you can see the fee range in each block, all of these give you a better understanding to decide fee for your transaction.

Quote
And Electrum wallet isn't the only Bitcoin wallet that has an adjustable transaction fee, I use Trust wallet and you can also easily adjust your transaction fee in this wallet for Bitcoin..
Trust wallet is close source. You should use open source wallet.
Trust wallet is also owned by Binance, so a big no no.
hero member
Activity: 868
Merit: 952
Now I don’t know how Electrum works on Android (personally don’t like it) but maybe you get a large minimum fee because currently the mempool is overloaded and your transaction will probably not even go through at all, it’ll just clog the mempool even more right now if you set a low fee. Sometimes transactions with low fees won’t even get picked up by nodes if the mempool is as clogged as it is as we speak.


Aside electrum you can use the blue wallet on your mobile, it has other or more features to than electrum on mobile. If you set a low transaction fee when initiating the transaction at first and the mempool later gets congested, you can easily just pump up the transaction fee either through the RBF method or CFPF. This is easier with blue wallet on mobile than electrum.


Quote
And Electrum wallet isn't the only Bitcoin wallet that has an adjustable transaction fee, I use Trust wallet and you can also easily adjust your transaction fee in this wallet for Bitcoin..

Trust wallet isn’t advisable to use just like what OP said it is closed source, and just few weeks ago some users had their funds missing although they later got their funds back.
hero member
Activity: 2366
Merit: 793
Bitcoin = Financial freedom

Compare three options and see difference, ETA and Static options provide overpaid fee than Mempool option. All of them are estimations because we don't know how mempools will become in next 100 minutes.

Within 10 blocks
  • ETA: 106.3 sat/vbyte
  • Static: 100 sat/vbyte
  • Mempool: 14.5 sat/vbyte

I can confirm this because I figured it out a long way back and since that I only used the mempool feature to pick the transaction fee for all of my transaction via Electrum wallet but they do give inaccurate fee too because of sudden change in the network but the wallet isn't picked it up so we have to go back and set the amount we want to send to find the required fee at the moment.

But here I want to clarify something even if we use mempool estimation it doesn't guarantee that the transaction will be confirmed in the next block because I personally broadcasted many transaction with fee of 0.6MB from mempool and after I broadcasted the fee keep raising so I have to wait few hours for the transaction to get into the blocks.

Well all the transactions from Electrum are Rbf by default so if we don't like to wait we can bump the fee at anytime if we want.
legendary
Activity: 2310
Merit: 4085
Farewell o_e_l_e_o
If you are using an Android phone you can easily add mempool to your dashboard for faster transaction fee information.
Use Electrum wallet on mobile (Android) like your hot wallet and store small fraction of bitcoin there, security-wise.

On mobile, you can check mempool by tapping on Network, then tap on any point on the fee color stripe (left is from tip of mempool, right is bottom of it). You can install Electrum and create an empty wallet on your mobile and use it only for mempool checking.

Quote
And Electrum wallet isn't the only Bitcoin wallet that has an adjustable transaction fee, I use Trust wallet and you can also easily adjust your transaction fee in this wallet for Bitcoin..
Trust wallet is close source. You should use open source wallet.

Quote
Most Bitcoin wallets won't automatically adjust few themselves to the minimum, most are always at a maximum fee which is why I will recommend mempool.
Default option and recommended fee rate are for user convenience that means it causes high fee rate, then transaction fee. If you know what to do, make your customization.
sr. member
Activity: 812
Merit: 315
DGbet.fun - Crypto Sportsbook
If you are using an Android phone you can easily add mempool to your dashboard for faster transaction fee information.



And Electrum wallet isn't the only Bitcoin wallet that has an adjustable transaction fee, I use Trust wallet and you can also easily adjust your transaction fee in this wallet for Bitcoin..

If you want to send Bitcoin from Trust wallet, the transaction fee will be high automatically,  around 3$ but here is what I used to do, I will launch mempool to check the lowest transaction fee for Bitcoin then adjust my transaction fee to the level of mempool, and within some few seconds your Bitcoin will go through...

Most Bitcoin wallets won't automatically adjust few themselves to the minimum, most are always at a maximum fee which is why I will recommend mempool.
jr. member
Activity: 56
Merit: 26
As it is you can reduce that fee but can only increase it. And that fee is still a big amount. Now people are still looking for a way to reduce that amount.
Now I don’t know how Electrum works on Android (personally don’t like it) but maybe you get a large minimum fee because currently the mempool is overloaded and your transaction will probably not even go through at all, it’ll just clog the mempool even more right now if you set a low fee. Sometimes transactions with low fees won’t even get picked up by nodes if the mempool is as clogged as it is as we speak.

Edit: now that I read tranthidung’s reply to you, I also noticed the little arrow next to “ETA” in your image. Did you try changing from ETA to other options? Looks like ETA maximum range is 25 blocks..
legendary
Activity: 2310
Merit: 4085
Farewell o_e_l_e_o
But in Electrum the fee size is already set. And if the transaction is at the beginning of the horizontal line and the transaction fee is 0.0005663 then there is no way one can reduce the size to reduce the fee again because it has ended. And when you increase the size the fee will also increase. Just like this image below.

As it is you can reduce that fee but can only increase it. And that fee is still a big amount. Now people are still looking for a way to reduce that amount.
Do you understand what you are writing?

Transaction size and fee rate are different. You can control your transaction size by three factors: number of inputs, number of outputs and address type. If all three factors are unchanged, transaction size is fixed but it depends on you, not on Electrum wallet.

Fee rate is another factor you can customize by yourself. I guess you implied about fee rate, not transaction size. Electrum wallet have three options: ETA (Estimate Time of Arrival), Static, Mempool for fee rate estimation. With each option, the software gives you a default value but you can scroll the slider to customize it.

You have to choose inputs, outputs, then fee rate, step by step.
legendary
Activity: 1106
Merit: 1372
Thank you for the information. But in Electrum the fee size is already set. And if the transaction is at the beginning of the horizontal line and the transaction fee is 0.0005663 then there is no way one can reduce the size to reduce the fee again because it has ended. And when you increase the size the fee will also increase. Just like this image below.

As it is you can reduce that fee but can only increase it. And that fee is still a big amount. Now people are still looking for a way to reduce that amount.
jr. member
Activity: 56
Merit: 26
Honestly, I’d avoid wallets that don’t offer the option to customize fees. That is a must-have option and, to me, a condition when picking a wallet. If it doesn’t have even the most basic functions, you’re better off not using it in my opinion..

Also worth noting: transaction fees aren’t always high. If a transaction isn’t an urgent matter, you can save a decent amount of sats over time by waiting for the mempool to clear up and paying lower fees to send a transaction. Like tranthidung says, also a good idea when consolidating outputs. But if you need to move coins from one wallet to another without a hurry, there’s no point in overpaying.
legendary
Activity: 2310
Merit: 4085
Farewell o_e_l_e_o
SUMMARY
  • Mempool is the best option. It's much better than ETA and Static but always double check mempool to compare it with given estimation from Electrum wallet.
  • If you know what you are doing, are aware of mempool (volatile memory), you can use any option because with any option, you are free to customize your fee. After your initial broadcast, you can bump your transaction fee later if you want to have faster confirmation.
  • Reminder: Electrum uses sat/vbyte for fee rate but its label is in sat/byte and has yet been corrected by Electrum developers. That issue




Your transaction fee will be decided by transaction size, fee rate. You can save transaction fee by using either lower fee rate or reducing your transaction size.
  • Transaction fee = Transaction size * Fee rate
Let's discover it, step by step!


TRANSACTION SIZE
You can reduce your transaction fee by reduce its size that requires you to know how to use your inputs and outputs effectively.
For inputs, you can reduce the input number by consolidate your small inputs when network is not at high demand from users. Then you can make consolidation with very cheap fee rate.
For outputs, it depends on how many senders you will send your coins too with your sending transaction, including your own change address as part of outputs.
Generally, you can reduce transaction size by using Segwit address (Bech32) that starts with bc1q. Since its deployment in 2017, many wallets and later centralized exchanges support that wallet type.
Please use some Bitcoin Transaction Size Calculators at Reference (bottom) to understand it better.

A strong reminder, you can use centralized exchanges that support Segwit but you should not rely on them. Storing your coins on centralized exchanges, with custodial wallets, is extremely risky.

Let’s control your coins by non-custodial wallets like Electrum, Bitcoin Core wallets. In this guide, I present only Electrum wallet as it fits with newbies and their limited resources for wallet storage.

FEE RATE
Now, let’s move on to fee rate. What is best fee rate for you to use?
It depends on your need.
If you want to move your coins within a short time like 10 or 20 minutes (~ 1 or 2 next blocks), you will have to pay expensive fee at that moment.
If you are not hurry and can wait longer, you can use lower fee rate and wait for like 1 hour (next 6 bocks) or even longer like 12 hours or 24 hours. Remember that if you use too low fee rate, your transaction will be at bottom of mempools and waiting time will be up to 14 days (2 weeks or 2016 blocks). After that, if your transaction is still not confirmed, there is possibility that it will be dropped from mempools.
Note that not all mempools will drop your transaction but some will. That leads to a need that you might see your transaction is Failed, then you will have to re-broadcast it.
Be aware of this risk and avoid to choose extremely low fee rate. If you only need to consolidate your inputs, don’t do this when network is in high demand. Just observe mempools and choose good times to broadcast your transactions.

WHERE TO CHECK FEE RATES?
Check it in mempools. There are some websites to do that but I’d like to recommend two sites:
With mempool.space, you can choose chart option to have better overview. If you are new with this experience, use their main page and get default given information.


The second site, Joe-hoe, is more advanced but it is more helpful.
Now, how to use it?
Block time is about 10 minutes in average. When you broadcast your transaction, it will appear in mempools. Then miners will pick transactions that can give them most beneficial transaction fees (with highest fee rates and biggest sizes). They will prioritize such transactions, and 1 block equals to 1 vMB from tip of mempool.
Hovering the mouse on the mempool chart, you will see different fee bands (in different colors) and corresponding size of waiting transactions within that fee band. Let’s consider and choose a fee band that matches you.

HOW TO CHOOSE FEE RATE WITH ELECTRUM WALLET?
In Electrum wallet, you will have three options when broadcasting your transactions: ETA, Mempool, and Static. Let’s dig into each of them.

Turn on Edit fee manually.

ETA
What does ETA means? It is Estimate Time of Arrival. It means something. It is only estimation of arrival time or first confirmation time for your transaction.

Mempool is lively up and down, so an estimation at the time you broadcast your transaction can be not correct. The actual confirmation time can be longer or shorter than ETA if mempool is up or down, respectively. ETA gives you estimations in time like 30 minutes, 1 hour, etc.
This is disadvantage of ETA option. It usually will cost you more than Mempool and Static options.


Mempool
Mempool is an option which gives you information in how many waiting blocks for your first confirmation, such as within next 1-2 blocks, next 10 blocks, 25 blocks, etc.
It is a better option than ETA. You will have less likely overpay fee for your transaction.


Static
This option is useful when you comprehensively know what you are doing. It is helpful when you only make your transactions when mempool drops to your favorite fee rate.
When you use this option, with your experience and mempool observation, you won’t overpay fee for sure.

Comparison
Compare three options and see difference, ETA and Static options provide overpaid fee than Mempool option. All of them are estimations because we don't know how mempools will become in next 100 minutes.

Within 10 blocks
  • ETA: 106.3 sat/vbyte
  • Static: 100 sat/vbyte
  • Mempool: 14.5 sat/vbyte
Double check with https://jochen-hoenicke.de/queue/#BTC%20(default%20mempool),8h,weight

I checked it yesterday and again, Mempool option is the best.


ELECTRUM ON ANDROID
Use Electrum wallet on mobile (Android) like your hot wallet and store small fraction of bitcoin there, security-wise.

On mobile, you can check mempool by tapping on Network, then tap on any point on the fee color stripe (left is from tip of mempool, right is bottom of it). You can install Electrum and create an empty wallet on your mobile and use it only for mempool checking.


REFERENCES
Jump to: