Consensus Check - Add 1 Basis Point Fee Tier

Consensus Check - Add 1 Basis Point Fee Tier

Prior discussion

Snapshot poll

TLDR:

Uniswap should add a 1bps fee tier with 1 tick spacing. This change is straightforward from a technical perspective and would help Uniswap compete in stablecoin <> stablecoin pairs, where the majority of the market share is taken by Curve and DODO.

Background on pool fees

Uniswap v3 allows for the creation of new pools via calls to the factory contract. In order to keep liquidity for pairs consolidated, only a few fee options are allowed–currently, 5, 30, and 100 basis points are supported (10, 60, 200 tick spacing).

Governance should add a 1 basis point fee option for the following reasons:

  • Curve’s stablecoin markets have 3-4 bps fees.
  • Dodo’s stablecoin markets have a 1 bps fee.
  • FTX’s fees for retail are 2/7bps fees and for whales 0/4bps.

However, we recognize there are some potential counterarguments to adding this fee tier:

  • Adding too many fee tiers can fragment liquidity.
  • Liquidity providers may earn less in fees.

We discuss each of these points in greater detail below

This will allow for the creation of much more competitive stablecoin<>stablecoin pools.

Offering low slippage on stablecoin<>stablecoin pairs in AMMs is generally easier than other pairs due to their relatively low price volatility.

As such, the determining factor in driving volume is trading fees. Pouring more capital into a 5 bps fee pool won’t necessarily make Uniswap v3’s pricing more attractive, as lower cost pools exist such as Curve’s 3pool (3 bps fees) and DODO’s USDC-USDT pool (1 bps fees). Indeed, most USDC-USDT volume from 1inch is routed to DODO. Very little of it is routed to Uniswap v3.


In the DEX market as a whole (not just 1inch), DODO and Curve still take the majority of the market share (60-70%) in USDC-USDT trading. Uniswap v3’s concentrated liquidity helped increase market share, but lower fees can help it grab more.

The data tells a similar story for DAI-USDC (see 1inch exported volume and overall market share), though in the case of DAI-USDC, DODO is less active. While the case is compelling just from competition in the DEX space, Uniswap also competes with centralized exchanges.

Many centralized exchanges offer lower than 5 basis point taker fees for high volume traders (Binance offers < 5 basis point fees above 40K BTC in 30-day volume, FTX above $25M in 30-day volume, etc.). Lower fees could increase the DEX volume pie by comparing favorably to spot markets on centralized exchanges and drawing volume from large players.

The change is a very light touch.

The change requires just one function call–enableFeeAmount(100)–on the factory contract. Governance controls this contract, so a simple proposal could make this change.

The enableFeeAmount function takes as parameters

  1. Fee: the fee amount denominated in 100ths of a basis point.
  2. tickSpacing: the granularity one may specify a liquidity range (see the Uniswap v3 Core whitepaper for more details)

To add a 1 basis point fee option, fee would be 100.

tickSpacing requires some consideration. On the one hand, too high of a value restricts LPs’ ability to set granular prices, since initializable price ticks would be roughly [tickSpacing] basis points apart. On the other hand, too low of a value could entail liquidity being too low in each tick, meaning that larger orders may need to cross multiple ticks to fill, entailing extra gas cost for each additional tick.

We suggest that a value of 1 for tickSpacing would be reasonable for 1 basis point fee pools, allowing LPs to set prices with precision in positions that span ~1 basis point between initializable ticks.

For a stablecoin market like USDC-USDT, we expect most of the liquidity to reside in 6 ticks. Orders <$1m will like only require 1 tick and larger orders may require a second or third tick. For each tick used it adds about 15k-20k gas costs.

Too many fee tiers can fragment liquidity

The downside of adding too many fee tier possibilities is that liquidity is then fragmented across pools. However, we believe that LPs will naturally settle over time into the fee tier that is most appropriate for the volatility of the pair.

Pairs with particularly low volatility, like stablecoin<>stablecoin pairs, will likely have a liquidity migration to the 1 bps tier, as the required return to capital should be low in equilibrium given the low risk of impermanent loss.

LPs may earn less in fees

Assuming overall volume stays stable (although it’s worth mentioning more competitive fees should grow the pie), total fees paid will go down (volume would have to 5X for fees paid to LPs to stay the same).

However, LPs are not the only constituency to take into consideration–takers will be paying lower fees in aggregate. Growing Uniswap’s market share and being the best place to trade across many pairs is important. These pools could become more enticing to large traders looking to swap stablecoins, for instance.

Concluding Thoughts

We believe this simple change could boost Uniswap’s competitiveness in low volatility pairs, and the change presents minimal risk for Uniswap.

We welcome any thoughts on this idea from the community.

9 Likes

This is a great writeup @Getty, clearly outlining the tradeoffs in implementimg a 1bps fee tier. We feel that, since there is little downside, more optionality is better than less, especially considering Uniswap’s current minimum rate of 5% being uncompetitive compared to DODO and Curve. We agree that Uniswap should strive to be the one-stop shop for all swaps, including stablecoins. The mindset of creating a great trading experience to attract large organic volumes, which is recursively followed by more LPs and TVL is one we subscribe to.

Our only reservation is that 1% may be a little too low. A 2% bps rate may allow Uniswap to find a middle ground between competing with Curve and DODO, whilst also having enough margin for LPs to consider this profitable. Indeed, we must think carefully about how this change could affect the market landscape. A race to the bottom in fee levels amongst DEXes is suboptimal. We need to carefully discern what number will create long-term sustainable and organic volume, and sticky TVL from satisfied LPs.

It would be interesting to see some data or backtesting on pricing efficiencies with TVL, fee levels, and order sizes as the independent variables.

We will vote yes on this Consensus Check, but do wish our above suggestions are addressed.

7 Likes

Thanks @pennblockchain, I’d also like to add a few comments to the discussion of the exact choice of the new fee option:

“A 2% bps rate may allow Uniswap to find a middle ground between competing with Curve and DODO, whilst also having enough margin for LPs to consider this profitable.”

With the current sizes of stablecoin pools, slippage is negligible compared to trading fees for most trades. This means that lowering fees from 5bps to 2bps when competing with a 1bps pools will not help much - the 1bps pool will still be the optimal choice in most cases.

“A race to the bottom in fee levels amongst DEXes is suboptimal.”

Interestingly, competition among AMM pools does not necessarily lead to a race to the bottom (see our paper for more details). For the stablecoin pools in question, one would expect fees to decrease (and possibly TVL to decline) until slippage is no longer negligible compared to trading fees. Then pool fees would converge to an equilibrium.

Finally, my personal opinion: Thinking for the long term, fee levels should be chosen to give LPs a wide range of options while also not fragmenting liquidity too much. From this perspective, 2 and 5 bps pools seem too close together to me and the options 1, 5, 30, 100 seem better spread than 2, 5, 30, 100.

3 Likes

Our only reservation is that 1% may be a little too low. A 2% bps rate may allow Uniswap to find a middle ground between competing with Curve and DODO, whilst also having enough margin for LPs to consider this profitable.

How is pennblockchain figuring the 2% is more optimal than the 1%? Is it just because it is between the Curve 3-4 bps and Dodo’s 1bps fee? Uniswap should be competitive with CEX’s as well, as stated above FTX has 2/7’s bps and 0/4 bps fees.

Governance should add a 1 basis point fee option for the following reasons:

  • Curve’s stablecoin markets have 3-4 bps fees.
  • Dodo’s stablecoin markets have a 1 bps fee.
  • FTX’s fees for retail are 2/7bps fees and for whales 0/4bps.

I support this proposal. A 1 bps fee and tick spacing makes sense for this proposal and adds more flexibility of choice to other pools.

2 Likes

Thanks @Getty for putting this detailed proposal together. We echo @pennblockchain’s sentiments around Uniswap being competitive across all types of swaps and think this proposal brings us in the right direction so we will be voting FOR in this consensus check.

We’d like to see some analysis and projections done on the revenue effects of lowering fees. Will the projected increase in volume (natively due to lower trading fees and increased aggregator volume) offset the revenue loss from decreased fees?

We also agree that Uniswap should choose a middle ground between DODO and Curve with a 2 bps fee as a trial run and not start a “race to the bottom” in fees. This is already a 60% decrease.

2 Likes

gm. Hi Getty. love the idea. more fee tiers plz. The fact that most of USDC-USDT volume goes to DODO is the perfect reason. to me, 5bps is kind of useless for USDC-USDT, so 1bp is perfect. The amount of liquidity for this pair outside of defi in immense and univ3 needs to be competitive.

3 Likes

After some thought; 2bps makes sense. This would place the tier between Curve’s stablecoin market and Dodo’s. It would be good to see the impact of adding new fee’s gradually without going direct to a more optimal tier.

A 1bps can always be added in the future.

1 Like