• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

Minimum Fees

Status
Not open for further replies.

strophy

Administrator
Staff member
Dash Core Group
Dash Support Group
Problem
  • Minimum network fees were last set in January 2018, near the peak
  • USD rates have fallen >95% in coordination with the price
  • At $0.0002, median fees no longer cover the estimated cost of transactions
  • Fees are now insufficient to prevent frequent spamming
Proposed Solution
  • Fees of USD $0.01 would add ~$1 to monthly masternode rewards, which would
    • Result in 19 incremental masternodes assuming ROI is the same
    • Consume 19,000 Dash in masternode collateral
    • Add ~0.4% to the value of Dash
  • Hypothesis: fees between 1-2 cents would probably not affect usage
    • Users frequently reference “fees under 1 US cent,” but few understand just how low they are
    • Most users don’t differentiate between “very low” and “extremely low”
Key Questions for Discussion
  • What should minimum fees be on the network?
  • By what mechanism should they be adjusted in the future?
YouTube link: More Rational Fees Could Help
Lire en français
 
Last edited:
What should minimum fees be on the network?
I don't really have an exact minimum fee in mind, it should be in a range that still keeps Dash competitive with regards to fees cost. I trust Dash developers can make a good estimation on whats needed, with regards to minimum fees
(like they did in the past)

By what mechanism should they be adjusted in the future?
Maybe through a polling proposal from Dash Core Group
 
$0.01 is a significant fee in places like Venezuela. If our network can be spammed that easily, then maybe we need to scale better.
I don't think we should be able to decide a minimum fee. Shouldn't current network congestion be a deciding factor?
 
fees no longer cover the estimated cost of transactions or prevent spamming...

What's the level that we would cover the cost of transactions? At what level do we prevent ENOUGH spamming? I'd doubt that we'll prevent all spamming right?

Generally speaking I think we need to keep our laser focus on our target market and as Dandy's alluded to above, keep fees as low as PRACTICAL (keeping the problem of covering costs and avoiding spam in mind). If we're going to set a min fee, I'd say we should base it off of the network requirements (to keep the network incentivized/spam free) more than potentially unrelated fiat based metrics..

What mechanism should we use to adjust? How about some measure of network demand? I just think we need to keep it as low as practical to stay relevant on a global scale...not just the western world.
 
Last edited:
I wish we could adjust fees with a spork-like mechanism. Right now we need to release and deploy a whole new version of the software in order to adjust fees.

I don't think oracles are reliable enough to be used as a basis for setting tx fees on a blockchain.
 
My gut tells me the right fee for a normal Dash tx is about five cents. We are attempting on-chain scaling, and IMHO, that rules out micro-transactions. Compared to Venmo and Paypal, a five cent tx fee is miniscule.
 
Who gets to decide what constitutes spam or not?
I’d say if the transaction has no economic purpose (e.g., stress tests) for the user making the transaction, that is a good threshold for defining spam. Maybe trying to define what constitutes spam is irrelevant. As long as the cost of a transaction (primarily data storage costs) is covered by the minimum fee, that is a sufficient answer. If a user is paying more than the cost, whether they are transacting or hashing their wedding vows on the blockchain, we wouldn’t need to care. It also means that if we cannot conduct a particular micro transaction efficiently enough because the cost of storing the data is too high, that’s a transaction we couldn’t economically service anyway (and therefore is part of a market we should not be targeting). Micro transactions likely require a different optimization (low cost) than Dash (liquidity, speed, user friendliness), meaning different technology. We cannot be all things or service all markets.
 
We are attempting on-chain scaling, and IMHO, that rules out micro-transactions.

Just a thought, but we may find that some micro-transaction use cases can be implemented on layer 2 rather than layer 1, thus alleviating fee concerns to an extent.
 
Ryan,

I feel like I'm discussing the finer points of bench press with the Rock but here goes...

Do we need to pin a fiat value on the min transaction fee? It makes sense to me to charge at least what it costs the network, but we pay those costs in DASH right? Or are you saying that there's some pragmatic/real world constraints/considerations that would necessitate a certain amount of fiat per transaction? With the volatility, just seems like any prediction has a 97.2314% chance of being off slightly.

Regarding the market... you obviously have the hammer on this, but if the transaction fees are higher is the usability not lower? Could we create tiered fees...like one amount for simple stuff and another for wedding vows/dash platform stuff?

Thanks for taking the time to interact with the community.
 
Last edited:
For a while, I was convinced that we needed to go back to charging extra for IS. I thought this was necessary because IS locks are a limited resource. There are only so many that can be created per second before the MN network becomes overwhelmed and other MN services are impacted negatively.

I now think that we can limit IS transactions based upon another scheme -- IS lock rationing.

Auto-IS locks could be rationed automatically if there are too many transactions per second. For example, the network might temporarily limit auto-IS to only transactions whose inputs total at least 0.1 Dash during a surge in transactions.
 
> What should minimum fees be on the network?
> By what mechanism should they be adjusted in the future?


There should be no min fee on the network. Fees on transactions should be set by the users and their wallets then miners choose wether the fees are big enough to go into blocks. This is decentralized crypto 101 people. Fees should be an emergent free market mechanism not set by a central authority (government central banking 101).

> Problem Minimum network fees were last set in January 2018, near the peak

You are close to identifying the problem. The problem is DCG apparently thinking they should set the fees for the network rather than leaving it up to miners, wallets and users (in other words the free market). Setting fees at the top of a bull market causes this problem so now you want to set fees at the bottom of a bear market and don't see that causing a problem? Yall really are acting like a government/central bank.

And all this talk of spam is asinine. You don't decide what technically valid transactions are not good enough for you so that they should not be allowed, if they pay a fee that miners find acceptable they are not spam.

If you are asking what the default fees should be in dash core wallet please clarify the topic and questions by wording them properly.
 
Fees of USD $0.01 would add ~$1 to monthly masternode rewards, which would
  • Result in 19 incremental masternodes assuming ROI is the same
  • Add ~0.4% to the value of Dash

In Ryan's talk he said (and showed on a slide) about $0.46c per month to each MN resulting in 9 new masternodes and add 0.2% to the price of dash.

It's as if these figures are so meaningless they may as well be made up.
 
Last edited:
There should be no min fee on the network. Fees on transactions should be set by the users and their wallets then miners choose wether the fees are big enough to go into blocks. This is decentralized crypto 101 people. Fees should be an emergent free market mechanism not set by a central authority (government central banking 101).

> Problem Minimum network fees were last set in January 2018, near the peak

You are close to identifying the problem. The problem is DCG apparently thinking they should set the fees for the network rather than leaving it up to miners, wallets and users (in other words the free market). Setting fees at the top of a bull market causes this problem so now you want to set fees at the bottom of a bear market and don't see that causing a problem? Yall really are acting like a government/central bank.

And all this talk of spam is asinine. You don't decide what technically valid transactions are not good enough for you so that they should not be allowed, if they pay a fee that miners find acceptable they are not spam.

If you are asking what the default fees should be in dash core wallet please clarify the topic and questions by wording them properly.

To clarify, Dash operates like other Bitcoin-based cryptocurrencies - there is a minimum fee that will generally result in a transaction being propagated. And yes, technically that is a _default_ not a hard limit. But practically, I doubt many nodes ever adjust that or have any idea that you could. For reference, that value is defined here in Bitcoin - https://github.com/bitcoin/bitcoin/blob/master/src/validation.h#L52-L53

Regarding changes in that value - the last change was a reduction in the default by 10x which would have put it closer to the free market mechanism. If we are splitting hairs, I would also point out that Bitcoin restricted 0-fee transactions long before Dash did.

As far as DCG "thinking they should set the fees for the network", Ryan specifically addressed this in his presentation at the open house and said DCG would submit proposals to the network regarding any fee adjustments. The central authority here is the network, not DCG.
 
Ryan,

I feel like I'm discussing the finer points of bench press with the Rock but here goes...

Do we need to pin a fiat value on the min transaction fee? It makes sense to me to charge at least what it costs the network, but we pay those costs in DASH right? Or are you saying that there's some pragmatic/real world constraints/considerations that would necessitate a certain amount of fiat per transaction? With the volatility, just seems like any prediction has a 97.2314% chance of being off slightly.

Regarding the market... you obviously have the hammer on this, but if the transaction fees are higher is the usability not lower? Could we create tiered fees...like one amount for simple stuff and another for wedding vows/dash platform stuff?

Thanks for taking the time to interact with the community.
1) I don't think it needs to be perfectly aligned to be effective, at some point you are just splitting hairs and I'd be really happy with 97% accuracy. It also varies with the number of nodes storing the data (you need to ensure the fee is high enough to incentivize "enough" nodes to exist, which is hard to define precisely).
2) It is difficult for the network to be aware of the fiat price of Dash (at least not without introducing risks), so it would probably be best to simply periodically reset the minimum fee (perhaps whenever we do a major release), which I think is good enough and very pragmatic.

Higher fees impacting usability? It's a balancing act... too low and you get network spam like we've seen with the stress tests, and that affects usability negatively. Too high, and the fees start to impact people. We are currently too low, imo.

By the way, Dash Platform is implementing its own separate chain and fee structure already. My proposal was only regarding layer 1 dash payments.

I have heard of some use cases in Venezuela that even a charge of 0.01 USD would be too high, but we're at 0.0004 USD or something, so there is certainly room to play with that better balances spam risk to the network, without affecting real world transactions too much.
 
In Ryan's talk he said (and showed on a slide) about $0.46c per month to each MN resulting in 9 new masternodes and add 0.2% to the price of dash.

It's as if these figures are so meaningless they may as well be made up.
I assumed that 50% of the transaction fee went to masternodes and that masternodes would value the incremental income in line with historical ROI demanded by the masternode market of about 6.3% (latest number from Q3). I also assumed about 15,000 transactions per day. The math itself is pretty straightforward if you input those assumptions. It's a pretty small impact today, but given our growth rate in transactions it would become more meaningful over time and reduce the impact of the block reward reductions.
 
Ryan,

Seems like we'll have a hard time nailing down the minimum fee until we know how much security is enough. Could we repeat the stress test (https://www.dash.org/2018/11/26/stress-test/) on test networks? That might also be interesting for our consensus mechanism discussion...and could be a pretty radical approach to financial sciences ; ) I'd really like to know what DCG has planned in this arena or what your thoughts are on this...

To answer your question as directly/realistically as possible though....it's my opinion that nobody really worries about transaction fees when they're less than 1% of the amount they're sending. Just to be safe if we made that 0.1% of the median transaction amount in our target market(s) we could still make huge increases. It's probably worth noting though that this is kind of a slippery slope as this is a direct incentive for people to use another network/alternative means (cash included) to send money...so any increases should be done carefully and with much thought. Crypto isn't super useful for people who have money and bank accounts...
 
Last edited:
Ryan,

Seems like we'll have a hard time nailing down the minimum fee until we know how much security is enough. Could we repeat the stress test (https://www.dash.org/2018/11/26/stress-test/) on test networks? That might also be interesting for our consensus mechanism discussion...and could be a pretty radical approach to financial sciences ; ) I'd really like to know what DCG has planned in this arena or what your thoughts are on this...

To answer your question as directly/realistically as possible though....it's my opinion that nobody really worries about transaction fees when they're less than 1% of the amount they're sending. Just to be safe if we made that 0.1% of the median transaction amount in our target market(s) we could still make huge increases. It's probably worth noting though that this is kind of a slippery slope as this is a direct incentive for people to use another network/alternative means (cash included) to send money...so any increases should be done carefully and with much thought. Crypto isn't super useful for people who have money and bank accounts...
Yes, changing the fee is simply an optimization. It isn't a solution to any of the issues I raised (at least not in the short term and not on its own). ASU is actually engaged in research on the minimum size of the MN network to ensure high security. The transaction fees should eventually cover the expenses of network of that size. In the meantime, this optimization is less important, other than to protect the network against spam / DoS attacks that might be possible if fees are too low. I think we should err on the side of caution when raising rates and keep them well below one cent until we have more scientific data that can inform the decision.
 
Status
Not open for further replies.
Back
Top