Intermediate

What Is an Impermanent Loss?

By DappAtlas Editorial ·

On this page

Impermanent loss is the drop in value of a liquidity provider's position compared with holding the same tokens outside the pool. It happens when the price of one token changes relative to the other, and it shrinks back to zero if the price returns to where it was.

Key takeaways

  • It is measured against holding the tokens, not against your deposit in dollars.
  • In a 50/50 constant-product pool, IL = 2*sqrt(r)/(1+r) - 1, where r is the price ratio.
  • A 2x price change gives about 5.7% loss; a 5x change about 25.5%.
  • The loss is the same whether the price rises or falls by the same factor.
  • Trading fees earned can offset it.

Why it happens

A constant-product pool keeps the product of its two reserves fixed. When the market price moves, traders buy the cheaper token from the pool until its price matches, so the pool ends up holding more of the token that fell and less of the one that rose.[1]

Uniswap's docs give the pool sizes at any price p, assuming constant liquidity: ETH in the pool = sqrt(k ÷ p) and the other token = sqrt(k × p), where k is the constant product. These two equations are all you need to compute a position by hand.[1]

Your share is tracked with liquidity tokens. They are an accounting tool that records your percentage of the pool, and when others add or remove liquidity, tokens are minted or burned so your percentage stays the same.[1]

The formula

For a 50/50 constant-product pool such as Uniswap v2: impermanent loss = 2 * sqrt(r) / (1 + r) - 1, where r is the new price divided by the price at deposit.[1]

Uniswap's docs list these results for the formula: a 1.25x price change gives a 0.6% loss relative to holding, 1.5x gives 2.0%, 1.75x gives 3.8%, 2x gives 5.7%, 3x gives 13.4%, 4x gives 20.0% and 5x gives 25.5%.[1]

The loss grows faster than the price move at first and then flattens: going from 1x to 2x costs 5.7 points, while going from 4x to 5x adds only 5.5 more.[1]

Worked example

If ETH doubles against USDC, r = 2. Then 2 * sqrt(2) / 3 - 1 = 2.828 / 3 - 1 = -0.057, so the position is worth about 5.7% less than holding. A halving (r = 0.5) gives the same 5.7%.[1]

A larger move, with illustrative values: you deposit 1 ETH and 2,000 USDC at 2,000 USDC per ETH, so k = 1 × 2,000 = 2,000 for your share. ETH rises to 8,000 (r = 4). Your ETH = sqrt(2,000 ÷ 8,000) = 0.5, and your USDC = sqrt(2,000 × 8,000) = 4,000.[1]

Position value: 0.5 × 8,000 + 4,000 = 8,000 USDC. Holding value: 1 × 8,000 + 2,000 = 10,000 USDC. The gap is 2,000 ÷ 10,000 = 20%, which matches the 4x row in Uniswap's table.[1]

If ETH instead falls to 500 (r = 0.25): ETH = sqrt(2,000 ÷ 500) = 2 and USDC = sqrt(2,000 × 500) = 1,000. Position = 2 × 500 + 1,000 = 2,000 USDC; holding = 500 + 2,000 = 2,500 USDC. The gap is 500 ÷ 2,500 = 20% again. Both the pool and holding lost dollar value here; impermanent loss is only the 500 USDC difference between them.[1]

Why it is called impermanent

If the price returns to the ratio at deposit, the loss disappears. It becomes permanent when you withdraw while the price is different.[1]

The example in Uniswap's docs

Uniswap's v2 docs walk through an LP who adds 10,000 DAI and 100 WETH, worth $20,000, to a pool of 100,000 DAI and 1,000 ETH. That is a 10% share.[1]

ETH moves from $100 to $150. Arbitrage leaves the pool near 122,400 DAI and 817 ETH; the docs check this with 122,400 × 817 ≈ 100,000,000 (the constant product) and 122,400 ÷ 817 ≈ 150 (the new price).[1]

The 10% share now withdraws 12,240 DAI and 81.7 ETH, worth $24,500. Holding would be 10,000 + 100 × 150 = $25,000, so about $500 was given up by providing liquidity, before fees.[1]

Can fees cover it

In Uniswap v2, 0.3% of all trade volume is paid to liquidity providers in proportion to their share, and the fees are added back to the pool by default. The docs say the balance between fee income and loss depends on how much trading happens in between, and back-and-forth price movement helps the LP.[1]

Illustrative break-even: take the 1 ETH + 2,000 USDC deposit above and let ETH double to 4,000 (r = 2). Position = 2 × sqrt(2,000 × 4,000) = 5,656.85 USDC. Holding = 4,000 + 2,000 = 6,000 USDC. The gap is 343.15 USDC, or 5.7%.[1]

To earn 343.15 USDC at 0.3%, your share of the volume must be 343.15 ÷ 0.003 = 114,383 USDC. If you own 1% of the pool, total pool volume must be about 114,383 ÷ 0.01 = 11.44 million USDC over the period. This ignores fee compounding and changes in your share.[1]

How to check it yourself

Write down the price and your token amounts at deposit. Later, take the current price, compute r = current price ÷ deposit price, and plug it into 2 × sqrt(r) ÷ (1 + r) − 1. For a direct check, compare what the pool would return on withdrawal with the current value of your original tokens.[1]

The Bottom Line

Providing liquidity pays trading fees but costs you value when prices diverge. Compare expected fees with the loss for the price moves you expect.

Educational content, not financial advice.

Pros
  • Fees paid by traders can exceed the loss
  • The loss reverses if the price returns
Cons
  • Larger price moves mean larger losses
  • It applies in both directions of price movement
Sources (1)
  1. [1] Uniswap docs. “Understanding returns (Uniswap v2).” Accessed Sep 26, 2026.
DeFi

Impermanent loss FAQ

Is impermanent loss a real loss?

Only when you withdraw at a different price ratio than at deposit. Until then it is a gap versus holding.

How much do I lose if the price doubles?

About 5.7% compared with holding the tokens, before trading fees, in a 50/50 constant-product pool.

Does impermanent loss mean I lose money in dollars?

Not necessarily. It measures the gap against holding. If both tokens rise, your position can gain in dollars and still show impermanent loss versus holding.

What price move gives a 20% impermanent loss?

A 4x change, up or down (r = 4 or r = 0.25), in a 50/50 constant-product pool, before fees.

ShareXLinkedInRedditEmailReport outdated info

Who made this page

Written by
DappAtlas Editorial

Editorial team

Compiles and updates the glossary and guides on DappAtlas. Facts come from primary sources: each project’s own pages, protocol docs and standards. No project pays to be mentioned.

Lists from DappAtlas Editorial
Fact check
Checked against 1 source

Last check: Sep 26, 2026

A value we could not confirm on the project’s own pages is marked “Not verified” instead of estimated.

How we review

How this page works

Sources: Uniswap docs. Data as of Sep 26, 2026.

How we review

Not affiliated with any project listed. Educational content, not financial advice.