"Fee Switch" Design Space & Next Steps

10% of the fees from any pool is not a small portion

This is the smallest portion the code allows, it’s impossible to set it lower.

This is not an acceptable plan. The last one is particularly concerning. Just fund whatever you want because you can? That’s defi education fund vibes.

The whole point of my post is that I am suggesting NO PLAN for how these accrued tokens might be used. I’m explicitly trying to separate the testing of value accrual from how / if that value is disbursed.

create a backtest for a variety of pools (small, large, stable-stable, stable-eth) before you just stick it to the LPs.

Agreed on being more thoughtful on what pairs this is tested on.

1 Like

Speaking for Avantgarde here, I agree with @Buckerino’s sentiments almost entirely.

I’m pro-experimentation but think this proposal is riskier than it seems on the surface. The risk in my opinion doesn’t necessarily come from the action of turning on the fee switch itself, and indeed I think that liquidity providers should build their businesses around the assumption that that happens some day in the future.

Instead, I think the decoupling of two distinct but related questions (“Can the protocol charge fees” and “What will the protocol do with the fees that it earns”) is where the danger lies. Uniswap’s governance is still in its formative stages and though the past year has seen some positive outcomes, kicking the can down the road and trusting that we’ll figure out how to manage and deploy this income stream is not a good look. It’s irresponsible to make a foundational shift in the economics of an entire set of users without telling them why that shift is being made.

And this is not even taking into account the regulatory risk to token holders which, \ __o __/, I’m not qualified to speak on.

With that said, there is definitely an opportunity to fund research around this topic so that we can make a more comprehensive plan on how to change a key tenet of the biggest dex in the market and arguably the most important protocol on Ethereum. Off the top of my head, I’d like to have as a start:

  • a framework for categorizing pool types. @wilsoncusack gets at this a bit in his post but I think a more rigorous quantitative and qualitative definition would be useful in figuring out a) how to test and b) assuming test results positive, how to roll out to all existing pools
  • a plan for converting long-tail shitcoins into useful stables (a la 1Inch) and a backtest run on that plan including a sensitivity analysis on what happens when LPs leave in varying quantities.

I would be hugely supportive of anyone that wants to propose that type of research and am happy to be a sounding board for anyone that’s thinking along those lines.

5 Likes

I just created an account. I am an LP in uniswap v1, v2 and now in v3. The only reason I am a LP is because the fees. I am against reducing this fee in any way of form.

TL;DR: I am 100% supportive of this proposal to add the 1/10 protocol fee to a selected number of “sister” pools.

I propose to first activate it for the following pools:

  • DAI-ETH-0.05%
  • USDT-ETH-0.3%
  • USDC-ETH-1%

The Uniswap Grants program (or internal research) should then study the effects of the protocol fee on LP revenue to guide the general decision-making process for fee activation.


I think a major consideration here is whether or not liquidity providers remove liquidity as a result.

The impact on the revenue liquidity providers for doing so will be minimal, here’s why.

First, one has to understand where fees come from. While fees obviously result from trading activity, the way orders are routed play an important role in how much volume each pool gets.

Transactions will always be routed to the pool that minimizes the slippage, which means that the 0.05% fee pool will “allow” more transactions through because it will always capture all transactions between 0.05% and 0.3% slippage limit.

We can see the price of each pool and the number of transactions in each pool for the ETH-USDC pools:

Note how the price in the lower left panel is much finely-grained for the 0.05% than for the 1% pool. However, the 1% pool sees larger jumps between trades. But each of these pools should track the same price and, by association, each pool should have the same properties, including the fees collected and the price’s realized volatility.

How does volatility relate to LP revenues? I explicitly derived this relationship between volatility (which is related to expected revenues), feeTier, liquidity and dailyVolume in several post (this post is the most relevant), and it is given by

where gamma γ is the feeTier+protocolFee, and LP revenue is ~Impl.Vol * √timeInPool

Therefore, regardless of the feeTier+protocolFee, each pool of the same asset pair should generate the same amount of fee per unit of liquidity. An intuitive way to think about this is that if PoolA generates less revenue than PoolB, then rational LPs will relocate their liquidity to PoolB to capture that edge.

This is also true if we look between the ETH-stablecoin “sister pools” like ETH-USDC/DAI/USDT: they should all generate the same revenue as long as the keep the same peg, and that means they should all have the same implied volatility.

Is this really a valid assumption? If we look at the implied volatility as derived above for all ETH-stablecoin pairs, we see that the IV for all pool are somewhat consistent at around 130% for most pools:


hint: rational LPs should re-deploy liquidity to the high IV pools to maximize revenue

There are a couple of outliers, but let me focus on the USDC/ETH pools:

  • USDC/ETH 0.05%: IV = 116%
  • USDC/ETH 0.3%: IV = 131%
  • USDC/ETH 1%: IV = 125%

While each pool has a different feeTier, transaction routing means that each pool gets a different amount of daily volume, and this daily volume is matched by a different amount of “tick liquidity” that minimized slippage. This, in a way, magically brings them all within a similar implied volatility and LP revenue range, but there is no clear trend (we have IV: 0.3% > 0.05% > 1%, but volume is: 0.05% > 0.3% > 1% and tickTVL is: 0.3% > 1% > 0.05%).

Hence, I predict that activating a 1/10 protocol fee to any one of those pools would re-shuffle some of the liquidity provisioning, but all pools will still converge to the same IV and LP revenue at the end of the day.

So, I propose that the Uniswap Governance enables the 1/10 protocol fees for a few ETH-stablecoin sister pools and use the Uniswap Grants program (or internal research) to study the effects of the protocol fee on LP revenue.

The pools could be:

  • Dai/ETH 0.05%
  • ETH/USDT 0.3%
  • USDC/ETH 1%

Or any combination of ETH-stablecoin pools across non-overlapping feeTiers.

12 Likes

Super interesting discussing so far! Two things, I’d like to add:

  1. We’ve recently done some research related to the fee switch question. More precisely, we modelled how high the take rate (or “protocol fee”) should optimally be. For more details, see this post: Research on the Fee Switch
    That being said, for the beginning, the lowest possible value, i.e. 1/10 = 10%, as suggested by the proposal, is probably a good choice.

  2. One crucial question that could be answered by experimenting with the fee switch, is measuring how strong Uniswap’s moat is over other DEXs. (In a fully rational market, the DEX with the lowest protocol fee should attract most liquidity and volume. But in reality, Uniswap, as the clear market leader, likely has an competitive advantage over other DEXs, and can afford a higher protocol fee. The question is, by how much?)
    However, one Uniswap v3 pool of course has no moat over another. So this effect could not be measured, if the fee switch is only flipped for one fee tier for a certain pair.
    Instead, flipping the switch for all fee tiers for a certain pair could be considered (maybe for a “less important” token pair?).

Finally, a more philosophical thought :slight_smile:

In the long run, it might be inevitable that a part of trading fees goes to UNI token holders - simply due to the fact that exactly these token holders can decide on the matter.
The longer token holder receive no rewards, and the lower the expectation of this happening in the future becomes, the more the value of UNI tokens declines. Until at some point, it becomes cheap enough for someone to buy a sufficient amount of UNI tokens to vote to distribute fees to token holders (including themselves).

3 Likes

Hey @guil-lambert,

Love your analysis as always! One of the things that I think we need to be aware of is not just the allocation of trade volume and the IV of strictly the Uni v3 pools, but the effect this would have in diverting the trade volume away from Uniswap as a whole to another AMM when using a DEX aggregator. Small divergences in liquidity could lead to leakage of trade volume that would have been allocated to Uniswap. I think it’s a mistake to assume that the fee switch would involve liquidity or volume moving to a different Uniswap v3 pool as they could just leave Uniswap entirely!

For example a 10 ETH trade for USDC on Paraswap does not even make it to a Uniswap v3 pool as the price impact would be lower going through Paraswap’s pools instead.

So, I can’t imagine that any further restrictions on liquidity such as a fee switch would help us in competing as a whole against other AMMs when it comes to DEX aggregators. Therefore, I think a technical analysis needs to include how a fee switch could affect our competitiveness on DEX aggregators as well.

But more importantly, before we even get there, I wish there was more clarity and information given on whether implementing a fee switch is really the best way to achieve the outcomes we’re trying to accomplish. I’m not so sure. What alternatives are there to implementing a fee switch in getting the revenue that we need to get? I worry that this sets a dangerous precedent and moral hazard issues when it comes to a treasury that is flush with trade fee revenues. Like it hasn’t been made entirely clear what specifically these funds would be used for. Like what kinds of public goods? Like the DeFi Education Fund? I sure hope not.

I’d rather we have the specific goal in mind first before getting the funds. Right now, it seems like we’re getting the funds first and then figuring out what to do with them. It creates a moral hazard in my opinion. Right now the UNI distribution is still very much concentrated in the hands of a very few influential parties. I would wait for a more decentralized distribution of UNI before implementing this kind of power.

Research without actually implementing the fee switch is certainly possible thru backtesting. Using the pretenses of “research,” to actually implement a fee switch into production for the first time is a very dangerous precedent.

This is the smallest portion the code allows, it’s impossible to set it lower.

Is that a feature or a bug? It seems kind of silly to be limited to such a large increment increase. Can this be changed?

The whole point of my post is that I am suggesting NO PLAN for how these accrued tokens might be used. I’m explicitly trying to separate the testing of value accrual from how / if that value is disbursed.

But this plan does propose how these funds might be used, by suggestion and omission. The glaring one is no distributions to UNI holders. I get what you’re saying, but any fee switch is inevitably going to discuss the trade-offs from taking said fees. Just like a tax increase, someone has to pay for this, and someone gets to spend the money on something. I think that is the most important part of a fee switch scenario.

If this is just a test in prod of how the fee switches will affect liquidity, the LPs, and determine fee generation/mechanics, I would suggest conducting a controlled test over a specific period of time. Then stopping to assess the test.

The purpose of this post is make clear UNI governance has two very different decisions to make 1). should a fee switch be turned on? and 2) how should fees be utilized?

I agree these are separate decisions. I think they are being asked in the wrong order.

The first decision should be the business decision: What is Uniswap looking to fund, and to who’s benefit?
Only then should we think about the financing decision: How are we going to fund what we want to fund?

Said another way:
By taxing LP’s fees by 10%, you’re implicitly saying “Uniswap governance knows what to do with this 10% of these fees better than you do”.

I agree with @Buckerino’s point that it’s not the most important question. I think the most important question is “What is goal/mission of Uniswap and its treasury?” Until that question is answered, along with how funds would be allocated to further that goal, it doesn’t make sense to divert fees from LPs to the treasury.

I just created an account to voice my concerns as liquidity provider about this idea.

It’s an absolute bad idea to me. Taking 10% of the fees away from LP’s is an enormous cut. That 10% is often the difference between making a gain or a loss. If the Fee Switch would be 1-2% I could live with it as liquidity provider.

In the case that the 10% fee would be introduced I would remove my liquidity and use my capital somewhere else.

1 Like

Meanwhile Kyberswap, fee switch fully enabled and no shenanigans on getting around of paying it to holders.
Concentrated Liquidity tick-based or as LP tokens both.
Deployed on 12 chains.
Faster in deployments (see OP 0.01% fee tier).
All Uniswap has at this point is the brand.

I am for using a fee on strategic pools as @guil-lambert has stated. It is true that if you charge a fee on only a part of the fee levels, the liquidity will spread out to where it is treated best. The idea is maximum extraction of value for minimum effects on liquidity. I would also restrict fees from full-range liquidity positions, since they protect from long tail events, but are inefficient during normal conditions. At the same time, I do not think the specific plan matters for the revenue, and starting small and gathering some empirical evidence minimizes the risk for the protocol

I’d like to offer an alternative perspective on some comments I’m seeing.

@ConcernedLP, @Brenner, @Buckerino and @eek637 have all voiced concerns along these lines:

  • Fee switch is not high priority at this stage, and other projects are higher priority
  • Uniswap Governance needs to figure out what it wants to even spend funds on first

Other Internet has studied Uniswap governance extensively and has talked to stakeholders of many different types, and while I hear these concerns, I do not believe they are entirely correct.

  1. Part of the reason for general governance inaction in Uniswap is, in fact, the lack of non-UNI funds in the treasury. Without stables or more liquid currencies like ETH to spend, the UNI token must be liquidated every time a significant opportunity arises. We currently are in a situation in which UNI selloffs to service providers, public goods projects, and grantees that exert downward price pressure on the token in the long run. (Recall the significant backlash about UNI price when DeFi Education Fund liquidated $12.5m in one day). Moreover, generating assets in the treasury that can be spent on protocol growth and expansion makes the governance token more valuable. Recently governance nerds have been obsessed with NounsDAO, a protocol with extraordinarily high levels of governance activity. The number one reason Nouns has generated such a high volume of proposals is that it has significant treasury holdings, spending of which do not dilute Noun holders’ token value. Everything we’ve seen so far suggests that if Uniswap were generating even $10k of ETH & USDC in fees per day, we would likewise see a much higher volume of governance activity and proposals on this forum.

  2. Firstly, we have to stop referring to “Uniswap Governance” as a monolith. What we are is a collection of actors with very different incentives. Uniswap is very poorly structured from an ownership perspective, having airdropped to all classes of users. This makes it incredibly unrealistic for people to come together to intentionally decide what to fund at the current moment. Outside of an off-site retreat for major UNI voters, I don’t see a good way to reach consensus on this. OI has taken some responsibility for advocating for specific outcomes we’d like to see here; one of these is the creation of concentrated centers of authority, such as an expanded version of Uniswap Grants Program with a bigger mandate, who we believe would be suitable to set specific goals and drive specific visions.
    In lieu of these authority centers existing right now, I believe that the higher volume of proposals stimulated by more liquid assets in the treasury would incentivize a greater degree of competition and higher quality proposals brought to this forum. Right now delegates have too little work to do. Perhaps this is idealistic, but more competition among a higher volume of proposals would force all of us to be more selective and evolve a set of criteria for treasury spend.

A final comment is that nonnative assets in the treasury would make it easier to conceive of spending money on things like paid delegation programs, which would overall improve the quality of governance.

In short, I can’t conceive of the fee switch initiative as low priority. The fee switch is one of the few clear on-chain levers we have available to us to drive more governance work and better outcomes at this time.

3 Likes

There are two ways to get non-UNI funds into the treasury.

  1. Sell UNI from the treasury, which impact UNI holders (by decreasing the price)
  2. take a portion of LP fees, which impacts LPs (by taxing them)

Assuming LPs are providing liquidity out of pure economic interest, to impose #2 on LPs, the case has to be made “this tax will improve your economics in the long run”.

I have looked through everything I can find from/on Uniswap, and I cannot find a stated goal or mission.*

I agree that having some amount of ETH or USDC in the treasury might attract more proposals. But without having a more clear goal or mission for UNI holders and arguably more importantly, for LPs to get behind, the fee switch is a hard case to make.

A world in where I see turning on some fees working:

  1. State the goal of UNI is to create the deepest liquidity and thus the best to trade in the universe
  2. Pick a number: $5m, $10M, and turn fees on for less important pools until that number is reached, and then turn them off. It’s a seed round.
  3. Fund individuals / teams that are directly aligned with the stated goal of UNI.

Long term, I think fees on top of LP fees instead of taking a portion of the LPs’ fees is more sustainable. It affects LPs less, and doesn’t directly drive liquidity to other AMMs.

  • Which can or may be separate from Uniswap Lab’s goal or mission. Since it’s a C-corp, by default it is “make a return on investment for shareholders”. And I’m sure they have their own way(s) they plan on doing that, separate from the fee switch.

I like some of this thinking, specifically #2.

I’ve been thinking of it being more time bounded though rather than focused on acquiring a specific amount of capital.

i.e. run this experiment for 90 days after which fees revert to 0%.

Functionally somewhat similar to what you are suggesting but IMO simpler because you avoid needing to determine any specific usage of capital. As stated in my original post, I think that is crucial to keep the discussion simple and empirically driven.

This is a good point. My gut tells me that instead of removing liquidity, LPs will go and buy UNI token… Most LPs love the protocol and will be willing to contribute more capital to the ecosystem by buying UNI token. I also would like feedback on my Temperature check here, for UNI-based Fee Tiers. Upon turning on the fee switch, this would provide additional incentive for LPs to buy UNI instead of withdrawing liquidity.

For example, Imagine you are an LP and the fee switch is turned ON. What do you say to yourself? You say, “Ok, now I am making less return because we are paying UNI holders. What should I do?” Let’s explore that – What can you do? Option 1) Move liquidity to another AMM that is far less reputable and has far less growth momentum, or Option 2) Buy UNI tokens so that i) you partake in the fees switch being turned ON, ii) partake in any other future utility ascribed to the UNI token, iii) continue accruing significant fees as an LP on Uniswap, iv) gain voting power in Uniswap governance.

I’d choose option 2 all day, everyday.

3 Likes

This is the crux of where you and I disagree. As an LP, why would I want to be taxed without any explanation as to where my taxes are going?

LPs are here to trade IL risk for fees.

Theoretically, UNI holders hold UNI because they are aligned with UNI’s goals (which aren’t even explicitly “make the value of UNI go up”).
If UNI leadership wants more eth/usdc in the treasury to prove out UNI’s ability to allocate capital efficiently towards UNI’s goals in a way that is net-positive to LPs, I think they should sell enough UNI to reach that number.

Only then, with some track record for LPs to look at, should the ask for capital be directed to LPs

Taking your assumption as true. The “why” actually doesn’t matter at all to LPs. If they are purely acting in economic interest they will leave if it no longer benefits them and return if / when it does benefit them. There would be no reason to stay in anticipation that it might benefit them more in the future. They would simply return at that future time. The “why” does not matter to an LP acting purely in economic interest.

Perhaps there is some subset of LPs that don’t act purely in economic interest and therefore might stick around solely based on a “why” but I doubt that is a large amount.

1 Like

Hey, LP speaking, I think this proposal is great, whichever form it takes. However, the ratio should be carefully considered. Taking away 10% of revenues from LPs risking impermanent loss etc… Might be considered too high. On the other hand, LPs are indeed interested in seeing Uniswap have more assets to incetivize development and innovation. Instead of doing a unilateral proposal for fee switch with predetermined parameters, I think an invite to LPs should be done and ask what would be an ideal fee switch for them to decide to provide more liquidity, in different pairs, for example. I think this kind of proposal should be really discussed with LPs, a roadmap should be designed, and the future should not be uncertain, the opposite as Uniswap only exists because of the LP-protocol relationship. Having said that, until april 2023, Uniswap has a form of protection, what will happen after that, what about VCs, using the Uniswap code, forking it and developing for stocks for example… So many questions out there, but honestly, I feel like the fee switch is something that could benefit everyone if enacted properly.

1 Like

After having read a lot of interesting comments, there is one crucial thing that comes to my mind, as a large LP on UNI V3. Decentralized governance is achieved through holding UNI tokens. If LPs want to have a say here, they should hold UNI tokens and vote on proposals. The power of UNI V3 is its safety and liquidity. Safety will not be impacted by the fee switch. Liquidity can be controlled by the fee switch, for example, do a proposal to award UNI tokens at a discount to LPs that commit to provide liquidity for a certain amount of time. That would be “money well spent” or some sort of incentive so that research can strive along the giants that provide for “gasoline”…