<100 subscribers
Share Dialog
Share Dialog


Incentivizing liquidity is important for tokens to stay liquid, allowing them to be priced correctly and exchanged easily. Uniswap V3 and concentrated liquidity is the latest breakthrough in AMM design, greatly improving liquidity efficiency.
Yet, incentivizing concentrated liquidity positions is more difficult than other types of AMMs, where liquidity is tokenized as ERC-20. This is because liquidity provided by these positions changes as prices move, making it harder to evaluate them.
@hagaetc's DEX dashboard shows that Uniswap V3 is the leading DEX with 70% of volume. @mtitus's one shows us that UniV3 drives 90% of Uniswap volume, compared to only 10% for V2. This data indicates that incentivizing these Uniswap V3 pools correctly could significantly improve the quality of liquidity in DeFi.
Let's look at the different options to incentivize those concentrated liquidity positions currently.


One solution to this issue came from Arrakis (previously Gelato). They wrap NFT positions into ERC20, which can then be deposited into existing staking contracts. However, this was more of a quick fix than a real solution.
All the liquidity wrapped has to be deposited on the same range, usually the full one, effectively eliminating the AMM's innovation. Because of this, DeFi projects using this type of wrappers can't get the most out of it, and LPs can't provide liquidity in customized ways.
New position managers like Gamma Strategies have started to appear. They actively manage the liquidity provided to keep it active and on relatively tight ranges, in addition to wrapping it in ERC20s. Though this is more beneficial for both liquidity providers and projects incentivizing them, this solution adds a significant amount of trust in the position managers' teams, as they have the rights to update the liquidity positions.
Neither of these ways to incentivize Uniswap V3 NFT positions seems to be perfectly suited to the new AMM release. Of course, Uniswap designed their own solution, but even this mechanism has its drawbacks.

Uniswap released a staking contract for UniV3 positions in March 2021. It allows DeFi projects to put in place incentives that are distributed proportionally across all existing in-range liquidity.
Stakers can claim the rewards associated with their liquidity, and the remaining incentives that were not distributed can be claimed back by the entity that started the incentives.
From their documentation:
This slightly cumbersome design is a consequence of the difficulty of consistently allocating rewards proportional to Uniswap V3 liquidity.
Because of this design constraint, the APY earned by liquidity providers is not computed from staked liquidity but from all the active liquidity in the pool.
On top of that, updating the range of staked liquidity requires unstaking and restaking the NFT position.
The “1-Tick Attack”
Uniswap's mechanism allows sophisticated liquidity providers to game the system by depositing on the minimum range and providing very high virtual liquidity. Every time the position goes out-of-range and becomes inactive, they can just update it to the new price, effectively collecting most of the rewards. This happened to Ribbon incentives program back in November 2021.
Other protocols forked the Uniswap V3 staker contract to improve on it.
Revert Finance
Revert.finance implements a time-vesting mechanism on rewards distribution. On top of rewards accumulating according to the liquidity provided, positions have to be in-range for a specific amount of time to receive their full rewards amount. Below that, they can only claim the portion of rewards corresponding to the portion of in-range time of the position. The staking time required to fully vest a position can be set up by the incentives distributors.
For example, if a position needs to be in-range for at least two days to get all their rewards, staying in-range only for one day will allow the staker to claim 50% of the accumulated rewards. After two days, all the rewards can be claimed. This helps mitigate the “1-tick attack”, while still benefitting from UniV3 concentrated liquidity.
Kyberswap
Kyberswap uses another type of vesting that takes into account the fees generated by the position.
There is a volume target that the liquidity provided needs to reach to be ableto claim all of its rewards. Below that, it will get a linear proportion of it.
On one side, it allows to keep the advantage of concentrated liquidity while not spending incentives on idle funds. On the other, rewards are based on an arbitrary metric that is determined by incentives distributors, and that depends on market conditions and not LPs.

A lot of different potential solutions exist depending on the tradeoffs teams and protocols are ready to choose. Remember that goal is usually to maximize the returns of the capital spent in governance tokens. “Returns” can take the form of pool volume or liquidity, or of a token market cap.
One tradeoff could be to exchange a little bit of trust against some customization on how incentives are distributed. With the correct customization, the distributed incentives could maximize the liquidity efficiency and improve LPs returns at the same time.
It happens that the complex and expensive thing to do on-chain is computation. What if we took this computation of incentives distribution off-chain, and have it verified by concerned actors on-chain? Bringing this off-chain also gives much more flexibility to how the distribution can be customized, and doesn't require LPs to stake their NFT or approve other contracts to manage them.
Angle actually uses a comparable solution to incentivize Uniswap V3 liquidity for agEUR and to improve the yield of its main on-chain strategy. For both, the computation is done off-chain, and it can be verified and disputed on-chain.
Do you think relying on off-chain/on-chain optimizations can benefit DeFi? What if this design was generalized so that any protocol can incentivize in a flexible manner liquidity on any pool?
Watch out for new ways to incentivize Uniswap V3 in the near future 👀
Incentivizing liquidity is important for tokens to stay liquid, allowing them to be priced correctly and exchanged easily. Uniswap V3 and concentrated liquidity is the latest breakthrough in AMM design, greatly improving liquidity efficiency.
Yet, incentivizing concentrated liquidity positions is more difficult than other types of AMMs, where liquidity is tokenized as ERC-20. This is because liquidity provided by these positions changes as prices move, making it harder to evaluate them.
@hagaetc's DEX dashboard shows that Uniswap V3 is the leading DEX with 70% of volume. @mtitus's one shows us that UniV3 drives 90% of Uniswap volume, compared to only 10% for V2. This data indicates that incentivizing these Uniswap V3 pools correctly could significantly improve the quality of liquidity in DeFi.
Let's look at the different options to incentivize those concentrated liquidity positions currently.


One solution to this issue came from Arrakis (previously Gelato). They wrap NFT positions into ERC20, which can then be deposited into existing staking contracts. However, this was more of a quick fix than a real solution.
All the liquidity wrapped has to be deposited on the same range, usually the full one, effectively eliminating the AMM's innovation. Because of this, DeFi projects using this type of wrappers can't get the most out of it, and LPs can't provide liquidity in customized ways.
New position managers like Gamma Strategies have started to appear. They actively manage the liquidity provided to keep it active and on relatively tight ranges, in addition to wrapping it in ERC20s. Though this is more beneficial for both liquidity providers and projects incentivizing them, this solution adds a significant amount of trust in the position managers' teams, as they have the rights to update the liquidity positions.
Neither of these ways to incentivize Uniswap V3 NFT positions seems to be perfectly suited to the new AMM release. Of course, Uniswap designed their own solution, but even this mechanism has its drawbacks.

Uniswap released a staking contract for UniV3 positions in March 2021. It allows DeFi projects to put in place incentives that are distributed proportionally across all existing in-range liquidity.
Stakers can claim the rewards associated with their liquidity, and the remaining incentives that were not distributed can be claimed back by the entity that started the incentives.
From their documentation:
This slightly cumbersome design is a consequence of the difficulty of consistently allocating rewards proportional to Uniswap V3 liquidity.
Because of this design constraint, the APY earned by liquidity providers is not computed from staked liquidity but from all the active liquidity in the pool.
On top of that, updating the range of staked liquidity requires unstaking and restaking the NFT position.
The “1-Tick Attack”
Uniswap's mechanism allows sophisticated liquidity providers to game the system by depositing on the minimum range and providing very high virtual liquidity. Every time the position goes out-of-range and becomes inactive, they can just update it to the new price, effectively collecting most of the rewards. This happened to Ribbon incentives program back in November 2021.
Other protocols forked the Uniswap V3 staker contract to improve on it.
Revert Finance
Revert.finance implements a time-vesting mechanism on rewards distribution. On top of rewards accumulating according to the liquidity provided, positions have to be in-range for a specific amount of time to receive their full rewards amount. Below that, they can only claim the portion of rewards corresponding to the portion of in-range time of the position. The staking time required to fully vest a position can be set up by the incentives distributors.
For example, if a position needs to be in-range for at least two days to get all their rewards, staying in-range only for one day will allow the staker to claim 50% of the accumulated rewards. After two days, all the rewards can be claimed. This helps mitigate the “1-tick attack”, while still benefitting from UniV3 concentrated liquidity.
Kyberswap
Kyberswap uses another type of vesting that takes into account the fees generated by the position.
There is a volume target that the liquidity provided needs to reach to be ableto claim all of its rewards. Below that, it will get a linear proportion of it.
On one side, it allows to keep the advantage of concentrated liquidity while not spending incentives on idle funds. On the other, rewards are based on an arbitrary metric that is determined by incentives distributors, and that depends on market conditions and not LPs.

A lot of different potential solutions exist depending on the tradeoffs teams and protocols are ready to choose. Remember that goal is usually to maximize the returns of the capital spent in governance tokens. “Returns” can take the form of pool volume or liquidity, or of a token market cap.
One tradeoff could be to exchange a little bit of trust against some customization on how incentives are distributed. With the correct customization, the distributed incentives could maximize the liquidity efficiency and improve LPs returns at the same time.
It happens that the complex and expensive thing to do on-chain is computation. What if we took this computation of incentives distribution off-chain, and have it verified by concerned actors on-chain? Bringing this off-chain also gives much more flexibility to how the distribution can be customized, and doesn't require LPs to stake their NFT or approve other contracts to manage them.
Angle actually uses a comparable solution to incentivize Uniswap V3 liquidity for agEUR and to improve the yield of its main on-chain strategy. For both, the computation is done off-chain, and it can be verified and disputed on-chain.
Do you think relying on off-chain/on-chain optimizations can benefit DeFi? What if this design was generalized so that any protocol can incentivize in a flexible manner liquidity on any pool?
Watch out for new ways to incentivize Uniswap V3 in the near future 👀
No comments yet