✅ [RFC] Overhauling the Governance Fee Flow

Summary

This RFC would like to receive feedback on the overhauling of the current governance fees distribution of the mStable Protocol as well as propose the utilization strategy of these funds.

Currently, 100% of generated governance fees (10% of the total yield generated by the protocol, with the remaining 90% going straight to Save users) are used to market buy MTA and distribute them to stakers of both MTA and BPT.

Beyond this buyback distribution, MTA stakers receive additional rewards through the Emissions Controller (close to 20% of all weekly emissions based on historic distribution data). This is likely to remain the case for the remaining 6 years of distribution.

As of today, the TreasuryDAO (responsible for the annual management of burn rate and the long-run optimization of the project) receives 0% of the revenues generated by the protocol.

It’s essential for sustainable governance of the protocol and its contributors that mStable create organic revenue lines. We therefore propose to reroute some or all of these governance fees used to buyback MTA to the TreasuryDAO instead.

Primarily, this is being done to rely less on MTA Bonds (we raised 423k mUSD worth of bonds so far, with a continuous future demand for them via Olympus Pro or Solv Protocol in the future if we don’t create other income streams) and instead utilize natively generated assets from fees (mUSD & mBTC) for liquidity.

Abstract

Before the launch of the Emissions Controller last year, the protocol used the governance fee revenue in the Buyback & Make pool on Balancer.

Since then, we rerouted these governance fees to purchase MTA directly off the market and distribute to stakers. This left the treasury and protocol with no organic way of capturing revenue and accruing value back to the treasury, and thus forms the basis of this RFC to remedy this.

Therefore, it is proposed to instead reroute a portion or the entire governance fee allocation to the TreasuryDAO and generate a basic income stream for the DAO to begin funding operational expenses, as well as accrue a stake for future asset management ventures in the ecosystem.

As MTA stakers already receive a considerable weekly MTA allocation every epoch and directly benefit from the revenue going to the Treasury, this should easily offset their slight dilution of rewards, as these extra rewards did not contribute to more users staking their MTA.

In order to streamline asset management and funding operations for the TreasuryDAO, it is also suggested to allow the DAO to utilize the generated revenue according to a specific strategy to be included in the actual future TDP, as well as be held accountable in the quarterly Treasury reports in a way that maximizes value retention and longevity of funds, as well as have as its primary goal the maximisation of perpetual funding of the mStable operations and protocol for the next 2 to 3 years.

As this move would sacrifice some aspects of decentralization, it is proposed to set an initial limit of 350,000 mUSD worth of generated fees initially, and then review this portion again according to how well the DAO has managed the funds over the period and decide then to either increase this buffer or revert all decision making back into the hands of Meta Governors.

At the current rate of roughly 6-10k mUSD worth of governance fee buybacks, this will allow the TreasuryDAO to utilize these funds for most of 2022, before needing to approach Meta Governors once again and re-visit this limitation.

Motivation

mStable has grown significantly in 2021: The core contributor number doubled, we’ve earmarked the remaining MTA emissions for the ecosystem for the next 6 years, and have grown our Asset Management subDAO position significantly.

With this growth, so have the expenses that the protocol has to carry. Sustainable yield has always been a top priority, and so it comes as a logical step to do our best to recreate this sustainability on the operational level as well.

This means that we will need to very opportunistically allocate revenue generated in the ecosystem to be able to offset a lot of the MTA Bond fundraising that will otherwise need to take in the future, and be able to fund operations and runway for the protocol on it’s own in the near future.

In order to do so, this RFC marks the beginning of this endevaour, and should also mark the beginning of a more free-flowing usability of these funds that stops seeking approval for every mUSD spent, in order to be able to take advantage of the myriad opportunities in the system (see for instance the opportunity that Convex offered, but that the cumbersome governance model denied us to really take advantage off).

Pros

  • The MTA token and the mStable protocol will start accruing value again
  • The protocol will be able to generate revenue to fund its operational costs as well as engage utilization strategies
  • It would set the protocol focus on sustainable long-term growth and put the mStable Treasury in the centre of it
  • Save significant amounts of gas on the cumbersome process of exchanging native mAssets for MTA to distribute to stakers & avoid stakers double-dipping rewards

Cons

  • MTA stakers will receive slightly less MTA than before
  • We give up certain parts of decentralization for speedier utilization of funds in the ecosystem

Next Steps

It is suggested that the community comment on this RFC in the coming days, and bearing no significant opposition or change in ideation, we would move ahead with this RFC in the coming weeks and create a formal draft proposal on Github to be used for review.

Meta Governors are encouraged to provide as much feedback as possible until then, so we can create the best possible outcome for mStable and its users.

4 Likes

I am hugely in support of this.
Having capital flowing from an organic revenue stream is of the highest importance as it can be then utilised to grow the treasury and give long term sustainability to the protocol and its contributors.

Thanks for the good work @mZeroNine

3 Likes

I appreciate the mStable Treasury needs to be sustainable which is why I personally voted for MTA emissions to be sent to Treasury dials.

I also appreciate what that directing part of the protocol revenue to Stakers creates value for MTA and incentives Stakers to optimise the protocol’s revenue.

Maybe a way forward is to increase the governance fee from 10% to 20% and send 10% to the Treasury and keep the other 10% going to MTA Stakers. It means Savers will now get 80% of the revenue rather than the current 90%. This is comparable to other protocols like Yearn which take a 20% performance fee. But unlike Yearn, mStable does not take an annual 2% fee on deposits.

Also, I’ve had a go at documenting the flow of value through the mStable protocol starting with mUSD on Mainnet and Polygon. This includes where revenue is collected and distributed to Savers and Stakers. https://github.com/mstable/mStable-process-docs/blob/main/valueFlows/README.md#value-flows

3 Likes

Great post, thanks for bringing this up. I think the Treasury SHOULD receive a share of the revenue. There are a few open questions:

  • Do we still keep the Treasury Dial? Because then there are two sources. I would be for disabling the Treasury dial in this case. But I see also a case for leaving it.
  • @naddison How much work will this be? Onetime development and then ongoing?
  • This would lower the APY for Save and together with the mUSD3CRV having lower rewards, Save utilization would increase. Double lowering the APY worst case.
1 Like
  • It’s possible to disable the Treasury dial as part of this change. Any votes to the Treasury dial won’t be counted so the Treasury dial MTA will be redirect to the other dials.
  • We need to do a change to redirect part of the gov fees to referrers so adding this on top won’t be much extra work. See MIP-22 Alliance Referral program
  • If the base tier of the referrer program is going to take 20% of the gov fees, then non-referred deposits taking 20% split between Savers and Treasury could work.

Thanks a lot for chiming in everyone, really appreciated!

So, from a basic look on the replies, there really is 3 major questions we should ask and get some basic consensus on:

1.) Should we increase the governance fee, or leave it as it is?
2.) If we begin rerouting governance fees back to the TreasuryDAO, should we still keep a TreasuryDAO dial?
3.) Is the incentivization to redirect fees to stakers actually working, or is it simply benefitting whales that are already in these pools?

Personally, I concur with @dimsome and think we should leave the fee at 10% for now, as we do not want to risk to lose our monopoly on the best savings rate in DeFi over a few thousand dollars weekly.

I am of course biased, but I think that we should retain the capacity to reroute additional “raw” MTA rewards to the TreasuryDAO, as we no longer possess a Buyback & Make pool, and this dial serves as a sort of stock buyback from the emissions, which is especially powerful considering most MTA get emitted in the first years.

Personally, I’d be more than open to repurpose this dial in the coming years when most emissions have happened and the dials overall carry less weight compared to total MTA in the ecosystem.

Lastly, I’d disagree with continuing to let stakers double-dip rewards. If we look at the current dial distribution, a lot of unimpactful pools get way too much MTA per epoch (looking especially at the BTC pools here and some feeder pools), so I think it’s save to assume that delegators to these dials simply have their own profit maximization in mind, and don’t really care for the longevity of the protocol or the MTA token at all.

We incentivize greedy participants with even more MTA, and the treasury and token price is suffering as a result. This way, we also cannibilize the treasury’s ability to utilize native mAssets to make purchases in the ecosystem.

If I recall correctly, a separate discussion will make it to the forum very soon to address this problem in detail, but for the sake of argument here, let’s just say that at the very least we ought to find a better way to incentivize stakers to do a good job.

Looking forward to hearing your opinions on the above, and let’s try to move this forward by getting as much feedback as possible on the above, so we can create a poll and a subsequent TDP :))

Point by point:

  1. I would be okay raising the fee to 15%, though leaving it at 10% is okay too. I think there are other ways of offsetting the risk to the Save rate, and if it truly is only a few thousand dollars weekly, I don’t know that there would be a lot of impact felt by Savers, but the extra income would add up over time to the treasury.

  2. I would prefer to keep the dial. The purpose (IMO) of the dials is to allow MTA holders to steer rewards, and if some feel ‘extra’ should go to the treasury, I feel it’s wrong to take that choice away. If we take it away, it’s rhetorically difficult to justify its initial inclusion, and puts into question other dials as well.

  3. It’s benefitting everyone in the pools/holding MTA. I don’t feel it’s useful to frame the discussion in terms of ‘whales’ and ‘not whales.’

I confess I’m a little confused by this criticism. To me, the observed behavior is ‘gauges working as intended.’ MTA holders are voting in their own self-interest, and gauges enable this directly. I don’t feel like it’s (broadly) useful to frame gauge votes in a ‘whats-best-for-the-protocol’ way. MTA holders are exercising their voting power.

I think this proposal is great, and I really like the idea of the treasury being allowed to make good use of revenues to accrue value to the token. I didn’t like the buyback-and-make to begin with, so I feel good seeing this money used in another way.

I’m unlikely to be in favor of moves that impose more limitations on the dials themselves beyond what is already in place. I’ll keep an open mind though and look forward to persuasive arguments.

Great feedback, and herein lies my point. If this is indeed the working-as-intended behaviour, then why is the protocol incentivising this behaviour via granting additional MTA from revenue buybacks on top of the already generous MTA rewards stakers already give themselves via dials?

I feel these fees belong to the protocol to use in order to ensure the longevity of mStable as a project, since the responsibility for this cannot rest with stakers, as they have to take care of themselves so to say.

Well, on that we certainly agree. The protocol must ensure its own survival, and I think even increasing that cut is acceptable. I don’t feel compelled by the ‘double-dipping’ framing, but I guess we ended up in the same place in the end.

We had internally a really good discussion with @mZeroNine and there are a few considerations:

  • option to remain 10% but split half going towards treasury

  • increase to 20% and split between stakers and treasury

  • optionally could remove the dials for Treasury and/or staking so there are single sources for the accrual of rewards

  • Treasury can remain collecting in mUSD while stakers can acrrue still be in MTA

  • Alternatively, accrued governance fees in mUSD for all, but would require some work to upgrade the smart contracts (might not be the most pressing tasks currently in the pipeline)

Personally, I would be against:

  • removing governance fees to stakers ( stakers should be incentives to increase protocol revenue, otherwise we encourage more self-serving)

Happy to help to resolve this in a manner that doesn’t divert focus from the current priority within the team!

Also great point by @trustindistrust . Very fair statement to say that we gave this power to stakers and now we should tolerate it. We shouldn’t want to change the system so much that we bend the rules towards protocol goals.

1 Like

Thanks for all the feedback guys, and as dims said, we discussed this in greater depth yesterday with the team, and I think the above points would strike a fair balance between moving forward and taking additional time to develop.

I also think through the conversation the “double-dip” frame that you weren’t comfortable with @trustedindistrust also became apparent, and I believe that if we were to pay out rewards in native mUSD, this issue would naturally disappear, while at the same time giving the treasury a cash flow to utilize without creating sell pressure on MTA.

So the last remaining questions we have to find a basic consensus on now are:

1 - Whether keep the 10% governance fee and split it 5/5 or increase it to 20% and split 10/10
2 - Remove or change the dials & fee allocation
3 - Change the governance fee payout from MTA back to mUSD (which is what the fee natively accrues in anwyays, so actually much more cost-efficient and elegant)
4 - Pay everyone’s governance fee in mUSD or just the TreasuryDAO for now

My personal takes:

1 - I think we simply leave the 10% for now and then split it 5/5 in order to ease people into the change and avoid causing a bias to vote differently on this MIP

2 - Since the chat yesterday I think we found a good in-between, so probably best to neither touch the dials, nor ask for the removal of fees

3 - A no brainer in my opinion, and will help the Treasury be much more liquid in the future

4 - Some fair points where raised against doing this right away, but I personally think sooner or later we’ll need to tackle this anyways (thinking mStable v2 and saving gas as well as distributing a stable asset rather than governance rights tokens), and moving everyone to mUSD will imho have a big net positive effect for MTA price appreciation, as well as align stakers incentives to vote for the dials that yield most mUSD instead of most MTA for themselves.

It also frees the protocol from forcing people to receive MTA, which they might want to sell afterwards, and gives them instead the choice to keep their fees in a stable asset, and then purchase MTA if they so desire to increase their reward allocation. To me, this seems like a virtuous cycle for MTA rather than the current downward pressure we experience.

1 Like

@mZeroNine
1 - Whether keep the 10% governance fee and split it 5/5 or increase it to 20% and split 10/10
I’m really fine with both. However, 5% of the fees could be quite little to bootstrap substantially the asset Management sub-DAO.

2 - Remove or change the dials & fee allocation
I would lean on keeping the Treasury DAO dial, especially as we’re heading towards V2 and protecting MTA liquidity value.

3 - Change the governance fee payout from MTA back to mUSD (which is what the fee natively accrues in any way, so actually much more cost-efficient and elegant)
100% think having the fees in mUSD would prevent unnecessary MTA sell pressure while creating more resilient assets for the treasury

4 - Pay everyone’s governance fee in mUSD or just the TreasuryDAO for now
I don’t know how complex that would be. How is the Save yield → Gopvernance fee loop working?

Apologies that I haven’t made time to weigh in on this discussion before now. This is my mental model when thinking about how this flow should work:

  • The DAO has a pool of resources to be allocated. In the short term, this is largely MTA which has been earmarked for use in bootstrapping the protocol. Protocol revenue consistently adds to this pool of resources and hopefully grows over time, allowing ongoing allocation of resources even as MTA emissions reduce.
  • MTA governors have the responsibility of deciding how these resources are used, with the goal of increasing the value of the protocol and therefore the MTA token.

Based on this, my preference would be:

-All revenue (regardless of what fee we choose) goes to the emissions controller (this would currently mean it needs to be converted to MTA, but I don’t see this being a huge issue as any sell pressure from additional MTA emissions would be countered by the buy pressure of converting revenue to MTA in the first place, right?)

  • MTA Governers have full control over how revenue is allocated. This could include ongoing MTA emissions to the ecosystem beyond the current emission schedule.
  • In this model, it is obviously critical to retain the Treasury dial as this would be the only way to fund ongoing protocol development and growth in PCV once current DAO funds been allocated.

In my view, making an ‘intelligent’ decision through a separate governance process to direct revenue to specific recipients seems to run counter to the idea of using dials to allocate resources.

I’m not sure how helpful this is in the context of the required short-term decisions but thought I’d share my 2c.

Hey @soulsby,
Thanks a lot for this detailed answer. I’m really aligned with you on the fact MTA governors should be the ones directing the protocol resources
However, I think there are a few key elements to be taken into account to create a sustainable flow of liquidity the Treasury DAO can actually use and grow:

  • if having this 5% Treasury is a great leap for the protocol and taking away MTA from the circulation (reducing buy pressure), MTA has basically no utility in DeFI yet. Whatever Treasury Utilization the mStable Asset Management Sub Dao thinks of doing with this organic stream, it has to sell MTA to do so.
  • mUSD is a 1:1 redeemable to its 4 underlying which are the most liquid asset of the space. For the Asset Management Sub DAO, it would be a very powerful tool to own
  • Having the governance fees in MTA would make the MTA bonds (Olympus) the only source of utilizable liquidity for the protocol. This is unsustainable and insufficient with the current burn rate of the protocol and the treasury utilization needed to cover it.
  • All the revenues going to the Emission Controller are originally in mUSD which is then turned into MTA and sent to dial addresses. Natively, fees are in mUSD and should be easily disbursed as such without creating an extra step
  • Governors are still owning this fee allocation repartition, further up in the revenue sharing scheme in a somewhat more recurrent way (no epochs)

Therefore, I would propose and insist here on having the Treasury DAO receive its % of fees in mUSD (for utilization and liquidity purposes while reducing sell pressure were the accumulated MTA to be used)

Happy to hear your thoughts :slight_smile:

1 Like

Thanks @TClochard. You make some good points there - mUSD certainly has a lot more utility for the Treasury.

I’m happy to support a split of the revenue with some going to the Treasury in mUSD. To me it would make more sense for the rest to go to the Emissions Controller in MTA rather than directly to MTA Stakers.

Long term I think we should consider whether we want the dials to control allocation of all revenue, or just some portion for MTA emissions.

Thanks for the extensive feedback everyone, it’s much appreciated! I’ll be beginning to draft up a formal proposal for this now, and then get someone from the dev team to help with the fine-tuning.

We should have something ready for you by next week! :sunglasses:

1 Like

Extremely happy to see this discussion, resolved and incoming organic mUSD flowing into the Treasury DAO
Thanks for the good work @mZeroNine

1 Like

@mZeroNine As we are working on the contract so we can formally propose this soon, one question popped up.

The referrer argument is now supported with the latest SaveUnwrapper upgrade. If the Governance fees were to be shared, how and from which bucket does the referral bonus gets cut out?

1 Like

I see, thanks for updating us @dimsome - I have re-opened this for the time being then.

The referrer argument is based upon the mAlliance referral bonus fee, correct?

If that’s the case, I’d say the simplest solution would be to take a 50/50 cut from both the stakers as well as the treasury, or maybe you can ELI5 on what the challenge is currently :sweat_smile:

yeah well, while it sounds simple, it’s actually not that straightforward.

The calculation for the referrer fees happens on dune. When the contract claims the fees and starts to split them up, it has no idea about how much the referrer fees are.

Looking into the contracts now and talking to @naddison to find an easy solution.

1 Like