In Uniswap v3, LP’s can concentrate their capital within custom price ranges, providing greater amounts of liquidity at desired prices.
Whereas Uniswap v2 required all users to provide liquidity across the entire price curve from 0 to infinity, Uniswap v3 allows Liquidity Providers (LPs) to optionally concentrate capital in the price range they believe will generate the highest return.
This guide will walk you through the steps to provide liquidity via the Uniswap app. For a more in-depth discussion of concentrated liquidity, please refer to the V3 announcement post.
How to Provide Liquidity on Uniswap V3
1. Select Pair
The first step is to select which pair of tokens you wish to provide as liquidity. Any pair of ERC-20 tokens is valid, but each pair has different characteristics. You may wish to consider factors such as TVL, trading volume, and your assessment of the risk that these token prices diverge in the future. You can analyze data about popular token pairs on Uniswap Info.
2. Review Fee Tier
Once you’ve selected a pair of tokens, the next step is to select the right fee tier. Every pair of tokens offers three fee tiers:
0.05% fee tier: Best for stable pairs
The 0.05% fee tier is ideal for token pairs that typically trade at a fixed or highly correlated rate, such as stablecoin-stablecoin token pairs (e.g. DAI-USDC). LPs take on minimal price risk in these pools, and traders expect to pay minimal fees.
0.3% fee tier: Best for most pairs
The 0.30% fee tier is best suited for less correlated token pairs such as the ETH-DAI token pair, which are subject to significant price movements both to the upside and downside. This higher fee is more likely to compensate LPs for the greater price risk that they take on relative to stablecoin LPs.
1.0% fee tier: Best for exotic pairs
The 1.00% fee tier is designed for exotic assets, where LPs take on extreme price risk (e.g. ETH-GTC). Relevant assets are those that are particularly subject to monotonic price movements.
The app will auto-select the fee tier with the most liquidity because that is a good heuristic. In most cases, LPs will align around one fee tier for a pair. In the example above, we see 82% of all ETH/USDC liquidity is provided in the 0.3% tier making that a good choice for prospective ETH/USDC LPs.
If you’re new to LP’ing, we recommend using the auto-selected fee tier. However, advanced LP strategies may find it worthwhile to provide liquidity in the other fee tiers. Note that LPs who choose the non-consensus fee tier might be running a sophisticated strategy to offset certain risks. Please do your own research and tread carefully when considering other fee tiers.
3. Set Price Range
Next you need to choose a price range in which to provide liquidity. When making a price range decision, you should consider the degree to which you think prices will move over the course of your position's lifetime. You should also consider your willingness to actively manage the position as the market evolves, and the economics of transactions required to actively manage a position.
If the price moves outside your specified range, then your position will be concentrated in one of the two assets and not earn trading fees until the price returns to their range. See the visualizations in this blog post to observe how your assets are affected when the market price moves out of range.
Note that your price will snap to the nearest tick. Don't worry if you're unable to type in a nice round number! This is expected because of how ticks work in Uniswap v3.
Instead of picking a price range, you can provide liquidity across the Full Range like in Uniswap v2 by clicking the Full Range button. However, please note your rate of return will be significantly lower than a similar position with a more narrow price range. Learn more about the consequences of a Full Range position here.
The following community tools simulate Uniswap v3 positions and help you evaluate your price range. Please note that these tools have not been audited by Uniswap Labs and may be subject to inaccuracies.
4. Deposit Amounts
With your pair, fee tier, and price range selected, you can now decide how much capital to contribute to this position. Enter a value in one of the ‘Deposit Amounts' boxes and the other box will automatically populate the corresponding amount. The ratio of these two fields is based on the position of your price range around the market price. If your price range skews more toward one side of the market price, then you will provide more of that asset. This can be okay -- it is not necessary to target a 50/50 ratio though some strategies may choose that ratio.
You can adjust your ratio by sliding the price range left-right along the chart or dragging the min or max price boundary. The deposit amount that you typed in will remain fixed, while the second asset amount will adjust to the new ratio based on your new price range.
If you select a price range that does not include the current market price, then you'll only need to provide a single asset instead of both.
5. Approve and Add
Finally, you are ready to submit the transaction. First, you may need to approve the Uniswap v3 router contract to spend tokens on your behalf. This is only necessary the first time you provide liquidity with a token.
Once the approve transaction has been confirmed, you can press preview, review the transaction details, and then click Add to trigger the transaction in your wallet.
Congrats! Once that transaction confirms, your assets now providing liquidity to Uniswap traders and your position is earning fees. You can monitor and manage your position on the Pool page.
Still have questions? Check out the details of V3 vs V2 to learn more.