How to calculate impermanent loss (and the parts most calculators skip)
At a 4x price move, your impermanent loss is about 20%. At 10x, it's roughly 42%. Those two numbers do most of the work in any liquidity pool decision you'll make in DeFi, and yet plenty of people stake real money into pools without ever running them.
The formula behind those percentages is short. The implications are not. This article walks through the math, a worked example with actual dollar amounts, and the things our Impermanent Loss Calculator (or any other) won't tell you on its own.
The impermanent loss formula, in one sentence
Impermanent loss in a standard 50/50 constant product pool comes from this:
IL = 2·√R / (1+R) − 1
R is the price ratio. Take the current price of your volatile asset and divide it by the price you deposited at. If you put ETH in at $2,000 and it's now $4,000, R = 2.
Plug R = 2 into the formula and you get about −0.0572. That's a 5.72% drop versus just holding the same tokens in your wallet. (Yes, you can derive this from the constant product invariant xy = k, but the textbook derivation isn't really what matters here. The number on the right side of the equation is what matters.)
A few benchmark values worth memorizing:
- 1.5x price move (R = 1.5): about 2% IL
- 2x: 5.7%
- 3x: 13.4%
- 4x: 20%
- 5x: 25.5%
- 10x: about 42.5%
These numbers assume a vanilla Uniswap V2-style 50/50 pool. Concentrated liquidity (Uniswap V3) and skewed pools (Balancer 80/20) follow different curves, and the formula above no longer applies cleanly to them.
A worked example with real numbers
Say you deposit $5,000 worth of ETH (2.5 ETH at $2,000) and $5,000 of USDC into a 50/50 pool. Total starting value: $10,000.
ETH then runs to $4,000. The AMM, doing what AMMs do, has been quietly selling your ETH the entire way up. By the time the price settles at $4,000, you hold roughly 1.77 ETH and $7,071 USDC. Pool value: about $14,142.
Had you just held the original 2.5 ETH plus your $5,000 USDC, you'd have $10,000 + $5,000 = $15,000 at the new price.
The gap is $858, or about 5.72%. Matches the formula. You're not in the red. You went from $10k to $14k. You just left some upside on the table compared to doing nothing.
This is the part the formula gets right and the part most articles overstate. Whether $858 is a real "loss" depends entirely on whether the pool paid you enough in fees and rewards to make up for it. Frequently it does. Sometimes it doesn't.
What the calculator doesn't show you
A typical impermanent loss calculator (ours included) outputs a single percentage based on price-in versus price-out. That number is mathematically correct and economically incomplete. It ignores:
- Trading fees collected. Uniswap V3's documented fee tiers are 0.01%, 0.05%, 0.30%, and 1%. ETH/USDC sits mostly in the 0.05% pool and pays fees in the 5-15% APR range during normal volume conditions, more in the 0.30% pool when price action picks up. Over a year of moderate volatility, fees often beat the IL.
- Token rewards. Yield farming programs on protocols like Aerodrome and Curve gauges can pay 20-100% APR in protocol tokens on top of fees. The IL is real, but so is the income.
- Gas costs. On Ethereum mainnet, depositing and withdrawing from an LP can run $30-150 per transaction depending on conditions. On a $1,000 position this matters more than the IL itself.
- Slippage on entry and exit. If you're providing into a thin pool, the act of depositing changes the prices. Worth checking the pool depth before committing.
The IL number on its own answers the question "what would I have if I'd held instead?" That's useful but it isn't the same question as "should I provide liquidity here?" Don't confuse the two.
Stablecoin pools and the Terra problem
Conventional wisdom says stablecoin pools (USDC/USDT, DAI/USDC) have basically zero impermanent loss. That's mostly true and almost always misleading.
Two stablecoins that stay near $1 each give you R close to 1, which gives you IL close to 0. Curve's 3pool has lived in this near-zero IL regime for years. Fine.
The catch: stablecoins de-peg sometimes. UST in May 2022 went from $1 to under $0.10 in a week. Anyone in a UST/USDC pool watched their R collapse to roughly 0.1, their IL spike to almost 38%, and their pool drain to almost entirely UST as arbitrageurs took the USDC out. The "low risk" label was correct right up until it wasn't.
Two years ago I'd have told you stablecoin pools were the genuinely safe play in DeFi. UST changed that for me. The math is still right; the assumption that the pegs hold is the part you're actually betting on.
When fees actually save you
Sometimes the math lies. Or rather, the math is correct but the conclusion you draw from it isn't.
Take a high-volume ETH/USDC pool over a year where ETH goes from $2,000 to $3,000 and back. Net price change: zero. IL based on starting and ending price: also zero. But during that year, ETH spent significant time at $2,500, $2,800, $1,900, and so on. Every time the price moved, the pool rebalanced, locking in a small amount of IL along the way. Pool fee income, however, accumulated continuously.
Side note: "impermanent" is one of crypto's worst pieces of branding. The loss is permanent the second you withdraw, and almost everyone withdraws. "Divergence loss" would have been more honest. Anyway, back to fees.
The right way to think about a pool isn't "what's my IL going to be" in isolation. It's "what's my IL going to be relative to the fee yield I'm capturing." A pool paying 25% APR in fees can absorb a fair amount of IL and still beat HODL. A pool paying 2% APR cannot. If you only have one number from the calculator, you only have half the answer.
Concentrated liquidity changes the picture
Uniswap V3 (and the copies of it on every chain that runs an EVM) introduced concentrated liquidity, where you set a price range and only earn fees while price stays inside it. Uniswap's own announcement claims up to 4,000x capital efficiency relative to V2 at very tight ranges, and that efficiency cuts both ways.
Here's the part the standard formula misses. Take an ETH/USDC position with a range of 0.5x to 2x the current price. That position carries roughly a 3.4x amplification factor versus a V2 position of the same size. So if ETH doubles (R = 2), your IL inside the range isn't the V2 number of 5.72%. It's closer to 19%.
And then a worse thing happens: at R = 2 you've hit the upper edge of your range. Your position is now 100% USDC. You stop earning fees, plus ETH keeps running without you. The 19% number is just the realized IL at the boundary. The opportunity cost above the range adds to it indefinitely.
Tighter ranges multiply this. A 0.8x-1.25x range has an amplification factor closer to 9x. Looks great when price stays put, brutal when it doesn't.
If you're providing concentrated liquidity, you basically need a position simulator (Revert Finance, DefiLab, or just a spreadsheet) rather than a generic IL calculator. Worth saying, since I see people drop V3 positions and then run V2 calculators on them.
Frequently Asked Questions
Is impermanent loss actually permanent?
Technically no, practically yes. If price returns to the exact ratio at which you deposited, your IL goes back to zero, plus you keep all the fees you earned in the meantime. That's the case for "impermanent." The problem is that prices in crypto rarely revert exactly, and most LPs withdraw at some point regardless of the price. Once you withdraw, the loss is locked in. So "impermanent" is true in theory and a stretch in practice.
How does IL compare to just staking the same tokens?
It depends on what you're staking and at what yield. ETH staking pays 3-4% APR with no IL and decent liquidity via liquid staking tokens. An ETH/USDC pool can pay 8-15% APR in fees but exposes you to IL on every ETH price move. If you have a strong directional view (ETH is going up), HODLing or staking usually beats LPing. Sideways chop, on the other hand, favors the pool. Our Staking Rewards Calculator handles the staking side of that comparison.
Does the 2√R/(1+R) − 1 formula work for non-50/50 pools?
No. Balancer's weighted pools (80/20, 95/5, and so on) have their own derivation, and the IL on a heavily weighted pool can be much smaller on the dominant token. For a quick reference, the Balancer documentation has the closed-form expression. Our calculator is set up for the 50/50 case because that's what the vast majority of pool deposits still use.
What's a realistic IL to expect on a typical altcoin pool?
Honestly, more than you think. Most altcoins move 2x to 5x against ETH or USDC over any six-month window, which gives you 5-25% IL just from the math. If the altcoin then dumps to a fraction of where you started, your IL doesn't shrink, it grows. Compare token volatility against your reference asset before you LP, not after.
What to actually do with this
Don't memorize the formula. Run real numbers through the Impermanent Loss Calculator at the prices you actually expect, not the ones the calculator defaults to. Then add 2-4 percentage points to the result before deciding, because that's roughly what gas plus a typical mistimed exit will cost you on a six-month position. Then check whether the pool's expected fee yield clears that adjusted IL with margin to spare. If it does, you're probably fine. If it's close, the pool isn't worth the position management.
The math is the easy part. Treating the math as the entire decision is where people lose money.
Disclaimer
The Impermanent Loss Calculator and related content on this page are provided for informational and educational purposes only. They do not constitute financial, investment, or DeFi advice. Impermanent loss calculations are mathematical estimates based on standard constant product AMM formulas and may not reflect actual outcomes in concentrated liquidity pools, weighted pools, or protocols with additional reward mechanisms. DeFi liquidity provision involves substantial risks including but not limited to smart contract vulnerabilities, token de-pegging, liquidity drains, and total loss of funds. Always conduct your own research before providing liquidity to any protocol. Blockchain Bubbles is not responsible for any financial losses incurred from use of this calculator or any liquidity provision decisions made based on its output.