Pages:
Author

Topic: 0 sat/byte fee ? (Read 674 times)

legendary
Activity: 2310
Merit: 4085
Farewell o_e_l_e_o
November 16, 2019, 02:00:58 AM
#34
Somewhere around 2016-2017, i witnessed people creating 0 fee transactions and getting them confirmed. As long as a single miner runs an old node, a patched node or an alternative node (like btcd) that is configured to accept and relay 0 fee transactions, AND still uses the old, deprecated priority mechanism you can always try to setup a patched node and connect directly to this mining node, then create a 0 fee transaction and get it broadcasted to this miner's node...
However, at this point in time, you'd need very specific and detailed info about which miners would be running such a patched and alternatively-configured node, my guess would be there aren't many of those miners left.

And in the odd chance you do get a 0 fee transaction in his/her node's mempool, and your transaction has very high priority (and the miner still reserves a space in his/her block for high priority transactions), the miner would still need to find a block header whose hash is under the current target (ie solve the block).

Odds are small, very, very, small... But i don't think they're absolute 0.
I imagine about some problems with 0-fee transactions:
  • How long does it take to get confirmations?
  • With today very high dificulty of bitcoin, if someone set up his/her node and do some technical steps to try luck and get 0-fee transactions, I think it sounds very crazy.

[1] Time always make sense. One can send coins and wait for hours or days but too long waiting time does not a comfortable thing to suffer.
According to https://whatthefee.io/, at the current status of bitcoin network, 3 satoshis/ byte is the most comfortable fee (corresponds to acceptable waiting time) to move coins.
I think one can carefully check suggested fees before moving coins but most of time, I move my coins at 1 satoshi/byte and it works smooth.

Beyond that, I know the expiration time of unconfirmed transactions is 72 hours (3 days) [3]. Waiting 3 days, and repeat 0-fee transactions, then wait for luck again sounds very crazy.

[2] If one can be able to set up patched node, then miner's node, I don't see the difference between 0-fee or 1-satoshi/byte transactions for them to spend time (to setup and wait) for luck (too) to get 0-fee transactions.

[3] https://hackernoon.com/holy-cow-i-sent-a-bitcoin-transaction-with-too-low-fees-are-my-coins-lost-forever-7a865e2e45ba


I'm interested, I used to be able to consolidate inputs for free, and I didn't mind waiting a day or two if I did not need to spend them otherwise.
If three days pass and your transactions don't get confirmations, you have to repeat free-consolidated transactions again.
What % of chances are there of a 0 sat/byte fee transaction to get relayed through a node allowing such 0 fee transactions these days if mempool has got a very big amount of transactions stuck at that level?
If 0 satoshi/byte transaction is realistic, I think there are sites suggest it already. I have never seen 0 satoshi/byte transactions suggested by https://whatthefee.io/ or https://coinb.in/#fees
legendary
Activity: 3430
Merit: 3080
November 15, 2019, 07:06:00 PM
#33
IIRC you cannot set zero without modifying the software (as that would make for some accidental DOS vulnerabilities), you can however set the relay fee to an arbitrarily low non-zero value... I think the lowest is 1 sat per 1000 vb.

I now remember that modifying the minrelayfee constant in the client source code would screw up the fee estimator logic. So there's alot of nodes out there that depend on fee estimation that would never want that patch. Still, no reason not to reduce the default minrelayfee, you're right that 1sat/vbyte is the minimum, and that feerate propagates fine atm
staff
Activity: 4284
Merit: 8808
November 15, 2019, 06:38:32 PM
#32
IIRC you cannot set zero without modifying the software (as that would make for some accidental DOS vulnerabilities), you can however set the relay fee to an arbitrarily low non-zero value... I think the lowest is 1 sat per 1000 vb.
legendary
Activity: 3416
Merit: 1912
The Concierge of Crypto
November 15, 2019, 04:42:42 PM
#31
well, there's not exactly zero interest in this, this thread proves there's some demand from users, and previous work from the bitcoin devs suggested an appetite for it.

if everyone from this thread changed their node configuration to relay < 1 sat/byte, and other node operators followed (mine's already set lower than default IIRC), I think mining nodes should eventually notice that as a market signal. The more the BTC exchange rate increases, and the more reward halvings that occur, the more incentive miners have to change their relay minimum setting.

What's the exact setting we should use in our bitcoin.conf ?

I'm interested, I used to be able to consolidate inputs for free, and I didn't mind waiting a day or two if I did not need to spend them otherwise.

For example, I have a donation address and plenty of people send to it, every now and then I'd like to spend it all back to the same address so it's just one input, and I'd avoid paying any fees if possible. Otherwise we just stick to 1 sat, and that's still fine.
legendary
Activity: 3430
Merit: 3080
November 11, 2019, 06:08:07 PM
#30
it will be rejected like a 0sat/byte transaction.
Not because of the low fee like a 1sat/byte during a long "tx clogging", but because most nodes wont relay it.

I see.

So the only way something like this would be able to occur would be if nodes begun accepting that as allowed. That still obviously doesn't confirm if miners are going to confirm transactions this low , but it would allow for people to send them out and hope that at some point the miners would mine -- as people do now with 1 sat fees.

well, there's not exactly zero interest in this, this thread proves there's some demand from users, and previous work from the bitcoin devs suggested an appetite for it.

if everyone from this thread changed their node configuration to relay < 1 sat/byte, and other node operators followed (mine's already set lower than default IIRC), I think mining nodes should eventually notice that as a market signal. The more the BTC exchange rate increases, and the more reward halvings that occur, the more incentive miners have to change their relay minimum setting.

Edit: I'm wrong above, 1sat/vbyte is actually the minimum, and it can't really be reduced without an update to the fee estimation logic
legendary
Activity: 1666
Merit: 1285
Flying Hellfish is a Commie
November 11, 2019, 05:38:03 PM
#29
I know this wouldn't be '0 fee' but what if there was a way to go below the 1 satoshi limit. Think of something along the lines of fractional satoshis -- where you're practically at 0, but not fully.

Wouldn't that still achieve the goal here of 0sat/byte -- or at least be close to it.
'Course the achievement will be the same, if you can include a 0.9sat/byte transaction in a block then you can do the same with 0sat/byte.
Because by default, anything under 1sat/byte is considered as 0sat/byte.

There's a way to create <1sat/byte fee since the unit in the config is in BTC/kB (0.00001 defaut).
Ex: mintxfee=0.000009 & minrelaytxfee=0.000009
But other nodes with default config will still reject your transaction just like a 0sat/byte fee tx.

Quote from: squatz1
Obviously none of this can confirm if it's going to be confirmed nor rejected for being too low of a fee. But it's something to keep in mind.
it will be rejected like a 0sat/byte transaction.
Not because of the low fee like a 1sat/byte during a long "tx clogging", but because most nodes wont relay it.

I see.

So the only way something like this would be able to occur would be if nodes begun accepting that as allowed. That still obviously doesn't confirm if miners are going to confirm transactions this low , but it would allow for people to send them out and hope that at some point the miners would mine -- as people do now with 1 sat fees.

legendary
Activity: 2618
Merit: 6452
Self-proclaimed Genius
November 07, 2019, 11:37:44 PM
#28
I know this wouldn't be '0 fee' but what if there was a way to go below the 1 satoshi limit. Think of something along the lines of fractional satoshis -- where you're practically at 0, but not fully.

Wouldn't that still achieve the goal here of 0sat/byte -- or at least be close to it.
'Course the achievement will be the same, if you can include a 0.9sat/byte transaction in a block then you can do the same with 0sat/byte.
Because by default, anything under 1sat/byte is considered as 0sat/byte.

There's a way to create <1sat/byte fee since the unit in the config is in BTC/kB (0.00001 defaut).
Ex: mintxfee=0.000009 & minrelaytxfee=0.000009
But other nodes with default config will still reject your transaction just like a 0sat/byte fee tx.

Quote from: squatz1
Obviously none of this can confirm if it's going to be confirmed nor rejected for being too low of a fee. But it's something to keep in mind.
it will be rejected like a 0sat/byte transaction.
Not because of the low fee like a 1sat/byte during a long "tx clogging", but because most nodes wont relay it.
legendary
Activity: 3472
Merit: 10611
November 07, 2019, 11:28:58 PM
#27
I made multiple tests with 0 sat/byte fee, even when the mempool was empty where 1sat/byte gets your transaction on the next block and go no luck with the transactions.

I assume miners share the same configuration of their full node of not accepting below 1sat/byte transactions, as it is already the default setting for Bitcoin Core.

although that is probably true but you can't make that assumption based on what you did. for all we know the miner may accept 0 fee transactions but they never receive any since 99% of the nodes don't relay that kind of transaction anymore.

I know this wouldn't be '0 fee' but what if there was a way to go below the 1 satoshi limit. Think of something along the lines of fractional satoshis -- where you're practically at 0, but not fully.
i think new version of bitcoin core was suppose to introduce this new feature where it allowed smaller fees such as 0.9, 0.5,... satoshi/bytes. i don't know what happened to it though.
legendary
Activity: 1666
Merit: 1285
Flying Hellfish is a Commie
November 07, 2019, 01:12:34 PM
#26
Thank you for the answer. I admit I didn't really quite understand everything needed for a person to get the tx confirmed, but I understand that there is still a possibility, and because of that possibility, it could be worth just sending a transaction that's 0 fee you don't need to confirm in 1 month, and see if someone will take it.

Do those miners set it up like that on purpose I wonder?

Well... I wouldn't count on it... If you just create a 0 fee transaction, it'll allmost certainly get rejected by the nodes you are connected to if you try to broadcast it trough them, or relay it to them.
If you find a single node that still accepts a 0 fee transaction, odds are it'll just stay in the mempool of that single node untill it gets pruned after a couple of days since the odds are big this 0-fee-accepting node is only connected to nodes that reject 0 fee transactions...

What i meanth is that if you want to create a 0 fee transaction and even have a very small chance of getting it confirmed, you'll have to find a "path" of 0-fee-accepting node(s) that lead to a 0-fee-accepting node that belongs to a miner... Only if you find such a path, you'll have a (very small) chance the miner will put your transaction into the block he/she is working on, and an even small chance the miner finds a valid blockheader...
Finding 0-fee-accepting nodes is not easy to begin with... You can probably try to connect to as many nodes as possible and look at their versions, recent bitcoin core versions would have had to actively patch their node's code in order to accept 0 fee transactions (thus, the odds of them actually accepting said transactions is VERY small). Older core versions and alternative versions would (theoretically) have the highest odds of accepting 0 fee transactions.

If you want to test out wether or not a node accepts your transaction, you'll probably have to create 2 nodes on 2 different machines, connect them both to the node you are testing. Then broadcast your 0 fee transaction to said node from your first node and see if the tested node broadcast the 0 fee transaction to your second node. If it does, at least you know the tested node RELAYS 0 fee transactions Smiley
Here's a small, non-technical, intersting reading piece about how transaction relaying works... It's interesting, but it does not offer a real "answer" in this discussion tough => https://en.bitcoin.it/wiki/Network#Standard_relaying

I know this wouldn't be '0 fee' but what if there was a way to go below the 1 satoshi limit. Think of something along the lines of fractional satoshis -- where you're practically at 0, but not fully.

Wouldn't that still achieve the goal here of 0sat/byte -- or at least be close to it.

Obviously none of this can confirm if it's going to be confirmed nor rejected for being too low of a fee. But it's something to keep in mind.
newbie
Activity: 35
Merit: 0
November 07, 2019, 12:51:47 PM
#25
What % of chances are there of a 0 sat/byte fee transaction to get relayed through a node allowing such 0 fee transactions these days if mempool has got a very big amount of transactions stuck at that level? Like if the size is around 5-8 MB, is it likely going to get accepted any sooner than a week or less? I'd like to play with the 0 sat/byte fee but scared about the possibilities of getting it accepted in a block while even 1 sat/byte are not easily getting accepted considering that majority of miners are going for higher fees and some exchanges have started paying higher fees maybe to clog the mempool and spike the fee structure.
If the mempool is more than 2MB in size at any given time, you can forget about getting a confirmations for any transactions with a small fees/byte, much less a 0 fee transaction. The propagation of 0 fee transactions should be quite bad, given the fact that most nodes have already stopped accepting it. The only way for it to get accepted is to mine your own block (I doubt any miner would accept a 0 fee transaction from others).

You can try experimenting it and enable opt-in RBF. You can bump the fee any time you want to stop trying.

I made multiple tests with 0 sat/byte fee, even when the mempool was empty where 1sat/byte gets your transaction on the next block and go no luck with the transactions.

I assume miners share the same configuration of their full node of not accepting below 1sat/byte transactions, as it is already the default setting for Bitcoin Core.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
November 02, 2019, 11:10:35 AM
#24
What % of chances are there of a 0 sat/byte fee transaction to get relayed through a node allowing such 0 fee transactions these days if mempool has got a very big amount of transactions stuck at that level? Like if the size is around 5-8 MB, is it likely going to get accepted any sooner than a week or less? I'd like to play with the 0 sat/byte fee but scared about the possibilities of getting it accepted in a block while even 1 sat/byte are not easily getting accepted considering that majority of miners are going for higher fees and some exchanges have started paying higher fees maybe to clog the mempool and spike the fee structure.
If the mempool is more than 2MB in size at any given time, you can forget about getting a confirmations for any transactions with a small fees/byte, much less a 0 fee transaction. The propagation of 0 fee transactions should be quite bad, given the fact that most nodes have already stopped accepting it. The only way for it to get accepted is to mine your own block (I doubt any miner would accept a 0 fee transaction from others).

You can try experimenting it and enable opt-in RBF. You can bump the fee any time you want to stop trying.
legendary
Activity: 3416
Merit: 1912
The Concierge of Crypto
November 02, 2019, 10:59:44 AM
#23
I am aware  that there are a few 'good' miners who still mine BTC as a hobby and not for their financial profits, if they decide to go for charity mining for some time where they go below ground level of 1 sat/byte and choose to take 0 sat/byte transactions in their block, there are 100% chances of getting your 0 sat 'fully free' transactions confirmed.

Why would anyone want to waste electricity and money as a hobby?
Does it make any sense?
Even under a circumstance where they are doing it to get hash power, remember, accepting 0 sat or free transactions does not mean other miners would accept it as well.
It would get rejected and all that effort into getting it accepted would be wasted.

The chances are clearly not 100%. The miner has to get a block.

As for the hobby thing, remember there are still people doing other distributed computing projects for no pay: finding prime numbers, cures for cancer, searching for aliens, doing difficult math problems like optimal goloumb rulers, and maybe even cracking RSA or other codes. The list goes on, finding asteroids, ATLAS experiments, Collatz conjecture, decoding unbroken Enigmas messages from World War 2, chess engine something, high energy particle collision research, worldwide earthquake sensors, radioactive monitoring, DNA/RNA stuff, and other grid computing stuff.

None of those directly make any money, most do not. Only cryptocurrency mining (and staking) find blocks with rewards.

Just include a fee if you're after practical usage of the coin and be willing to wait a few hours. 1 sat is still possible.
newbie
Activity: 35
Merit: 0
November 01, 2019, 12:23:14 AM
#22
@OP, were you successful in getting your node up and running after trying to setup the mintxfee to 0 and taking all the steps told by experienced members?

Nope, I waited few weeks but then had to import the wallet from seed and spend the coins.

Even if nodes relay the 0 fee transaction, miners nodes need to accept and include them in block, 0 chance of that happening.
legendary
Activity: 3052
Merit: 1273
October 31, 2019, 06:45:34 PM
#21
What % of chances are there of a 0 sat/byte fee transaction to get relayed through a node allowing such 0 fee transactions these days if mempool has got a very big amount of transactions stuck at that level? Like if the size is around 5-8 MB, is it likely going to get accepted any sooner than a week or less? I'd like to play with the 0 sat/byte fee but scared about the possibilities of getting it accepted in a block while even 1 sat/byte are not easily getting accepted considering that majority of miners are going for higher fees and some exchanges have started paying higher fees maybe to clog the mempool and spike the fee structure.

@OP, were you successful in getting your node up and running after trying to setup the mintxfee to 0 and taking all the steps told by experienced members?
legendary
Activity: 3430
Merit: 3080
September 04, 2019, 10:03:26 AM
#20
Thank you for the answer. I admit I didn't really quite understand everything needed for a person to get the tx confirmed, but I understand that there is still a possibility, and because of that possibility, it could be
What i meanth is that if you want to create a 0 fee transaction and even have a very small chance of getting it confirmed, you'll have to find a "path" of 0-fee-accepting node(s) that lead to a 0-fee-accepting node that belongs to a miner... Only if you find such a path, you'll have a (very small) chance the miner will put your transaction into the block he/she is working on, and an even small chance the miner finds a valid blockheader...
Finding 0-fee-accepting nodes is not easy to begin with... You can probably try to connect to as many nodes as possible and look at their versions, recent bitcoin core versions would have had to actively patch their node's code in order to accept 0 fee transactions (thus, the odds of them actually accepting said transactions is VERY small). Older core versions and alternative versions would (theoretically) have the highest odds of accepting 0 fee transactions.

If you want to test out wether or not a node accepts your transaction, you'll probably have to create 2 nodes on 2 different machines, connect them both to the node you are testing. Then broadcast your 0 fee transaction to said node from your first node and see if the tested node broadcast the 0 fee transaction to your second node. If it does, at least you know the tested node RELAYS 0 fee transactions Smiley
Here's a small, non-technical, intersting reading piece about how transaction relaying works... It's interesting, but it does not offer a real "answer" in this discussion tough => https://en.bitcoin.it/wiki/Network#Standard_relaying

or alternatively, just connect to miner nodes directly, and see which accept 0-fee transactions when you try to relay.

the block explorer sites usually publish the IP address of smaller miners. connect your Bitcoin node to those, and start trying.
hero member
Activity: 1470
Merit: 655
September 04, 2019, 04:10:47 AM
#19
In addition to the fine points already, would just like to add that it is not only still possible, but that there are still daily 0-fee transactions being transmitted and confirmed on the network. Only a handful, and a number that's fewer by the day, only 2 in the last 24 hours actually.

for reference if someone wanted to analyze these transactions further:
list of transactions with zero fee that happened this year using https://blockchair.com/. god i love this block explorer. it has so many cool features to play around and analyze transactions and blocks,... the best thing is you can share the link of your customized sort.

note that i set iscoinbase to false to exclude them since coinbase are transactions also shown to have zero fee on the explorer.

These likely are just miners' own transactions, or txs of friends or whatever, merely including them in the blocks they find.
i checked a bunch of those transactions (obviously not all) and they were all payments made from a mining pool to its miners (spending coinbase transactions)
legendary
Activity: 3010
Merit: 3724
Join the world-leading crypto sportsbook NOW!
September 04, 2019, 02:37:10 AM
#18
In addition to the fine points already, would just like to add that it is not only still possible, but that there are still daily 0-fee transactions being transmitted and confirmed on the network. Only a handful, and a number that's fewer by the day, only 2 in the last 24 hours actually. These likely are just miners' own transactions, or txs of friends or whatever, merely including them in the blocks they find.

Thanks to mocha too for that useful bit on relay. Never did find any nodes accepting when last looking manually. All the broadcast services online also are pushing to upgraded nodes who'll reject 0-fees. Been a while since I'd seen anyone sharing one of them old setups.
legendary
Activity: 3612
Merit: 5297
https://merel.mobi => buy facemasks with BTC/LTC
September 04, 2019, 01:15:08 AM
#17
Thank you for the answer. I admit I didn't really quite understand everything needed for a person to get the tx confirmed, but I understand that there is still a possibility, and because of that possibility, it could be worth just sending a transaction that's 0 fee you don't need to confirm in 1 month, and see if someone will take it.

Do those miners set it up like that on purpose I wonder?

Well... I wouldn't count on it... If you just create a 0 fee transaction, it'll allmost certainly get rejected by the nodes you are connected to if you try to broadcast it trough them, or relay it to them.
If you find a single node that still accepts a 0 fee transaction, odds are it'll just stay in the mempool of that single node untill it gets pruned after a couple of days since the odds are big this 0-fee-accepting node is only connected to nodes that reject 0 fee transactions...

What i meanth is that if you want to create a 0 fee transaction and even have a very small chance of getting it confirmed, you'll have to find a "path" of 0-fee-accepting node(s) that lead to a 0-fee-accepting node that belongs to a miner... Only if you find such a path, you'll have a (very small) chance the miner will put your transaction into the block he/she is working on, and an even small chance the miner finds a valid blockheader...
Finding 0-fee-accepting nodes is not easy to begin with... You can probably try to connect to as many nodes as possible and look at their versions, recent bitcoin core versions would have had to actively patch their node's code in order to accept 0 fee transactions (thus, the odds of them actually accepting said transactions is VERY small). Older core versions and alternative versions would (theoretically) have the highest odds of accepting 0 fee transactions.

If you want to test out wether or not a node accepts your transaction, you'll probably have to create 2 nodes on 2 different machines, connect them both to the node you are testing. Then broadcast your 0 fee transaction to said node from your first node and see if the tested node broadcast the 0 fee transaction to your second node. If it does, at least you know the tested node RELAYS 0 fee transactions Smiley
Here's a small, non-technical, intersting reading piece about how transaction relaying works... It's interesting, but it does not offer a real "answer" in this discussion tough => https://en.bitcoin.it/wiki/Network#Standard_relaying
legendary
Activity: 2674
Merit: 1226
Livecasino, 20% cashback, no fuss payouts.
September 04, 2019, 01:04:06 AM
#16
Somewhere around 2016-2017, i witnessed people creating 0 fee transactions and getting them confirmed. As long as a single miner runs an old node, a patched node or an alternative node (like btcd) that is configured to accept and relay 0 fee transactions, AND still uses the old, deprecated priority mechanism you can always try to setup a patched node and connect directly to this mining node, then create a 0 fee transaction and get it broadcasted to this miner's node...
However, at this point in time, you'd need very specific and detailed info about which miners would be running such a patched and alternatively-configured node, my guess would be there aren't many of those miners left.

And in the odd chance you do get a 0 fee transaction in his/her node's mempool, and your transaction has very high priority (and the miner still reserves a space in his/her block for high priority transactions), the miner would still need to find a block header whose hash is under the current target (ie solve the block).

Odds are small, very, very, small... But i don't think they're absolute 0.

Thank you for the answer. I admit I didn't really quite understand everything needed for a person to get the tx confirmed, but I understand that there is still a possibility, and because of that possibility, it could be worth just sending a transaction that's 0 fee you don't need to confirm in 1 month, and see if someone will take it.

Do those miners set it up like that on purpose I wonder?
legendary
Activity: 3472
Merit: 10611
September 03, 2019, 10:59:42 PM
#15
Probably because back then it was not resource intensive to run a miner. People could get hundreds of btc with their home computers or old laptops.
Doing this now would collapse the industry. Or at least the Bictoin blockchain.

so you think mining industry where miners are getting paid 12.5BTC (or $125000) per block is going to collapse if fees were zero and they weren't getting the 1 satoshi/byte minimal fee which translates into 0.012BTC (or $120) with 1.2 MB block!

not to mention when you say "then" you are talking about the time when miners were getting paid 25BTC or $12500 in other words 10 times less than now!
Pages:
Jump to: