[G-UNI DAI / USDC] - Uniswap V3 LP ERC20 Collateral Onboarding Application

1. Who is the interested party for this collateral application?

This collateral application was created by the Gelato Network development team. Gelato offers a series of automation services focussed on DeFi, including limit orders on AMMs, automated debt management for e.g. MakerDAO Vaults and an automated liquidity provision solution for Uniswap v3 Liquidity provides called G-UNI, the latter being the proposed collateral type for this proposal.

2. Provide a brief high-level overview of the project, with a focus on the applying collateral token.

G-UNI is an ERC20 wrapper around Uniswap v3 LP NFTs which can be used to make liquidity provision on Uniswap v3 fungible and its fee reinvestment process automated. It basically turns Uniswap V3s liquidity positions into Uniswap v2 like ERC20 tokens. Based on several discussions with MakerDAO stakeholders and Uniswap v3 Liquidity providers, we believe that the G-UNI DAI / USDC pool token would provide great value to Maker users as an efficient way of utilizing their USDC collateral to borrow DAI while earning compounding trading fees on Uniswap v3.

An example of how G-UNI tokens are already used in production today is the INST / WETH G-UNI pool launched by Instadapp. They recently released their INST token and wanted to incentivize liquidity provision on Uniswap v3 for the INST / WETH pair, however they did not have a fitting solution that would make the NFT LPs positions fungible and which could automatically reinvest the earned fees back into Uniswap v3 to create a compounding effect.

That’s why they partnered with Gelato to deploy a G-UNI token that wraps around the INST / WETH pool on Uniswap v3. G-UNI tokens have the following functionalities:

  • Simplicity: Having a simple one size fits all liquidity strategy making market making very accessible for everyone as users don’t have to actively manage their position
  • Fee Compounding: Reinvesting the earned trading fees back into the pool resulting in an automated compounding effect
  • Fungibility: One Uniswap LP token is equal to another, meaning they can be used as money legos in other protocols such as on Maker for collateral or for liquidity mining schemes like what Instadapp is doing, making the underlying capital hyper-efficient

Users can always exchange G-UNI tokens for the corresponding underlying tokens (e.g. DAI & USDC) and the accrued fees that are currently being stored on Uniswap v3 by the G-UNI contract. G-UNI uses no external oracles or other dependencies and G-UNI tokens can be minted and burned at any point in time by liquidity providers.

G-UNI tokens can be created permissionlessly by anyone for any Uniswap v3 pool. However, this application only concerns one specific G-UNI pool which has DAI / USDC as the underlying tokens which are provided as liquidity on Uniswap v3. More G-UNI pools that have different underlying tokens can be added in separate Collateral Onboarding proposals in the future.

The automated reinvestment of fees is a key feature of G-UNI pools, which is conducted by bots of the Gelato Network which act similar to Maker Keepers. Those bots constantly monitor the accrued fees of each pool and execute the fee reinvestment function when sufficient fees have been collected and it is worth executing it. Ranges of the USDC / DAI cannot be adjusted by bots and will remain static.

Each G-UNI pool takes a 1% cut of the accrued fees when reinvesting the fees for building, operating and further improving the G-UNI system.

Not Gelato nor anyone else will have any special privileges for the discussed DAI / USDC G-UNI pool, making the system fully immutable.

You can watch a video of Gelato Legendary Member Ari Rodriguez explaining how G-UNI works here.

3. Provide a brief history of the project

Gelato Network was started 2 years ago by Hilmar Maximilian Orth and Luis Schliesske after working together with Gnosis on building automated trading functionalities on top of one of their decentralized exchanges. The two quickly realized that it was very cumbersome and hard to maintain specialized bots / keepers that have to be custom developed for each use case that requires some transactions to be executed automatically at certain times in the future.

Thus they ought to build a generalistic protocol that enables developers to plug into an already existing decentralized network of bots that they can task to execute arbitrary smart contract functions on Ethereum. Since launching in July 2020, many of the top projects in DeFi have integrated Gelato to power their web3 automation needs, including projects such as Instadapp, Furucombo, KeeperDAO, various Chainlink Node Operators and AMMs such as Spookyswap.

Gelato’s development team not only builds the underlying protocol and the infrastructure, but also develops interesting automation use cases in-house themselves, of which G-UNI is one of them.

G-UNI went live at the beginning of June when Instadapp launched the first G-UNI pool to incentivize liquidity provision around the INST / WETH pair on Uniswap v3. In the next few weeks, more pools will be launched by the Gelato team, including DAI / USDC, WBTC / WETH and USDC / WETH. G-UNI contracts were tested thoroughly before deploying them to mainnet and the contracts are currently undergoing two separate audits that are scheduled to be concluded by mid July 2021.

4. Link the whitepaper, documentation portals, and source code for the system(s) that interact with the proposed collateral, and all relevant Ethereum addresses.

5. Link any available audits of the project. Both procedural and smart contract focused audits

Two independent security audits are currently being done and should be concluded by mid July. As soon as they are done, we will update this post.

6. Link to any active communities relating to your project

7. How is the applying collateral type currently used?

G-UNI tokens are used to enable multiple parties to provide liquidity on Uniswap v3 collectively around the same range in a fungbile manner. The first G-UNI pool which was deployed after the initial INST / WETH pool is the discussed USDC / DAI G-UNI pool which earns fees with a very concentrated liquidity around the $1 range (e.g. 0.9994 - 1.0014) of the DAI / USDC pair on Uniswap v3. Generated fees are directly reinvested into the pool and accounted for when LPs burn their G-UNI tokens in order to receive back the underlying DAI / USDC.

As the USDC / DAI price should remain rather constant, we don’t need any readjustments of the range.

As a benchmark, 8% of the currently circulating INST token supply is actually being held within INST / WETH G-UNI tokens to provide liquidity on Uniswap v3.

8. Does one organization bear legal responsibility for the collateral? What jurisdiction does that organization reside in?

The collateral is deposited in Uniswap v3 and Gelato will have no admin rights to it. All G-UNI contracts are deployed as proxies initially so that we can still fix issues if they might be discovered after the audits have been concluded. However, before Maker starts the on-chain voting to list the DAI / USDC G-UNI pool token as collateral, we will renounce our ownership of the proxy and make the contract immutable. After that this particular G-UNI pool will be completely immutable and will bear no special manager or admin privileges.

9. Where does exchange for the asset occur?

The G-UNI DAI / USDC token is just a wrapper around regular DAI and USDC tokems which can be exchanged on multiple decentralized and centralized trading venues. G-UNI tokens can be burned at any time to redeem the underlying DAI / USDC based on the current ratio of the pool.

10. (Optional) Has your project obtained any legal opinions or memoranda regarding the regulatory standing of the token or an explanation of the same from the perspective of any jurisdiction? If so, those materials should be provided for community review.

Not applicable.

10. (Optional) Describe whether there are any regulatory registrations for the token and provide related documentation (including an explanation of any past or existing interactions with any regulatory authorities, regardless of jurisdiction), if applicable

Not applicable.

11. (Optional) List any possible oracle data sources for the proposed Collateral type

The same oracle that is used for DAI and USDC, just weighted according to the current weights they have in the G-UNI pool which changes according to price movements on Uniswap v3.

12. (Optional) List any parties interested in taking part in liquidations for the proposed Collateral type

Gelato Network could potentially help with that, but we assume other Maker Keepers that are already doing USDC liquidations would be most suitable for helping with those kind of liquidations.

Happy to answer any questions you might have :slight_smile:


Would be a great way to incentivize maintaining the DAI peg and generate some risk adjusted returns.


Would love to see G-UNI options for other DAI<>stablecoin pairs as well. I think GUSD, PAX, and BUSD pairs could be viable as maker collateral.


Definitely, we will be deploying G-UNI pools for all of these stablecoin pairs.


I like this very much, I hope pornto implement those stable currency pair groups.

Soon DAI will be the queen of stable coins hehehehe


How excellent and very well explained, go Dai gooo :ok_hand:


Any chance of implementing an ETH/DAI pool? The only reason I still supply liquidity on V2 is because the interest rates keep dropping on the ETH-DAI-V2 vault.

I think that would be a great opportunity for Maker to find some much needed extra collateral

We are starting with the stable-stable pool as it doesn’t require active management of the ranges. Adding in actively managed pools is possible, and we should pursue it, but it will take time to find a solution that is safe and competitive.


G-UNI does support adding active managed strategies that are “trustless” in the sense they are automated in the same way reinvestment fees are done by Gelato where the data used to choose the ticks is generated on-chain. However, these strategies would have to be pre-defined at the start and then never change, thus they should be really carefully considered before implementing.

I was thinking a very conservative strategy might be good, supplying liquidity on a fairly broad range and then only rebalancing around the new price if it was out of range for e.g. 2 days. Let’s brainstorm those together, good thing about G-UNI is that all of those pieces can be added without changing the underlying codebase.


It would be interesting to see that in action, I think the coined IAD could be a great guarantor for the rebalancing of any open position with what you propose.

1 Like