Bitcoin Forum

Bitcoin => Bitcoin Technical Support => Topic started by: john9 on November 18, 2017, 06:17:17 PM



Title: A bitcoin transaction with zero or low fees
Post by: john9 on November 18, 2017, 06:17:17 PM
Can it get stuck forever? I read somewhere that it couldn't but I also read that it could just get refunded to the sender if it can't get sent across the network. Which is true?


Title: Re: A bitcoin transaction with zero or low fees
Post by: TryNinja on November 18, 2017, 06:26:29 PM
It can't. If for some reason your transaction never gets confirmed, it will eventually disappear from the network and you will be able to spend your coins again. So yeah, it will return to the sender.


Title: Re: A bitcoin transaction with zero or low fees
Post by: sawdust on November 18, 2017, 11:14:31 PM
It can't. If for some reason your transaction never gets confirmed, it will eventually disappear from the network and you will be able to spend your coins again. So yeah, it will return to the sender.

How likely is it that a transaction with zero fees will "eventually disappear" from the network?



Title: Re: A bitcoin transaction with zero or low fees
Post by: TryNinja on November 19, 2017, 12:23:54 AM
How likely is it that a transaction with zero fees will "eventually disappear" from the network?
I can't really say. As I said previously, if the transaction doesn't get confirmed, it will eventually disappear from the network and the coins will become spendable again. It all depends on the network load and if there is any miner willing to accept the transaction.


Title: Re: A bitcoin transaction with zero or low fees
Post by: buwaytress on November 19, 2017, 01:00:03 PM
It can't. If for some reason your transaction never gets confirmed, it will eventually disappear from the network and you will be able to spend your coins again. So yeah, it will return to the sender.

How likely is it that a transaction with zero fees will "eventually disappear" from the network?




Each time you perform a transaction, what happens when you finalise your spend is that your wallet software broadcasts your transaction to the Bitcoin network, where it sits in the mempool waiting to be picked up by miners.

How long it stays there isn't really deterministic on the fee you specify. BUT because each block has a limited size, miners will naturally want to fill it up with transactions that will earn them the most fees (again a generalisation but evidenced by the fact that zero-fee or low-fee transactions do tend to stay longer in the mempool as miners will prioritise those with higher fees).

Now, most wallets will continue broadcasting your tx for as long as you keep them open, for as long as it remains unconfirmed. So, for your transaction to "eventually disappear", it has to stop being broadcast so the network simply drops it. To my knowledge, this is very difficult to do (stop broadcasting) if you're using an online-based wallet. I use Electrum, and even without the wallet broadcasting, I've seen txs stay for over a week.

I'm sure someone will have a more precise explanation, but in practice, I'm very certain that waiting for txs to get dropped from the network is at best a long waiting game.




Title: Re: A bitcoin transaction with zero or low fees
Post by: ranochigo on November 19, 2017, 01:11:02 PM
Now, most wallets will continue broadcasting your tx for as long as you keep them open, for as long as it remains unconfirmed. So, for your transaction to "eventually disappear", it has to stop being broadcast so the network simply drops it. To my knowledge, this is very difficult to do (stop broadcasting) if you're using an online-based wallet. I use Electrum, and even without the wallet broadcasting, I've seen txs stay for over a week.
Just a tiny note. Anyone can rebroadcast a transaction. Even if you stop rebroadcasting from your wallet, some node, merchant, literally anyone can pick your raw transaction up and rebroadcast it continually. The only concrete method to stop it is to get a miner to mine your transaction.


IIRC, Bitcoin Core 0.15.0 no longer relay 0-fee transaction and they are harder to propagate and confirm, unless a miner sees it and is willing to include it.


Title: Re: A bitcoin transaction with zero or low fees
Post by: bob123 on November 20, 2017, 03:12:01 PM
How likely is it that a transaction with zero fees will "eventually disappear" from the network?

Theoretically such a transaction could sit in the mempool of the nodes "forever". But generally transactions which won't be confirmed within a few days
or get broadcastet again, get dropped out of the mempool.
Generally, after a few days, the transaction will be removed from the mempool and your wallet shows your balance again, which makes your coins
spendable again via wallet GUI.


Title: Re: A bitcoin transaction with zero or low fees
Post by: gabbie2010 on November 22, 2017, 12:13:22 PM
Can it get stuck forever? I read somewhere that it couldn't but I also read that it could just get refunded to the sender if it can't get sent across the network. Which is true?
It may get confirmed eventually after some time because as it stays unconfirmed it is going to be prioritized, you can  also try to rebroadcast the transaction again after being unsuccessfully confirmed the bitcoin will be returned to your wallet.


Title: Re: A bitcoin transaction with zero or low fees
Post by: Maveth13 on November 22, 2017, 02:02:47 PM
Even with a regular transaction fee, the time it will take to complete a transaction will still vary a lot. It usually depends on the transaction volume. Though as your transaction gets older it will become a priority, so the chance it will be confirmed increases over time.


Title: Re: A bitcoin transaction with zero or low fees
Post by: bob123 on November 22, 2017, 05:30:30 PM
It may get confirmed eventually after some time because as it stays unconfirmed it is going to be prioritized, you can  also try to rebroadcast the transaction again after being unsuccessfully confirmed the bitcoin will be returned to your wallet.

Transactions (with a small or zero fee) which stay unconfirmed for a longer time usually don't get priorized over transactions with a high fee.
Every miner is free to chose which transactions he is going to confirm in his mined block. Its all about how the node is coded to fill the block with TX's.
Since miners mine because they want to gain profit, they will always priorize transactions with a higher sat/B fee.