Pages:
Author

Topic: Cost and Confirmation time of Bitcoin Transactions - page 3. (Read 17130 times)

full member
Activity: 168
Merit: 100
although at least if miners included closer to the 1MB of txs per block we'd have far less backlog

Adding transactions to a block takes time, in which the miner/pool is idle. The transaction fee has to make up for that idle time. It doesn't need to be much, but certainly more than zero. I am sure the blocks will be filled if there are TX with fees available.


What I still want to know is how much of a potential risk this scenario is:

"Consider also the scenario where a business receives and sends Bitcoin funds (same way as PayPal merchants do). If the business's wallet software decides to use an unconfirmed output as input from a client who paid using a 0 fee transaction as part of a downstream transaction or chain of downstream transactions and that client subsequently double spent the original transaction with a fee - all the downstream transactions would be invalidated if the subsequent fee including transaction were prioritized. This could mean significant financial losses for the business not to mention the nightmare of tracing and unwinding of the now invalid transactions."

As I mentioned above, the stock Bitcoin daemon (as shipped in Bitcoin-QT) appears happy to chain transactions with unconfirmed outputs.

That's why it is good practice to wait for 7 confirmations before accepting a balance.
full member
Activity: 134
Merit: 100
What I still want to know is how much of a potential risk this scenario is:

"Consider also the scenario where a business receives and sends Bitcoin funds (same way as PayPal merchants do). If the business's wallet software decides to use an unconfirmed output as input from a client who paid using a 0 fee transaction as part of a downstream transaction or chain of downstream transactions and that client subsequently double spent the original transaction with a fee - all the downstream transactions would be invalidated if the subsequent fee including transaction were prioritized. This could mean significant financial losses for the business not to mention the nightmare of tracing and unwinding of the now invalid transactions."

As I mentioned above, the stock Bitcoin daemon (as shipped in Bitcoin-QT) appears happy to chain transactions with unconfirmed outputs.
full member
Activity: 168
Merit: 100
But isn't the increased value of Bitcoin with respect to FIAT reward enough?

The way mining and difficulty works, the infrastructure is directly proportional to the block rewards (base reward + fees).  More fees and higher exchange rates will always directly improve the hashing power of the network. No such thing as enough if you are interested in improving the hash rate.
legendary
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
Certainly right now clients should probably all be at least including the minimal fee at the moment (I changed my bitcoin-qt's setting to 0.0005 after having several very slow and later two stuck txs).

The other problem here is simply that currently (as in the current version of) Bitcoin does not scale - so until this is better resolved then there is simply nothing else that can be done (although at least if miners included closer to the 1MB of txs per block we'd have far less backlog).
full member
Activity: 134
Merit: 100
It should be in everyone's interest to support mining. The exchange rate can double within a day. Increasing the hashing power, and with it the security of the network, takes time.

But isn't the increased value of Bitcoin with respect to FIAT reward enough? @ 1000 USD / BTC - Mining pools are receiving 25,000 USD worth of value for every block successfully mined. If there are 144 blocks / day and a mining pool gets 8 of those blocks (~5.5%) - that's over 200,000 USD in revenue to share per day. Surely, a more reasonable approach is to discount fees and work on increasing the value of Bitcoin through adoption as a global payment mechanism. You don't do this by trying skim extra gravy off the top and penalizing those who don't pay.
newbie
Activity: 45
Merit: 0
I agree. Blockchain.info's simple "Send Money" does not include any settings for a fee. The MUCH scarier sounding "Advanced Send" (which does not actually look scary at all) does include a setting for miner's fees.

I think the notion that YOU can choose to pay or not pay a fee or even choose how much to pay is a libertarian way of setting things up, something that works well with the notion of what bitcoin is supposed to be. However, this isn't necessarily the best option from a usability perspective - people don't want to be bothered with thoughts of transaction fees. I've had a few orders getting stuck on my bitcoin business for 24+ hours because users don't know they should include a small fee for faster confirmation.

Maybe clients setting a default fee that ensures transactions will go through quickly is a good idea ?

Basically make the fees opt-out and keep it reasonably small (under 5 cents of a dollar, this is hard with the fluctuating exchange rate of course..). This will also give huge incentive for miners to continue operating the network because after all, this would not be possible without all those nodes.
full member
Activity: 168
Merit: 100
The biggest problem is not the fee (people are used to much, much higher fees), but that many new users are unaware of it. They only find out about it after searching for answers why their transaction does not get confirmations.

The wallets need to make it easier to set the fee. Some wallets won't even show it because it was left out for simplicity/space.

It should be in everyone's interest to support mining. The exchange rate can double within a day. Increasing the hashing power, and with it the security of the network, takes time.
newbie
Activity: 45
Merit: 0
Wouldn't a simple solution be to disallow unconfirmed inputs to be used for downstream output ? It's like your bank, sometimes your available balance and ledger balance are different.

The fees going up rapidly are a symptom of the increasing value of bitcoin. That will be adjusted when the value is more stable. From a long term perspective this shouldn't be a problem if bitcoin value doesn't jump orders of magnitude ($100 -> $1000) in a few days.

I've moved bitcoins with almost instant confirmation while paying a $0.05 transaction fee. I just choose the fee manually on my client though..
full member
Activity: 134
Merit: 100
You are taking things out of context.

Please show me a single user that
a) is using standard transactions

I can't show this, but that isn't the issue. Since you *can* spend unconfirmed outputs - and this was done with the stock Bitcoin daemon - , it doesn't matter if your transaction includes a fee if one of the ancestors did not. Every downstream transaction is delayed as a consequence. This actually happened to this transaction: https://blockchain.info/tx/35c4e8c86075cf3f5335e029abd2d981af011c142b56e04c0a6d8b0d588d32ae created by the stock Bitcoin Daemon with the 'Sendtoaddress' call. This ancestor transaction https://blockchain.info/tx/99e6c22980571d1733986d950f564854393777ba0905d08aae36d7f4f64e4a3a included no-fee and as a consequence because it was picked as an input the downstream transaction was delayed. Both were confirmed +300 minutes after being broadcast... 5 hours. The downstream transaction included a fee.

b) paid the MINIMUM fee

Only... there is no minimum fee for some transactions - 0.0 is perfectly acceptable. My understanding of Transaction Fees is that they were probably conceived as a antidote to potential abuses of the transaction mechanism (spamming - you're less likely to attack something if it costs you money to do so). As for financial remuneration, the block reward was designed to suffice for miners until such time as it became inconsequential. Transaction fees were a bonus, but not the driver. Cherry picking is clearly happening and it's causing problems (Example: https://bitcointalksearch.org/topic/unconfirmed-transactions-339871)

c) didn't create a tx w/ unconfirmed inputs (which have to be confirmed before the tx can confirm)

Again, your citing some arcane knowledge of the inner workings of Bitcoin to make this happen. The stock Bitcoin client happily uses unconfirmed outputs to generate new transactions. These transactions *will not confirm* until the ancestors have.

Consider also the scenario where a business receives and sends Bitcoin funds (same way as PayPal merchants do). If the business's wallet software decides to use an unconfirmed output as input from a client who paid using a 0 fee transaction as part of a downstream transaction or chain of downstream transactions and that client subsequently double spent the original transaction with a fee - all the downstream transactions would be invalidated if the subsequent fee including transaction were prioritized. This could mean significant financial losses for the business not to mention the nightmare of tracing and unwinding of the now invalid transactions.

The fee is currently 0.1 mBTC (~$0.05).  While this is not free it is pretty much cheaper than any other payment system.
Credit Cards: $0.30 + 2%
PayPal: $0.30 + 3%
ACH: $0.25 to $0.50
Bank Wire:  $10 to $25
International Bank Wire: $25 to $40
Check processing (business): $0.50 ea
etc

Do you really believe Amazon, Wallmart, Best Buy etc - some of the worlds largest retailers pay 0.30 USD per credit card transaction? The fact is in the last 72 hours Bitcoin on at least one exchange (BTC China) priced 1 Bitcoin at 1,100 USD. At this point, users on that exchange moving their Bitcoins and paying the minimum transaction fee were paying 0.11 USD per transfer. That is not cheap.

Most users with tx "stuck" issues involve either
a) a free as in no fee at all

Which are perfectly permissible. The sudden 'requirement' for a fee even though it is not mandated by the protocol just to get even remotely reasonable confirmation time is ridiculous.

b) giant bloated dust spam tx that miners are reluctant to include in blocks

Yes. 0.0001 BTC (currently) per 1KB.

c) tx which have no fee issues like using unconfirmed outputs as inputs.

Which the stock Bitcoin Daemon happily permits and you are none the wiser until your transaction suddenly doesn't go through.
donator
Activity: 1218
Merit: 1079
Gerald Davis
Current problem here is that Bitcoin price moves signifcantly more rapidly than fee amendments. In the last 72 hours, the price of one Bitcoin on BTC China peaked at circa 1,100 USD. Moving one BTC with the minimum fee of 0.0001 BTC would cost you 11 cents. Amazon pay less than that to process a credit card transaction. 

When the price stabilizes the min fee can be reduced.  It doesn't have to be exactly fixed in fiat terms.  Throughout the history of Bitcoin despite the exchange rate rising 60,000,000% the min fee has been ~0.5 cents to 10 cents per KB. 

The last min fee reduction happened when Bitcoin sustained an exchange rate >$100 and after the reduction the fee was ~1 US cent. 
donator
Activity: 1218
Merit: 1079
Gerald Davis
There seems to be a substantial backlog (6000) of Bitcoin transactions building up thanks to the increasing number of users taking to the technology (https://bitcointalksearch.org/topic/transactions-wait-longer-but-pools-generate-small-blocks-338999) and numerous questions in the [Technical Support] board (https://bitcointalk.org/index.php?board=4.0) over why transactions are seemingly now stuck in Limbo even when they include a fee.

Suggestions have been mooted such as "include a higher fee" and "be more generous", but how does this work in the context of most users? The average person will do what their wallet tells them. They'll have no idea what constitutes a suitable fee for inclusion in a block and when they realize that even if they include the required 0.0001 BTC minimum fee, this puts them in the same position and requires they still wait 12-48 hours for their transaction to confirm - it's going to raise serious questions over Bitcoin's scalability...

In addition, according to CoinMill - the cost of 1 BTC is currently 641.84 USD and a transaction fee of 0.0001 BTC is 0.06 USD (6 cents). 0.0005 (the old fee) is 30 cents. As Bitcoin appreciates (if it does), the cost of transactions relative to the value of a Bitcoin grows substantially.

This makes it pretty uneconomical for any merchant to engage in using Bitcoin as a currency as A) they'll be waiting ages for their transaction to confirm if the user incorrectly attaches an 'unacceptable' fee and B) the cost of moving BTC is likely to rapidly meet or exceed that of preexisting payment methods such as ACH, Debit and eventually Credit cards... and in the case of the latter two it doesn't generally take 24-48 hours to even acknowledge your transaction exists.

Are there any solutions to this conundrum?




You are taking things out of context.

Please show me a single user that
a) is using standard transactions
b) paid the MINIMUM fee
c) didn't create a tx w/ unconfirmed inputs (which have to be confirmed before the tx can confirm)

and has a tx stuck for hours.

The fee is currently 0.1 mBTC (~$0.05).  While this is not free it is pretty much cheaper than any other payment system.
Credit Cards: $0.30 + 2%
PayPal: $0.30 + 3%
ACH: $0.25 to $0.50
Bank Wire:  $10 to $25
International Bank Wire: $25 to $40
Check processing (business): $0.50 ea
etc


Most users with tx "stuck" issues involve either
a) a free as in no fee at all
b) giant bloated dust spam tx that miners are reluctant to include in blocks
c) tx which have no fee issues like using unconfirmed outputs as inputs.

hero member
Activity: 784
Merit: 1000
Current problem here is that Bitcoin price moves signifcantly more rapidly than fee amendments. In the last 72 hours, the price of one Bitcoin on BTC China peaked at circa 1,100 USD. Moving one BTC with the minimum fee of 0.0001 BTC would cost you 11 cents. Amazon pay less than that to process a credit card transaction.  

What's the problem? That the value of your holding increases thousands of dollars while you have to pay an additional fee of only several cents per transaction? The Amazon example is red-herring, the cost has already been included in the price of the goods, either willingly or unwillingly, and dollar never fluctuates as much.

Sometimes I feel that it's not only the Wall street bankers who are snobbish and stingy.
legendary
Activity: 1652
Merit: 2301
Chief Scientist
The fees can be lowered if the price rises too high. They have already been lowered several times for exactly this reason, and there's no reason to think it won't happen again.

Transaction fees are likely to go up (in dollar terms) for a while, until some engineering work is done to reduce the "orphan cost" for miners to include more transactions in their blocks OR mining pools / miners collectively agree to include more transactions for the good of the whole system.

In the very short term, you can ask mining pool operators to create larger blocks. If they refuse, then switch your miners to a pool that does.

If they all create larger blocks, then we get more transactions and more orphan blocks, but the cost of those extra orphan blocks is spread across everybody mining, so everybody gets just as many bitcoins (on average) as they would with smaller blocks.
full member
Activity: 134
Merit: 100
Current problem here is that Bitcoin price moves signifcantly more rapidly than fee amendments. In the last 72 hours, the price of one Bitcoin on BTC China peaked at circa 1,100 USD. Moving one BTC with the minimum fee of 0.0001 BTC would cost you 11 cents. Amazon pay less than that to process a credit card transaction. 
legendary
Activity: 4522
Merit: 3183
Vile Vixen and Miss Bitcointalk 2021-2023
Suggestions have been mooted such as "include a higher fee" and "be more generous", but how does this work in the context of most users? The average person will do what their wallet tells them.
This is way Bitcoin was always meant to work: more fees = faster confirmations; less fees = slower confirmations. At first, when transaction volume was lower, it didn't work that way; most or all transactions were confirmed quickly regardless of fees, and apparently some people were fooled into thinking that was normal, and now that the fee system is working properly, people are complaining that it's broken.

This can easily be fixed by adding an "Urgency" option to the Send Coins tab, allowing users to easily select between "Urgent" and "Not Urgent" transactions, and hopefully showing the expected fee and confirmation time for each option. Average users will easily accept that they can pay more fees to get faster transactions (they already do for things like postage), we just need to make that option more accessible.

In addition, according to CoinMill - the cost of 1 BTC is currently 641.84 USD and a transaction fee of 0.0001 BTC is 0.06 USD (6 cents). 0.0005 (the old fee) is 30 cents. As Bitcoin appreciates (if it does), the cost of transactions relative to the value of a Bitcoin grows substantially.
The fees can be lowered if the price rises too high. They have already been lowered several times for exactly this reason, and there's no reason to think it won't happen again.

EDIT: Typo
full member
Activity: 134
Merit: 100
There seems to be a substantial backlog (6000) of Bitcoin transactions building up thanks to the increasing number of users taking to the technology (https://bitcointalksearch.org/topic/transactions-wait-longer-but-pools-generate-small-blocks-338999) and numerous questions in the [Technical Support] board (https://bitcointalk.org/index.php?board=4.0) over why transactions are seemingly now stuck in Limbo even when they include a fee.

Suggestions have been mooted such as "include a higher fee" and "be more generous", but how does this work in the context of most users? The average person will do what their wallet tells them. They'll have no idea what constitutes a suitable fee for inclusion in a block and when they realize that even if they include the required 0.0001 BTC minimum fee, this puts them in the same position and requires they still wait 12-48 hours for their transaction to confirm - it's going to raise serious questions over Bitcoin's scalability...

In addition, according to CoinMill - the cost of 1 BTC is currently 641.84 USD and a transaction fee of 0.0001 BTC is 0.06 USD (6 cents). 0.0005 (the old fee) is 30 cents. As Bitcoin appreciates (if it does), the cost of transactions relative to the value of a Bitcoin grows substantially.

This makes it pretty uneconomical for any merchant to engage in using Bitcoin as a currency as A) they'll be waiting ages for their transaction to confirm if the user incorrectly attaches an 'unacceptable' fee and B) the cost of moving BTC is likely to rapidly meet or exceed that of preexisting payment methods such as ACH, Debit and eventually Credit cards... and in the case of the latter two it doesn't generally take 24-48 hours to even acknowledge your transaction exists.

Are there any solutions to this conundrum?


Pages:
Jump to: