[Discussion] About admin fees on Metapools

Just some notes as a new vote is trying to add admin fees to the USDN Metapool. New Metapools will have an admin fee introduced in one day.

USDN Metapool will not receive a 50% admin fee as USDN tokens will yield 10-15% APY which will be shared between veCRV holders and LPs. As a result, LPs get all the trading fees.

We don’t do this with other pools (0 admin fee); what’s the justification here? Typically LPs earn all the “rewards” (SNX, MTA, COMP maybe one day); why is it different here?

1 Like

Experimenting with rewards I guess. I will seek clarification about the matter.

Shouldn’t the default be

  1. Admin fee (% of trading fee) to veCRV holders
  2. Trading fees to LPs
  3. Incentivization to LP (ie MTA incentive given to LP in mUSD metapool)
1 Like

For USDN pool the USDN interest will be the admin fee

1 Like

I understand that, I was just curious if there was clarification as to why. Is just because of how USDN earns interest it’s not easy to separate out like MTA rewards?

I agree with the previous sentiment here, specially the following as stated by @ShrimpFi

The current trading fee on the pool is .04% (like all other pools on Curve) which means that the admin fee should be .02% (half of the trading fees). That leaves the rewards that are paid on USDN (interest due to the stablecoin being staked in the waves network) to the LPs. It makes no sense for us to deviate from this model and if we do then we should retroactively go back to all the other Curve pools that are paying rewards to LPs (SNX, MTA, etc…) and reevaluate as well.

If this is an experiment, what are the success criteria? If this model is potentially a better mutually beneficial fee structure for veCRV holders and LPs, it would be good to see the projected numbers. It’s difficult to make an informed decision otherwise.


I believe its because the curve pools handle fees during swaps and the admin fees end up being “the coins that are on the contract but are not tracked by the pool logic”. thus the rewards of usdn that are given by its elastic supply are not tracked by the pool and thus intrinsically become admin fees.

id have to relook at contracts again to double check/be more specific but anyways the rewards are automatically made into admin fees, even if the admin fee is set to 0%

now you might read that and say “well the admin fee distribution mechanism should work it out and redistribute back to lp holders”… and maaaabye? i dont know but sounds like it could be a pain, especially considering theres no checkpoint mechanisms of when people deposit and withdraw in order to make it fair. honestly sounds like someone would have to do the calculation off chain and thats not a good thing. would need someone else to chime in but this is definitely the “easiest” way to do it basically.

all other rewards have been a “stake your lp tokens in a reward contract” style so its easy to make a gauge to do that for you.


I don’t agree with veCRV getting usdn interest instead of trade fees. veCRV is entitled to some percent of trade fees because that’s the service Curve provides. USDN interest is the benefit of holding that token, like when you hold a lending token, you’re entitled to the interest generated from lending. It’s not right to be claiming that interest for veCRV

1 Like

The long term health of the platform seems to rely on both yield for LPs and yield for VeCRV holders.

The native token rewards system on the platform is a feature and is a value-add service for pools. It is appropriate that VeCRV holders charge for this feature and that some percent of the reward/issuance etc. tokens that flow through the platform (directly or indirectly) turn into yield for VeCRV holders. Somewhere between 10% and 30% seems reasonable.

1 Like

I guess the quicker we can roll out admin fee distribution, the better USDN lp will be getting their interest.

I think that’s correct but to make this more clear (I asked the developers in the telegram channel yesterday), what’s happening is that the USDN interest is coming in as the admin fee. Currently, there is no admin fee implemented on the pool so everything that has been collected is the USDN interest. This amounts to ~$44000 at the moment.

The problem is that when we do implement an admin fee (50% of the trading fees) then it would be hard to separate it from the USDN interest. Quoting @angelangel0v below:

it’s very hard if even possible on-chain when adding an admin fee to separate between the admin fee from trading and USDN interest

I agree with the sentiment shared by @WormholeOracle

But I am not sure how we reconcile the above given the technicalities. I think that the initial distribution should 100% go to the pool LPs (since this is 100% USDN interest that has been collected) and after we implement the admin fee on the pool (.02%), then we split this 50-50 between veCRV holders and LPs going forward. I came up with 50-50 going forward because we can’t easily differentiate between the two amounts (admin fee and USDN interest) and that seems like the only fair thing to do.

Maybe we should delay this USDN distribution first while the Curve team tries to figure out a way to separate the two (interest and admin fees). Going forward in the future, there might be new tokens that are similar to USDN, so it would be better to solve this problem once and for all.

But it isn’t fair to do a 50-50 split. The fair thing to do is handle the trade fees only, splitting them 50-50. I can’t believe something so straightforward would be impossible to handle on chain. Maybe the contract wasn’t written to handle this logic, but then that’s a problem with the contract. I’d rather we admit the mistake, relaunch the pool with code to handle the logic, vote in the gauge, and migrate liquidity.

I’m sorry but it’s sloppy to just shrug it off and say “oh well, let’s just lop off half the built in interest this token earns and hope LP’s don’t mind”. Maybe we need to slow down on launching new pools so that proper due diligence can be done on each coin we add. This pool was added as part of a buck shot of like 5 new pool proposals. We’re all excited to grow volumes, but here is an example where rushing the roll outs made us overlook a detail that negatively impacts LPs.

This isn’t just a matter of being unfair. If we have a competitor that launches a USDN pool, all they have to do is give the LPs 100% of the built in interest and they won’t have a hard time poaching all of our liquidity. I know it feels like Curve doesn’t have much competition, but we all know how quickly the situation in DeFi changes. We need to make sure we aren’t giving future competitors an easy opening.

1 Like

As veCRV holders will be incentivized by 10-15% USDN staked yield, no need for an additional 0.02% incentive.

As LPs will get the full 0.04% trading fee, the pool will be more attractive for LPs and get additional capital, which is beneficial for both LPs and veCRV holders. So basically the effect of higher LPs capital allocated to the pool would be beneficial for both parties. And no problem that it is not aligned with other pools, as invariant parameters are also not homogenius.

The Curve developers made it sounds like this wasn’t possible given how USDN works. But I am not sure if it is possible with a new pool contract and having us migrate liquidity. If there is a technical option that allows us to differentiate admin fees from USDN interest then we should do that (even if it takes a few months). I guess they would have to comment on the feasibility of such a solution.

Agreed, the team needs to elaborate on why it isnt possible to separate the trade fee from the token interest. Right now it sounds like they goofed the code and are trying to take the easy way out by pitching us this weird profit sharing scheme. We deserve a decent explanation, given that we are allegedly the owners of the protocol.

I am really sorry to be a pain in the ass, but this is something that cant be allowed to happen. The team cant just say they are going to make up some new profit scheme for one pool because its easier for them, and we should deal with it. As a matter of principle, and to try to enforce uniformity across all of our pools, I may be submitting a proposal to relaunch the USDN pool with code to handle the transaction fees separate from the token interest. If this is a problem that actually can’t be solved, I’d like a good explanation about why that is.

The way I understand it is that all pools know their own balance and everything else (balance on top of the pool balance) is considered admin fees so I think the pool cannot differentiate between admins and trading fees meant for veCRV holders.

I understand this isn’t perfect but it wasn’t accounted for, after all our devs are almost only definitely humans but I also think it’s not worth rewriting and upgrading pools over (+ audits etc).

Alright, so that I’m not being overly antagonistic about it, I’m going to pitch a proposal in favor of the 50-50 split with a signal vote. The community at least needs to affirm this is what they want to do.