How to Add Liquidity – Pancake Swap
“Liquidity” is central to how PancakeSwap’s Exchange works. You can add liquidity for any token pair by staking both through the Liquidity page.
In return for adding liquidity, you’ll receive trading fees for that pair, and receive LP Tokens you can stake in Farms to earn CAKE rewards!
To provide liquidity, you’ll need to commit an amount of any token pair you like. Your lowest value (in USD) of the two tokens will be the limit to the liquidity you can provide.
In this example, we will add liquidity using BNB and CAKE.
2. Click the Add Liquidity button.
3. For the top Input, click ‘Select a currency’. Then choose one of the token in the liquidity pair you want to add liquidity to. Here, we are gong to use BNB as an example.
4. For the bottom input, click ‘Select a currency’. And choose the other token in the liquidity pair you want to add liquidity to. Here, we are gong to use CAKE as an example.
5. Enter an amount on one of the tokens under “Input”. The other should be calculated and filled automatically.
(If one of the token does not have enough balance. You will see an error and the button being greyed out. Please enter a lower amount to proceed.)
6. Click the Enable CAKE button. If you are adding liquidity against tokens other than BNB, you might need to click enable twice for each token in your pair. Your wallet will ask you to confirm the action.
7. The Supply button will then light up. Click to proceed.
8. Your wallet will ask you for confirmation. Confirm your transaction from your wallet.
9. Soon after, you will see your LP Token balance at the bottom of the page.
You can repeat the above steps to add more liquidity, or add liquidity to different pairs.
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 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.
You can compare your expected fees per dollar of liquidity using the simulator tool in this blog post.
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 FAQ to learn more.
What Is a Liquidity Provider?
A liquidity provider is a user who funds a liquidity pool with crypto assets he/she owns to facilitate trading on the platform and earn passive income on their deposit.
Liquidity pools are leveraged by the decentralized exchanges that use automated market maker-based systems to allow trading of illiquid trading pairs with limited slippage. Instead of using traditional order book-based trading systems, such exchanges use funds that are held for every asset in every trading pair to allow trades to be executed.
While trading illiquid trading pairs on order book-based exchanges could lead to suffering from great slippage and the inability to execute trades, the advantage of liquidity providers is that trades can always be executed as long as the liquidity pools are big enough. For this reason, liquidity providers are seen as trade facilitators and paid with the transaction fees paid for the trades that they enabled.
How much liquidity providers are paid is based on the percentage of the liquidity pool that they provide. When funding the pool, they are usually required to fund two different assets to enable traders to switch between one to the other by trading them in pairs.
What is Impermanent Loss in Crypto?
Impermanent loss is the unrealized loss that occurs when your share of a liquidity provider position becomes uneven compared to its original position. This only happens to people who provide liquidity to a liquidity pool and is easiest to explain through examples.
Let’s say you put up 100 ETH and $10,000 into a liquidity pool. Most liquidity pools want there to be a 50:50 ratio when you deposit, so we can reasonably assume the price of 1 ETH is $100 in this example. So there is $10,000 worth of a stablecoin and $10,000 worth of ETH. So you take that total $20,000 and put it into the liquidity pool hoping to gain a profit on some of the fees that happen within the pool.
[ETH price rises to $110]
Let’s say a trader comes along and realizes he can buy ETH at your liquidity pool and sell it to Coinbase for $110. He keeps buying more and more and the algorithm keeps charging him more until he stops making money. That’s how these decentralized exchanges work – you pay more and more for each asset you want to buy so it never runs out of that asset to sell you. However, in our case, the asset was much cheaper than another exchange, so it created an arbitrage opportunity for a trader.
If we do the math, we figure out he was able to give $488 and buy 4.652 ETH until the liquidity pool price was also $110. If he bought any more eth, he would be losing money. So he immediately sold this cheaper ETH for $511.82 to Coinbase, making a profit of $23.82 by buying and selling to two different liquidity pools.
Now, let’s take the stance of the liquidity provider. This means there is now $10488 in the pool and 95.347 ETH in the pool (at least in terms of his share). If we take 95.347 and multiply it by $110 because that’s the going price of ETH we get 10488. So 10488 + 10488 gives us a total value of $20976. So the liquidity provider now has a total value of $20976, making a nice $976 because ETH went up. He made some decent money today! However, to calculate impermanent loss, we need to calculate how much money he WOULD’VE had if it didn’t give money to the liquidity pool and just held it instead.
So he would’ve still had his initial $10,000, but what about if he held his 100 ETH? That 100 ETH is now worth $11,000, so he would’ve had a total of $21,000. This means he has a total impermanent loss 21,000- 20976, which is $24.
In short, this liquidity provider would’ve made more money if he had just held onto his Ethereum and stablecoin. This might not seem like much, but imagine a similar scenario where the price jumps 20% instead of 10%, or where the price dropped by half.
Impermanent loss is caused when the price difference between two assets in a pool is changed. As the change increases, so does the impermanent loss. If ETH goes back to $100, then the impermanent loss is basically cancelled and there is none, because both assets would be the same as when the Liquidity Provider initially invested. They call it impermanent loss because it only becomes permanent whenever you cash out your liquidity. Until you do that, there is still an opportunity for the loss to normal itself out. Impermanent loss is the loss you get when you have less money compared to the value of our assets that you had if you would’ve just held them, compared to investing them in a liquidity pool.
Impermanent Loss Calculators:
Uniswap V3 Calculator & Simulator
Impermanent Loss Calculator