Published July 2, 2026 ยท by ILCalc
If you have provided liquidity on Uniswap V3 and watched your position bleed value faster than the familiar "2× move costs 5.7%" figure suggests, you are not misreading the chart. Uniswap V3 impermanent loss is a different animal from V2. The same price move can cost you several times more, because concentrated liquidity trades away the gentle, spread-out exposure of a full-range pool for a much sharper risk profile. This article explains exactly why that happens, shows the math, and walks through a worked ETH/USDC example so you can quantify the loss for your own range.
In Uniswap V2, your capital is spread evenly across every possible price, from zero to infinity. Most of that liquidity sits at prices that will never trade, so it earns nothing. Uniswap V3 lets you place your liquidity inside a custom price range [Pa, Pb] — say ETH between $1,600 and $2,600 — instead of spreading it everywhere. Concentrating capital where trading actually happens can boost fee income enormously per dollar deposited: a narrow range can be dozens of times more capital-efficient than full-range. That efficiency is the entire selling point of V3. The catch is that the same concentration multiplies your impermanent loss.
Inside your chosen range, a V3 position behaves exactly like a V2 position — but a V2 position built on virtual reserves that are far larger than the money you actually put in. Because your real capital is a small slice of those virtual reserves, every percentage point of rebalancing that the automated market maker performs hits your smaller deposit proportionally harder. The result: a range just wide enough to cover a 2× price move both up and down produces roughly three to four times the impermanent loss of a full-range V2 position for the same move, and tighter ranges push the multiplier well beyond that. The tighter you concentrate, the higher your fee yield — and the steeper your IL.
For a position with liquidity L over range [Pa, Pb], the token amounts at any price p inside the range are:
x = 1/√p − 1/√Pb y = √p − √Pa (each × L)
Here x is the volatile asset (ETH) and y is the quote (USDC). The position's value in quote terms is x·p + y. To get impermanent loss you compare that against simply holding the tokens you deposited — the HODL value uses your entry amounts x0 and y0 (computed from the same formulas at your entry price P0) marked to the new price. So IL = (position value) / (HODL value) − 1, valued against HODL using the position's true entry weights. This is the same closed form the ILCalc concentrated-liquidity engine evaluates in your browser, and it reduces to the base V2 formula V3 is compared against as the range widens toward zero-to-infinity.
V3 adds a failure mode V2 does not have. As price rises toward Pb, the AMM keeps selling your ETH for USDC; at the upper bound your position is 100% USDC and holds zero ETH. As price falls toward Pa, the reverse happens and you end up 100% ETH. Once price crosses either edge, your position stops earning fees entirely — you are holding a single asset, fully exposed, no longer market-making. Your impermanent loss is now effectively locked: it will keep widening against HODL if the price keeps running away, and it only recovers if price comes back into your range. A position that has exited its range is the worst of both worlds: maximum IL, zero income.
Suppose you enter at P0 = $2,000 per ETH and the price doubles to $4,000. Here is the same move across three setups:
| Position | Range | End of move | IL vs HODL |
|---|---|---|---|
| Full-range (V2) | 0 → ∞ | still 50/50-ish | −5.7% |
| Wide V3 band | $1,000 – $4,000 | at upper edge, now all USDC | −19.5% |
| Tight V3 band | $1,600 – $2,600 | exited top, frozen in USDC | −30%+ |
The full-range position loses the textbook 5.7%. The $1,000–$4,000 band — wide enough to bracket a 2× move up and down — loses 19.5%, about 3.4× as much, and the move parks it entirely in USDC at the top edge. The tight $1,600–$2,600 band never even reaches $4,000 in-range: price blows through $2,600, the position freezes as 100% USDC worth far less than holding, and the loss sails past 30% and keeps growing as ETH climbs. Same market, wildly different outcomes — driven entirely by range width.
None of this makes V3 a trap. The whole point of a tight range is that it earns dramatically more fees per dollar than a full-range position, because your liquidity is the one actually filling trades near the current price. The problem is symmetric: a range that multiplies fee income by, say, 4× also multiplies your IL, so the break-even fee APR rises in lockstep. A full-range position might only need a modest APR to stay ahead; a tight range needs several times that APR to cover its several-times-larger loss. Whether the extra fees win depends on how much the price actually moves versus how much volume flows through your range. Use ILCalc to check whether V3 fees cover the higher loss for your specific pool before committing.
You do not need to run the square-root algebra by hand. Switch ILCalc to Uniswap V3 mode, enter your range bounds and the entry and current prices, and it reports the exact concentrated-liquidity IL for your position — including the multiplier versus the equivalent V2 loss and the break-even fee APR you would need to come out ahead.
See what your range is really costing you.
Model any V3 position in seconds — range bounds, price move, and whether fees cover the loss.
No — it only reduces the amplification. A full-range V3 position has essentially the same IL as V2 (still 5.7% at a 2× move). Any range narrower than zero-to-infinity carries more IL than V2, and the narrower it is, the more. Widening the range trades yield for a softer loss curve; it never eliminates the loss.
When price reaches Pb your position converts fully to the quote asset (all USDC); at Pa it converts fully to the volatile asset (all ETH). Beyond the edge you earn no fees and your value stops tracking the market, so IL keeps widening if price keeps moving. It recovers only when price re-enters your range.
Yes, when fee income outweighs the extra IL. High-volume pairs with heavy fee flow, or correlated pairs that barely move, reward tight ranges handsomely. V3 tends to lose to V2 when a volatile asset trends hard through your range and fee volume is thin. The only way to know for your pool is to compare the numbers — which is exactly what the calculator is for.
Related reading: the impermanent loss formula · impermanent loss vs trading fees · stablecoin pool impermanent loss.