A rising pool balance does not prove that providing liquidity was the better choice. The relevant benchmark is what the original tokens would be worth if you had kept them.
To calculate impermanent loss, first value the tokens you originally deposited as though you had kept them in your wallet. Then value your pool position at the same current prices. Comparing only the initial deposit with today’s balance misses the difference between providing liquidity and holding.
The calculation below assumes a full-range constant-product pool with two assets initially equal in value. It is not a ready-made calculator for a finite-range Uniswap v3 or v4 position. Our guide to providing liquidity covers opening and closing positions; this guide builds the comparison ledger.
Choose the right benchmark
Impermanent loss does not mean a loss against your original cash investment. A pool can gain value while falling behind holding. Both alternatives can also lose value, leaving a substantial dollar loss despite a relatively small difference between them.
Record the entry time, token quantities, initial price ratio and valuation time. Keep earned fees, incentive rewards and gas costs in separate columns. Use the same valuation currency and timestamp for both alternatives.
A worked example: 1 ETH and 2,000 USDC
Suppose ETH trades at 2,000 USDC when you deposit 1 ETH and 2,000 USDC. The initial position is worth 4,000 USDC, split equally between the assets. USDC is our accounting unit, not an assumption that a stablecoin is identical to bank dollars. Fees, rewards and additional deposits are excluded for now.
For the constant-product relationship x × y = k, let x be ETH and y be USDC. Initially, k = 1 × 2,000 = 2,000. If ETH reaches 4,000 USDC and the pool adjusts to that price, the new balances satisfy y/x = 4,000. Treat the example as a scaled representation of your share; a real pool need not contain only your deposit.
| Calculation | Result |
|---|---|
| New ETH: √(2,000 / 4,000) | 0.707107 ETH |
| New USDC: √(2,000 × 4,000) | 2,828.427125 USDC |
| Pool value: ETH × new price + USDC | 5,656.85 USDC |
| Holding: 1 ETH × 4,000 + 2,000 USDC | 6,000.00 USDC |
| Difference versus holding | −343.15 USDC; approximately −5.72% |
The pool is worth more than the original 4,000 USDC, yet holding would have left an additional 343.15 USDC. Absolute appreciation and outperforming an alternative are different measurements. Values are rounded at the final step; rounding intermediate balances too early changes the result slightly.
The price-ratio formula
Let r be the final ratio between the two token prices divided by its initial value. Here, r = 4,000 / 2,000 = 2. The fee-free relative difference is 2 × √r / (1 + r) − 1. Multiply by 100 for a percentage. To display the shortfall as a positive magnitude, subtract the fraction from 1 instead. The reserve relationships in Uniswap’s v2 returns documentation provide the mathematical basis.
KriptoMeta’s worked calculation compares the same starting assets under two strategies. The illustration is not a live quote or a screenshot of an investment account.
| Final / initial ratio | Relative price move | Shortfall |
|---|---|---|
| 0.50 | Halves | 5.72% |
| 0.75 | Falls 25% | 1.03% |
| 1.00 | Unchanged | 0.00% |
| 1.25 | Rises 25% | 0.62% |
| 1.50 | Rises 50% | 2.02% |
| 2.00 | Doubles | 5.72% |
| 4.00 | Quadruples | 20.00% |
A 50% fall is not the mirror image of a 50% rise; the reciprocal ratios are 0.5 and 2. With two volatile assets, use their relative prices rather than one asset’s dollar performance. If both A and B double against USD, A/B is unchanged. The model can show zero impermanent loss while the portfolio’s dollar value changes.
When does fee income cover the shortfall?
Use the fees actually attributable to your position. Protocol-wide volume or an estimated annual rate is not your realized income. The automated market maker design, liquidity share, active range and protocol deductions affect what you receive. Uniswap’s mechanism overview explains pool operation; accounting should not be assumed identical across versions.
Suppose the example earns 400 USDC of additional fee value not already included in the modeled pool balance, while entry and exit costs total 20 USDC. Net value is 5,656.85 + 400 − 20 = 6,036.85 USDC. Compared with holding at 6,000 USDC, the position is ahead by 36.85 USDC. The break-even fee requirement is 343.15 + 20 = 363.15 USDC.
If the displayed position value already includes earned fees, do not add them again. For a practical closing record, value the withdrawable token quantities at the same timestamp, add only claimable fees absent from that value and subtract costs. Our Ethereum gas calculator estimates a transaction’s network cost; use the transaction receipt for the actual charge. It does not calculate fees for every other chain.
Where the shortcut stops working
Finite ranges: a v3 or v4 position’s lower and upper bounds change its inventory. Outside the range it may consist entirely of one asset and stop earning swap fees until the price returns. The concentrated liquidity documentation describes that behavior. A calculator without range boundaries or current balances cannot properly value that position.
Different curves or weights: stablecoin pools, 80/20 weighted pools and custom hook arrangements cannot all be modeled by the same equation. Verify how the liquidity pool prices trades. A stablecoin losing its target value is not negligible noise; revalue the holdings at actual market prices.
Additional deposits and withdrawals: do not force several entry dates into a single starting price. Record each cash flow and build a holding benchmark with matching quantities and timing. Value incentive tokens separately at realizable market prices rather than inserting them into the pair’s price ratio.
For example, the StableSwap curve uses a different pricing model; containing stablecoins does not make a pool fit the constant-product calculation.
What should the closing record show?
Keep three results distinct: the fee-free divergence, portfolio value after fees and rewards, and the final difference against holding after costs. A positive final difference does not establish the result for the next period. The price path, competing liquidity and trading volume can all change future fee income.
“Impermanent” is not a promise that waiting fixes the position. The price ratio may return or move further away. A decision to retain liquidity should account for the current inventory, exit costs and accepted risks, rather than only the desire to recover a past shortfall.



















