A liquidity provider deposits $10,000 into a Uniswap V3 pool, concentrating capital between $1,800 and $2,200 per token to capture higher fees on tighter price movement. The pool earns steady fee income for two weeks. Then the token price moves to $2,500, well outside the concentrated range. The liquidity sits unused while the pool rebalances, and when the provider withdraws, the dollar value has declined despite collecting fees. This scenario illustrates impermanent loss: the cost of being a liquidity provider when market prices move beyond your chosen price range, especially in Uniswap V3, where concentration amplifies both opportunity and risk.
Understanding impermanent loss before committing capital is not optional for anyone considering liquidity provision. A calculator or formula cannot predict whether a specific token will move 5% or 50%, but it can show how sensitive your position is to price volatility and reveal whether expected fee income can realistically offset losses under different market conditions. Uniswap V3 introduced granular control over liquidity concentration, which dramatically changed the impermanent loss calculation compared to earlier versions. That control is powerful, but it requires careful math and realistic assumptions about market behavior rather than blind confidence in fee collection.
What impermanent loss is and why Uniswap V3 changed the calculation
When you provide liquidity to an automated market maker (AMM) like Uniswap, you deposit two tokens in a ratio determined by current market price. The protocol holds those assets and uses them to fulfill trades. As traders buy one token, they sell the other, which shifts the ratio in the pool. An AMM uses the constant product formula x × y = k to maintain balance: as one token’s quantity decreases, its price increases. Your deposited tokens are automatically rebalanced by the market, not by you.
Impermanent loss occurs because of this rebalancing. Suppose you deposit 5 ETH and 10,000 USDC when ETH is $2,000. A price move to $2,500 means the pool now holds more USDC and less ETH. Your share of the pool reflects that rebalancing: you own less ETH and more USDC than you originally deposited. If you withdrew immediately, you would have fewer ETH than you started with, even though the dollar value of your position may be close to breakeven or even positive in total. The “loss” relative to simply holding both tokens unchanged is the impermanent loss. It is called impermanent because it only becomes permanent when you withdraw; if the price returns to the original level before you exit, the loss disappears.
Uniswap V2 required liquidity providers to deposit across the entire price curve, from zero to infinity. Impermanent loss was significant in V2 because every price move, no matter how extreme, affected your position. Uniswap V3 introduced concentrated liquidity: providers choose a custom price range, and their capital only earns fees when the pool price is within that range. This is powerful because it lets you concentrate capital into a narrower band, earning more fees per dollar deployed. However, it also means that if price moves outside your range, your liquidity becomes inert. You collect no more fees, but you still bear impermanent loss from the rebalancing that already occurred.
The mathematics change significantly with this model. In V2, impermanent loss was a smooth function of price movement. In V3, loss can be steeper within the chosen range and then stops accumulating outside it (though the rebalanced position still exists and can incur loss if price reverses). A provider using uniswap V3 must therefore decide: narrow ranges capture more fee per dollar but create sharp impermanent loss cliffs; wide ranges spread risk but earn fewer fees per dollar deployed.
The core impermanent loss formula and how to apply it
The fundamental impermanent loss calculation for a symmetric liquidity position (equal value in both tokens at entry) uses this formula: IL = (2 × √(P₁/P₀)) / (1 + P₁/P₀) − 1, where P₀ is the entry price and P₁ is the exit price. Expressed as a percentage, this tells you how much worse off you are compared to simply holding both tokens unchanged.
For example, if you enter at a price of 1.0 and the price moves to 1.5, you calculate: IL = (2 × √1.5) / (1 + 1.5) − 1 ≈ (2 × 1.225) / 2.5 − 1 ≈ 0.98 − 1 ≈ −0.02, or roughly −2% impermanent loss. If the price moves to 2.0, IL = (2 × √2) / 3 − 1 ≈ (2.828) / 3 − 1 ≈ 0.943 − 1 ≈ −5.7%. The loss accelerates as price movement increases. A move to 4.0 produces IL ≈ −20%. A move to 10.0 produces IL ≈ −47%.
This formula applies to any liquidity position when the final price is within your chosen range. To use it, you need three inputs: your entry price (the price at which you deposited), your exit price (the price at which you will or did withdraw), and the assumption that you maintained equal dollar value in both tokens at entry. Most liquidity pools on Uniswap are denominated against USDC or another stablecoin, which simplifies the calculation because the stablecoin price does not move; all impermanent loss comes from the other token’s movement relative to entry.
For concentrated liquidity in Uniswap V3, the formula remains the same, but the range boundary adds a critical condition. If your chosen range has a lower bound PL and an upper bound PU, and the final price P₁ falls outside that range, your effective “exit price” for the calculation is constrained. Specifically, if P₁ is above PU, your position has been fully rebalanced into the higher-priced token (or USDC if it is the stable leg), and the effective exit price for loss calculation is PU. If P₁ is below PL, the effective exit price is PL. This is why wide ranges in Uniswap V3 can be safer: price can move farther before hitting the boundary and locking in loss.
Building a realistic impermanent loss scenario for your pool
Calculating impermanent loss requires an assumption about how far price will move. This is where most liquidity providers make their first mistake: they assume the token will move predictably or will stay near current levels indefinitely. Historical volatility can inform the estimate, but it is not a guarantee. Before committing capital, you should model several scenarios and ask which ones are realistic for your time horizon.
Start by gathering the token’s recent volatility. Calculate the daily or weekly price changes over the last 30, 90, and 180 days. Compute the standard deviation of those returns. For a token with 40% annualized volatility, a 5% one-week move is not unusual; a 20% move within a month is plausible but rarer. If you are providing liquidity to an exotic or new token, volatility may be higher and harder to estimate. Conversely, if you are providing liquidity to a major pair like ETH-USDC, historical data is abundant.
Next, decide your concentration range based on two things: the volatility you expect and the fee tier you have chosen. Uniswap V3 offers 0.01%, 0.05%, 0.30%, and 1% fee tiers. Higher fees attract more trading volume but tend to have wider price ranges and potentially less concentrated liquidity. A 0.30% tier on ETH-USDC might see most activity in a ±5% band around current price; a 1% tier might see activity across a ±10–15% band. If you want to concentrate your capital aggressively, you might set a range of ±2%, betting that most price action will stay within that band. If you want to be safer, you might use ±10%.
With a volatility estimate and a chosen range, you can now calculate breakeven. Suppose you expect to be in the position for 30 days, the 0.30% fee tier on your chosen pair has historically generated 2% in fees per 30 days for liquidity in the active range, and you are setting a ±5% concentration band. Your impermanent loss if price moves exactly 5% is roughly −0.63%. But your fee income is approximately +2%. Net gain is approximately +1.37%. This is the basic arbitrage: fee income must overcome impermanent loss. If you narrow your range to ±2.5%, impermanent loss at the boundary falls to roughly −0.16%, but fee income might decline because liquidity outside the most active band earns less. The trade-off becomes clearer when you model it.
Tools and calculators for stress-testing your liquidity position
Manual calculation works, but using a calculator reduces arithmetic mistakes and lets you iterate quickly through scenarios. Several tools exist specifically for Uniswap V3 impermanent loss modeling. Flipside Crypto, DeFiLlama, and Revert Finance each provide interfaces where you can input entry price, liquidity range, current or projected exit price, and fee tier, and receive a breakdown of fees earned, impermanent loss, and net position value.
When using any calculator, verify the inputs carefully. Some tools express price in one direction (ETH per USDC) while others use the inverse (USDC per ETH); using the wrong direction inverts your range and produces nonsensical results. Enter your exact range boundaries, not approximations. A range of $1,990 to $2,010 is materially different from $1,800 to $2,200, and the calculator should reflect that precision. Check whether the tool is modeling Uniswap V3 specifically; some older calculators are based on V2 math and will give wrong results.
Beyond impermanent loss, also model the fees you expect to earn. Many calculators show historical fee rates for a pair at a given tier and concentration, which can be a useful starting point. However, historical fees are not guaranteed. If trading volume drops, or if your liquidity ends up outside the most active price band, fee collection will be lower. Conservative liquidity providers often assume that actual fees will be 30% to 50% lower than the historical average, building a buffer into their expectations.
A stress test means running the calculation across multiple price scenarios: −50%, −20%, −10%, 0%, +10%, +20%, +50% price moves. For each scenario, record the impermanent loss at that price, the fee income you would have earned, and the net result. If your model shows that you break even or profit at most scenarios within your expected range, and that you accept the loss in edge cases, your position is defensible. If the model shows losses in scenarios you think are plausible, reconsider the concentration range or choose a different pair.
Fee income, gas costs, and the breakeven math
Impermanent loss is only half the equation. Earning fees as a liquidity provider on Uniswap V3 requires that trades actually happen at your concentration range. If you set a range and price never enters it, you earn zero fees while still bearing any impermanent loss from the initial deposit rebalancing. More commonly, price enters your range and you earn fees, but the question is whether fee income exceeds transaction costs and impermanent loss.
Gas costs matter most on Ethereum mainnet, where creating or adjusting a Uniswap V3 position can cost $50 to $300 or more depending on network congestion. If you are deploying small capital, say $500, that gas cost is 10% of your position before you earn a single fee. On Layer 2 networks like Arbitrum or Optimism, gas costs are typically 50–100× lower, making small positions viable. This is why many active liquidity providers have migrated to Uniswap on cheaper networks. When evaluating expected returns, subtract gas costs from fee income and divide by your capital to get your actual net return percentage.
Fee income also depends on slippage and the volume flowing through your exact price band. A pair might have $100 million in 24-hour volume, but if most of that trades in a different concentration band or price range, your portion is smaller. Large liquidity pools have deeper liquidity and less slippage, attracting more volume; small or newly created pools have shallower liquidity and higher slippage, but they may offer higher fee rates (measured as swap fees divided by total liquidity) to compensate. Before committing to a new pair or a tier you are unfamiliar with, check recent fee history and understand whether your expected fee income is realistic.
One often-overlooked cost is rebalancing. If price drifts in and out of your range, you may need to withdraw your position, reset the range, and redeposit to continue earning fees. Each redeposit incurs gas. In volatile markets, this can happen several times per week. Some liquidity providers use automated bots to manage this, but even bots have costs and risks. Manual rebalancing is common for long-term positions in stable pairs; active daily rebalancing is typically done only by sophisticated users or on Layer 2 networks where gas is cheap enough to justify it.
Concentration risk and the choice between narrow and wide ranges
The core strategic choice in Uniswap V3 liquidity provision is concentration level. A narrow range, like ±2%, magnifies fee collection per dollar deployed and captures high fees during sideways market movements. However, a 2% move puts you out of range; outside the range, you earn no fees but your liquidity becomes static and impermanent loss crystallizes. A wide range, like ±20%, is more forgiving: price can move much farther before you fall completely out of range. But fee collection per dollar is spread across a wider range, so your rate of return is lower.
The mathematics of this choice depend on your beliefs about price behavior. If you believe a token will trade in a tight band for weeks, narrow ranges are profitable. If volatility is high or you are uncertain about direction, wide ranges reduce drawdown risk but sacrifice upside fee collection. There is no universally optimal concentration; the right choice depends on the specific pair, current volatility, and your risk tolerance.
One advanced approach is range stacking: deploying capital across multiple overlapping ranges with different tiers or fee levels. For example, you might put 40% of your capital in a 0.05% fee tier with a ±1% range (high fee, high concentration), 40% in a 0.30% fee tier with a ±5% range (medium), and 20% in a 1% fee tier with a ±15% range (low concentration, high fee but wider spread). This diversifies your fee collection across price scenarios and reduces the cliff where concentration becomes zero. The trade-off is higher complexity and more rebalancing transactions to manage.
Liquidity pools that have experienced large impermanent losses often teach a hard lesson: conviction about price behavior rarely holds. A token expected to be stable can spike 40% in days. A range that seemed conservative turns out to be too narrow. The best approach is to size your initial position conservatively, use realistic assumptions about volatility, include a buffer in your calculations, and be willing to withdraw early if market conditions change drastically. Protecting capital is more important than chasing maximum fee yield.
When to use impermanent loss protection and alternative strategies
Some liquidity pools offer impermanent loss protection: if your position declines in value due to price movement beyond your range, the protocol compensates you through insurance or protocol fees. Balancer, for example, has implemented concentrated liquidity mechanisms with IL protection in certain pools. These protections reduce risk but come with trade-offs: lower fee rates, reduced capital efficiency, or lock-in periods that prevent you from withdrawing.
An alternative to direct liquidity provision is using an index or yield aggregator, such as Convex or Yearn Finance, which manages liquidity positions on your behalf. These services handle concentration, rebalancing, and fee collection automatically, charging a small fee for the service. They are useful if you want yield without managing the position, but they add another intermediary and another layer of smart contract risk.
Another approach is to pair liquidity provision with covered calls or hedging strategies. For example, you might provide liquidity to ETH-USDC over a narrow range, then sell call options on your ETH to generate additional income. This creates a defined return profile: you collect fees and call premiums up to a price level, then the upside is capped by the call. This is more sophisticated and introduces additional complexity and counterparty risk, but it is useful for sophisticated providers who understand both liquidity and options.
For most users, the best strategy is straightforward: use a realistic impermanent loss calculator, model multiple price scenarios, commit to a reasonable concentration range based on historical volatility, monitor your position, and rebalance or exit if conditions change. Fees should exceed impermanent loss by a meaningful margin (ideally 30–50% or more for a comfortable buffer) before you commit significant capital. The calculator itself is not a prediction tool; it is a planning tool that forces you to test your assumptions against reality before risking money.
Frequently asked questions
What is the difference between impermanent loss and permanent loss?
Impermanent loss is the opportunity cost of being a liquidity provider when price moves compared to simply holding both tokens unchanged. It is called impermanent because it only becomes permanent when you withdraw your position. If price returns to your entry level before withdrawal, the loss disappears and you keep your fee income. Permanent loss refers to actual capital decline after withdrawal, which can occur if impermanent loss exceeds fee collection.
How does Uniswap V3 concentration change impermanent loss compared to V2?
Uniswap V2 required liquidity across the entire price curve, meaning every price move affected your position proportionally. Uniswap V3 introduces concentrated liquidity: you choose a price range, and capital only earns fees when price is within that range. This lets you earn higher fees per dollar in sideways markets, but if price moves outside your range, you earn no more fees while already bearing impermanent loss. The trade-off is more severe than V2, requiring careful range selection.
Can an impermanent loss calculator predict actual results?
No. A calculator shows what impermanent loss would be at a given price, assuming you entered and exited at specific prices. It cannot predict where price will actually go or when you will withdraw. Use a calculator to stress-test scenarios, understand your risk at different price levels, and decide whether expected fee income justifies that risk. Treat the calculator as a planning tool, not a guarantee.