This is only a basic guide for new users who just need to get their unconfirmed transactions mined quickly, I do not cover the advanced setup requirements to use Electrum in a private way.
You shouldn’t feel the need to “play it safe” and waste money overbidding on a Bitcoin transaction fee because you are worried it will take too long to confirm. There are ways to increase the fee on an unconfirmed transaction as both the sender and receiver. It is more cost efficient for the sender to increase the fee, but it is possible to do it as the receiver as well.
CPFP allows a receiver to “boost” an unconfirmed transaction by spending the unconfirmed coins in a new transaction with a high enough fee to pay for both of them combined. This is not as cost efficient as RBF because a second transaction has to be created with an extra high fee to pay for the original one, whereas RBF actually cancels the original one. However, sometimes you would rather secure the payment immediately as the receiver even if it means you pay the extra fee yourself.
RBF allows a sender to cancel an unconfirmed transaction that pays a lower fee by broadcasting a new one using the same UTXO that pays a higher fee. This is the reason you do not want to complete your end of an exchange with an untrustworthy party until their transaction reaches 1+ confirmation because they might pay a higher fee on an unconfirmed transaction that spends the coins back to their own wallet instead of your address!
Under the receive tab, the description, requested amount, and expiration boxes are all optional so I did not complete them for the purpose of this guide. Click “New address” and copy/paste the address to the transaction sender. You should always create a new address for each transaction you receive in order to get better privacy.
You can check your history tab and see that your address has been paid 2.5 million sats, but the sender only paid a fee rate of 2 sat/b while there are 65 MB of waiting transactions already bidding higher rates, and new transactions that pay higher fees are being created every second, potentially pushing this number even higher.
Right click the unconfirmed transaction and click “Child pays for parent” to skip everyone else in line:
Add a fee of your choosing:
Then sign and broadcast:
Now the transaction is in the top .11 MB of unconfirmed bidders, skipping the 65 MB of other waiting transactions:
This is the transaction creation screen. Adjust the target fee at the bottom and make sure “Replace by fee” is filled. Review the details, click finalize, sign, and broadcast:
You sent 1.5 million sats with a 2 sat/byte fee which is being outbid by 69 MB of other transactions… now your counterparty won’t give you the goods until the transaction reaches 1 confirmation because they don’t trust you not to cancel it, and they don’t want to pay the extra fees themselves!
Right click your transaction in history and click “Increase fee” to get it confirmed in the next block:
Bid the fee needed to get into the next block, then click okay, sign, and broadcast:
Now the transaction is in the top .33 MB of bidders, and will probably get confirmed in the next block.