Impermanent Loss Explained On Uniswap
If you’ve been involved with DeFi at all, you almost certainly heard this term thrown around. Impermanent loss happens when the price of your tokens changes compared to when you deposited them in the pool. The larger the change is, the bigger the loss.
Wait, so I can lose money by providing liquidity? And why is the loss impermanent? Well, it comes from an inherent design characteristic of a special kind of market called an automated market maker. Providing liquidity to a liquidity pool can be a profitable venture, but you’ll need to keep the concept of impermanent loss in mind.
DeFi protocols like Uniswap, SushiSwap, or PancakeSwap have seen an explosion of volume and liquidity. These liquidity protocols enable essentially anyone with funds to become a market maker and earn trading fees. Democratizing market-making has enabled a lot of frictionless economic activity in the crypto space.
So, what do you need to know if you want to provide liquidity for these platforms? In this article, we’ll discuss one of the most important concepts – impermanent loss.
What is impermanent loss?
Impermanent loss happens when you provide liquidity to a liquidity pool, and the price of your deposited assets changes compared to when you deposited them. The bigger this change is, the more you are exposed to impermanent loss. In this case, the loss means less dollar value at the time of withdrawal than at the time of deposit.
Pools that contain assets that remain in a relatively small price range will be less exposed to impermanent loss. Stablecoins or different wrapped versions of a coin, for example, will stay in a relatively contained price range. In this case, there’s a smaller risk of impermanent loss for liquidity providers (LPs).
So why do liquidity providers still provide liquidity if they’re exposed to potential losses? Well, an impermanent loss can still be counteracted by trading fees. In fact, even pools on Uniswap that are quite exposed to impermanent loss can be profitable thanks to the trading fees.
Uniswap charges 0.3% on every trade that directly goes to liquidity providers. If there’s a lot of trading volume happening in a given pool, it can be profitable to provide liquidity even if the pool is heavily exposed to impermanent loss. This, however, depends on the protocol, the specific pool, the deposited assets, and even wider market conditions.
How does impermanent loss happen?
Let’s go through an example of how impermanent loss may look like for a liquidity provider.
Alice deposits 1 ETH and 100 DAI in a liquidity pool. In this particular automated market maker (AMM), the deposited token pair needs to be of equivalent value. This means that the price of ETH is 100 DAI at the time of deposit. This also means that the dollar value of Alice’s deposit is 200 USD at the time of deposit.
In addition, there’s a total of 10 ETH and 1,000 DAI in the pool – funded by other LPs just like Alice. So, Alice has a 10% share of the pool, and the total liquidity is 10,000.
Let’s say that the price of ETH increases to 400 DAI. While this is happening, arbitrage traders will add DAI to the pool and remove ETH from it until the ratio reflects the current price. Remember, AMMs don’t have order books. What determines the price of the assets in the pool is the ratio between them in the pool. While liquidity remains constant in the pool (10,000), the ratio of the assets in it changes.
If ETH is now 400 DAI, the ratio between how much ETH and how much DAI is in the pool has changed. There is now 5 ETH and 2,000 DAI in the pool, thanks to the work of arbitrage traders.
So, Alice decides to withdraw her funds. As we know from earlier, she’s entitled to a 10% share of the pool. As a result, she can withdraw 0.5 ETH and 200 DAI, totaling 400 USD. She made some nice profits since her deposit of tokens worth 200 USD, right? But wait, what would have happened if she simply holds her 1 ETH and 100 DAI? The combined dollar value of these holdings would be 500 USD now.
We can see that Alice would have been better off by HODLing rather than depositing into the liquidity pool. This is what we call impermanent loss. In this case, Alice’s loss wasn’t that substantial as the initial deposit was a relatively small amount. Keep in mind, however, that impermanent loss can lead to big losses (including a significant portion of the initial deposit).
With that said, Alice’s example completely disregards the trading fees she would have earned for providing liquidity. In many cases, the fees earned would negate the losses and make providing liquidity profitable nevertheless. Even so, it’s crucial to understand impermanent loss before providing liquidity to a DeFi protocol.
Impermanent loss estimation
So, impermanent loss happens when the price of the assets in the pool changes. But how much is it exactly? We can plot this on a graph. Note that it doesn’t account for fees earned for providing liquidity.
Here’s a summary of what the graph is telling us about losses compared to HODLing:
- 1.25x price change = 0.6% loss
- 1.50x price change = 2.0% loss
- 1.75x price change = 3.8% loss
- 2x price change = 5.7% loss
- 3x price change = 13.4% loss
- 4x price change = 20.0% loss
- 5x price change = 25.5% loss
There’s something important you also need to understand. Impermanent loss happens no matter which direction the price changes. The only thing impermanent loss cares about is the price ratio relative to the time of deposit. If you’d like to get an advanced explanation for this, check out pintail’s article.
The risks of providing liquidity to an AMM
Frankly, an impermanent loss isn’t a great name. It’s called impermanent loss because the losses only become realized once you withdraw your coins from the liquidity pool. At that point, however, the losses very much become permanent. The fees you earn may be able to compensate for those losses, but it’s still a slightly misleading name.
Be extra careful when you deposit your funds into an AMM. As we’ve discussed, some liquidity pools are much more exposed to impermanent loss than others. As a simple rule, the more volatile the assets are in the pool, the more likely it is that you can be exposed to impermanent loss. It can also be better to start by depositing a small amount. That way, you can get a rough estimation of what returns you can expect before committing a more significant amount.
One last point is to look for more tried and tested AMMs. DeFi makes it quite easy for anyone to fork an existing AMM and add some small changes. This, however, may expose you to bugs, potentially leaving your funds stuck in the AMM forever. If a liquidity pool promises unusually high returns, there is probably a tradeoff somewhere, and the associated risks are likely also higher.
Impermanent loss is one of the fundamental concepts that anyone who wants to provide liquidity to AMMs should understand. In short, if the price of the deposited assets changes since the deposit, the LP may be exposed to impermanent loss.