Uniswap v3 · concentrated liquidity

Will fees beat
just holding?

Enter a v3 position — range, entry, an exit-price scenario and how long you hold — and rangeexit gives the answer most LP tools skip: the fee APR you need to break even versus HODL, the impermanent loss at your exit price, and the single-asset boundary prices where your position flips to 100% one token. Closed-form math, no wallet, all in your browser.

Examples:

Fee APR needed to beat just holding

67.3% APR

If, after 30 days, the price is 2,500 USDC/ETH, your position is -5.24% vs HODL. You must earn 5.53% in fees over that period ($581.60) to break even.

Position value at exit$10,520.20
HODL value at exit$11,101.79
Impermanent loss-5.24%
Entry mix44.1% ETH / 55.9% USDC2.2036 ETH + 5,592.82 USDC

Single-asset boundaries

BoundPrice (USDC/ETH)MoveBecomesIL vs HODL
Upper2,500+25%100% USDC-5.24%
Lower1,500-25%100% ETH-8.42%

Closed-form math — no wallet, nothing uploaded. Models position value & IL only (not the fees you’ll actually earn, or gas). Educational, not financial advice. How it’s computed →

Educational tool, not financial advice. Models position value & IL only — not the fees you’ll actually earn.

What it shows

The break-even math, before you LP

Break-even fee APR

The headline most calculators won’t give you: the annualised fee yield your range must earn to come out at least even with simply holding the two tokens.

Impermanent loss vs HODL

Position value versus holding, in dollars and percent, at any exit price you model — derived from the exact v3 liquidity equations.

Single-asset boundaries

The upper price where you’re 100% quote and the lower where you’re 100% base, with the % move to reach each and the IL there.

Tight vs wide, instantly

Narrow the range and watch the required APR jump. See the concentration trade-off — more fee share, more IL — as a single number.

Entry composition

How your deposit splits between the volatile and quote token at entry, in % and token amounts.

No wallet, nothing uploaded

100% static page, pure client-side math. No connection, no backend, no logs — paste numbers, not keys.

Open methodology

Exactly how it’s computed

No black box, no oracle — every value comes from the published v3 equations, so you can verify it.

The equations

In-range amounts

amount₀ = L·(1/√P − 1/√P_b), amount₁ = L·(√P − √P_a), for P_a ≤ P ≤ P_b (Uniswap v3 whitepaper, §6).

Single-sided edges

For P ≤ P_a the position is entirely token₀ (base); for P ≥ P_b entirely token₁ (quote).

Impermanent loss

IL = V_LP(P₁) / V_HODL(P₁) − 1, where V_HODL re-prices the entry amounts at P₁.

Stated plainly: rangeexit models position value and impermanent loss only. It does not predict the fees you’ll earn (that depends on volume and your share of in-range liquidity) and ignores gas and rebalancing — so the break-even APR is a hurdle to compare against a real pool’s fee APR. Providing liquidity carries impermanent-loss, smart-contract and token risk. This is educational, not financial advice; do your own research.

Frequently asked questions

What does rangeexit do?

You give it a Uniswap v3 (or any concentrated-liquidity) position — current price, your lower and upper range bounds, position size, an exit price scenario, and how long you hold — and it computes the impermanent (divergence) loss versus simply holding the same tokens, the prices at which your position becomes 100% one asset, and the headline number: the fee APR you must earn for the position to break even against HODL. It is pure math: no wallet, no connection, nothing leaves your browser.

What is the "break-even fee APR"?

Concentrated liquidity earns trading fees but suffers impermanent loss when the price moves. The break-even fee APR is the annualised fee yield your position needs so that, after the move you model, you end up at least as well off as if you had just held the two tokens. If a realistic pool fee APR is below this number, holding would have beaten LPing for that scenario.

What are the "single-asset boundary" prices?

In a v3 range, as the price rises your position is steadily sold into the quote token, and as it falls it is bought into the base token. At your upper bound the position is 100% quote (you have fully sold the volatile asset); at your lower bound it is 100% base (you are fully in the volatile asset). rangeexit shows those two prices, the % move to reach each, and the IL at each edge.

How is impermanent loss calculated?

From the standard v3 liquidity equations. Your deposit at the entry price implies a liquidity L; the position value at any later price follows the amount0/amount1 formulas for that L and range; HODL value is your entry token amounts re-priced at the same price. IL = position value ÷ HODL value − 1 (always ≤ 0 for a price move). No historical data or oracle is needed — it is closed-form.

Does a tighter range earn more or lose more?

Both. A tighter range concentrates your liquidity, so you earn a larger share of fees while the price stays inside it — but it also produces larger impermanent loss per unit of price move and exits to a single asset sooner. rangeexit lets you see that trade-off: tighten the range and watch the required break-even APR climb.

Does this include fees, gas, or rebalancing?

No. It models the position value and IL only, then tells you the fee APR needed to offset the IL. It does not predict the fees you will actually earn (that depends on volume and your share of in-range liquidity), and it ignores gas and rebalancing costs. Treat the break-even APR as a hurdle to compare against a pool's realistic fee APR.

Is this financial advice?

No. rangeexit is an educational math tool. Providing liquidity carries real risks — impermanent loss, smart-contract risk, and token risk — and past pool yields do not guarantee future ones. Nothing here is financial advice; do your own research and never risk more than you can afford to lose.

Is my data private?

Completely. This is a static page; all math runs in your browser. There is no wallet connection, no backend, no logging — your numbers never leave your device.