CryptoCMD CryptoCMD

Impermanent Loss vs Fees: When Providing Liquidity Pays

A step-by-step worked example of a liquidity pool position, showing when trading fees beat price divergence and when they don't, with a checklist for deciding whether to provide liquidity at all.

Daniel Okoro · · 10 min read
Impermanent Loss vs Fees: When Providing Liquidity Pays
Photo: RDNE Stock project / Pexels

Key takeaways

  • →Impermanent loss compares your pool position with simply holding the same tokens. It isn't measured against cash.
  • →A 2x price move in either direction costs about 5.7% against holding. A 4x move costs 20%.
  • →Fees only win if trading volume stays high relative to the pool's size for long enough to outrun the divergence.
  • →Displayed pool APRs look backward. Volume can drop the week after you deposit.
  • →If you expect one token to trend hard, holding usually beats providing liquidity.

Providing liquidity only makes money if the trading fees you collect are bigger than what you lose to price divergence. That loss is called impermanent loss. Everything else about being a liquidity provider (LP) comes down to that one comparison. This guide works through it with numbers, so you can run the same check on any pool before you deposit.

What impermanent loss actually is

When you deposit into a standard automated market maker (AMM) pool, you hand over two tokens in equal value. Say that's a volatile token and a stablecoin. Traders swap against the pool, and the pool's formula keeps rebalancing your holdings as the price moves.

The rebalancing works against you. When the volatile token rises, the pool sells some of it for you on the way up. When it falls, the pool buys more of it on the way down. You end up holding less of whatever went up and more of whatever went down.

Impermanent loss is the gap between two numbers:

  • What your pool position is worth now.
  • What the same tokens would be worth if you'd just held them in your wallet.

That's the whole definition. It isn't a loss against your starting dollar amount. If prices double you can be up in dollars and still have impermanent loss, because holding would have made you more.

It's called impermanent because the gap closes if the price returns to where it was when you deposited. If you withdraw while prices are diverged, the loss is locked in. In practice most people withdraw at a different price than they entered, so treat it as a real cost.

How the pool math works (the short version)

Most basic pools use a constant product formula. Multiply the quantity of token A by the quantity of token B and you get a fixed number, k. Trades can change the two quantities, but their product stays the same, apart from the small amount fees add.

That one rule decides how much of each token you hold at any price. It also gives a clean formula for impermanent loss that depends only on how far the price ratio has moved:

IL = 2 × √r ÷ (1 + r) − 1, where r is the new price divided by the starting price.

You don't need to memorise it. The table matters more:

Price change of volatile tokenImpermanent loss vs holding
Down 75% (0.25x)−20.0%
Down 50% (0.5x)−5.7%
Up 25% (1.25x)−0.6%
Up 50% (1.5x)−2.0%
Up 100% (2x)−5.7%
Up 200% (3x)−13.4%
Up 300% (4x)−20.0%
Up 400% (5x)−25.5%

Two things stand out. Small moves barely hurt. Big moves hurt a lot, and the damage speeds up as the move gets bigger. It's also symmetric in ratio terms: halving costs the same as doubling.

Where the fees come in

Impermanent Loss vs Fees: A Worked Example for Liquidity Providers
Photo: Rafael Minguet Delgado / Pexels

Every swap through the pool pays a fee, often somewhere between 0.01% and 1% depending on the pool. Those fees go to LPs in proportion to their share of the pool. Your fee income depends on three things:

  • Fee tier: the percentage charged per swap.
  • Volume: how much gets traded through the pool.
  • Your share: your deposit divided by the pool's total liquidity.

Fees build up steadily. Impermanent loss depends on how far the price has moved. So the question is always the same: over the time you're in the pool, does the steady stream of fees outrun the divergence?

The worked example

All numbers below are hypothetical, chosen to make the math easy to follow. They don't describe any real token or pool.

You have $10,000. You deposit into an ABC/USDC pool where ABC is priced at $100. Half goes in each side:

  • 50 ABC ($5,000)
  • 5,000 USDC ($5,000)

Your slice of the constant product is 50 × 5,000 = 250,000.

The pool holds $1,000,000 in total liquidity, so you own 1% of it. The fee tier is 0.3%. Daily trading volume is $500,000. That means the pool collects $1,500 a day in fees, and your 1% share is $15 a day.

You plan to stay in for 60 days. At that volume you'd collect $900 in fees. To keep things simple, we'll treat fees as paid out separately rather than compounding back into the pool.

Scenario A: ABC doubles to $200, volume holds up

The pool rebalances you. Your new holdings follow from k = 250,000:

  • ABC: √(250,000 ÷ 200) ≈ 35.36 ABC, worth $7,071
  • USDC: √(250,000 × 200) ≈ 7,071 USDC
  • Pool position: $14,142

If you'd just held 50 ABC and 5,000 USDC, you'd have 50 × $200 + $5,000 = $15,000.

Impermanent loss: $858, or 5.7%. Fees earned: $900. You come out $42 ahead of holding. That's barely a win. One bad gas fee wipes it out.

Scenario B: ABC doubles, but volume drops

Same price move, but traders lose interest and volume falls to $150,000 a day. Your fee share drops to $4.50 a day, or $270 over 60 days.

Impermanent loss is still $858. You end up $588 behind where you'd be if you'd held. Nothing about the price changed. Only the volume did, and that alone flipped the result.

Scenario C: ABC triples to $300

Pool position: 2 × √(250,000 × 300) ≈ $17,321. Holding: 50 × $300 + $5,000 = $20,000.

Impermanent loss is $2,679, or 13.4%. Even at the full $900 in fees, you're $1,779 behind holding. A big trend beats a busy pool.

Scenario D: ABC halves to $50

Pool position: 2 × √(250,000 × 50) ≈ $7,071. Holding: 50 × $50 + $5,000 = $7,500.

Impermanent loss is $429. With $900 in fees you're $471 ahead of holding. You've still lost money in dollars, though: $7,071 + $900 = $7,971, down from $10,000. Beating holding isn't the same as making money.

Scenario E: ABC swings around and ends at $100

Volatile but flat. The price runs up, crashes, and recovers. Arbitrage traders churn through the pool the whole time. Impermanent loss at withdrawal is zero, and you keep all $900 in fees (likely more, since choppy markets bring volume). This is the LP's best case: lots of movement, no net direction.

The pattern across all five scenarios: LPs get paid for chop and punished for trends.

The breakeven, in one line

In our example, fees came to $15 a day on $10,000, which is 0.15% a day. Over 60 days that's 9%. Use the table to see what that buys you. A 9% fee cushion covers anything up to roughly a 2.5x move either way. Past that, divergence wins.

So the useful question isn't whether the APR is high. It's this: over my holding period, will the fee yield beat the impermanent loss from the price move I realistically expect? High APRs usually sit on volatile pairs, and that's not a coincidence. The high fees are often what you're being paid to absorb the higher risk.

Step-by-step: checking a pool before you deposit

  1. Write down the pair and the fee tier. Note whether it's a standard full-range pool or a concentrated-liquidity pool where you pick a price range.
  2. Find total liquidity and recent daily volume. Use an average over several weeks, not yesterday's spike.
  3. Calculate your share. Your deposit divided by total liquidity, after your deposit is added.
  4. Estimate daily fees. Daily volume × fee tier × your share. Then halve it as a stress test, because volume tends to fall.
  5. Pick a holding period and multiply to get the total fees you expect.
  6. Pick a realistic price range for the volatile token over that period. Think about both directions.
  7. Look up impermanent loss at the edges of that range using the table or the formula.
  8. Subtract costs. Count gas for depositing, withdrawing and claiming, plus any swap fees to get the 50/50 split.
  9. Compare. If expected fees minus costs don't clearly beat impermanent loss at your pessimistic price edge, don't deposit. Just hold.
  10. Set an exit rule before you enter. For example, withdraw if volume falls below a certain level or the price leaves a certain band.

Common mistakes

  • Trusting the headline APR. It's calculated from past volume, often over a short window. A token launch or a news spike can inflate it for days before it collapses.
  • Comparing against cash instead of holding. Seeing your position up in dollars doesn't mean you're winning. Check what holding would have given you.
  • Ignoring your own conviction. If you think a token is going to 5x, providing liquidity means selling it into the rally. Just hold it.
  • Forgetting dilution. When high fees draw more liquidity into the pool, your share shrinks and so do your fees, even if volume stays the same.
  • Setting concentrated ranges too tight. Narrow ranges multiply your fees while the price stays inside them. They also multiply impermanent loss. Once the price leaves the range you earn nothing and hold 100% of whichever token lost value.
  • Underestimating gas. On expensive networks, a small position can spend its entire fee income on entry, exit and claim transactions.
  • Ignoring token risk entirely. Impermanent loss is the polite risk. A token that goes to zero takes half your position with it, and the pool will have swapped your stablecoins into it on the way down.

A quick checklist: should you provide liquidity at all?

  • Am I happy holding both tokens for the whole period, even if one falls hard?
  • Do I expect this pair to chop sideways rather than trend?
  • Do fees still beat impermanent loss for my expected move after I halve the volume estimate?
  • Is my position big enough that gas is a rounding error?
  • Do I understand the pool contract, and is it widely used and audited?
  • Do I have a written exit rule?

If you can't say yes to most of these, holding is probably the better trade. It's also the simpler one.

FAQ

Do stablecoin-to-stablecoin pools have impermanent loss?

Barely, as long as both coins hold their peg, because the price ratio hardly moves. That's why those pools usually charge tiny fees and pay modest yields. The real risk is a depeg. If one stablecoin breaks, the pool fills your side with the broken one, and the loss can be severe.

Can fees ever fully cover impermanent loss?

Yes. It happens often in busy pools on pairs that move a lot but end up near where they started, like Scenario E. It happens much less often when one token trends strongly in one direction. Fees build up in a straight line over time, while impermanent loss grows faster and faster as the price diverges, so a long, steady trend usually wins.

Does impermanent loss apply if I withdraw at the same price I entered?

No. If the price ratio is exactly where it was at deposit, the loss is zero and you keep the fees. The catch is that you rarely control when you need to exit. A loss that's impermanent on paper becomes permanent the moment you withdraw at a different price.

So the real question before any deposit isn't how much the pool is paying. It's whether you think this pair is about to trend or about to chop, and how sure you are.

Keep learning