DEX swap price-impact calculator

Model an exact-input swap in a full-range constant-product pool. Separate pool-curve impact from fees and calculate a minimum output from your tolerance.

Inputs

Hypothetical example. Replace these inputs with your own.

Result

Calculation result

Example result

Modeled output
90.661089388 output tokens
Minimum output at supplied tolerance
89.7544784941 output tokens
Curve impact excluding input fee
9.066109 %
Shortfall versus pre-fee spot rate
9.338911 %
Input pool fee
0.3 input tokens
Pre-swap marginal rate
1 output/input
Fee-inclusive execution rate
0.9066108939 output/input
Input reserve after
1,100 input tokens
Output reserve after
909.338910612 output tokens
Post-swap marginal rate
0.8266717369 output/input
  • This is one exact-input swap through a supplied full-range constant-product pool. The input fee remains in the pool, so the input reserve increases by the full input amount.
  • Curve impact compares the output per effective input with the pre-swap marginal rate. Total shortfall also includes the input fee and uses the full input amount.
  • Minimum output applies your tolerance to this modeled quote. The tolerance is a protective bound, not a prediction of price movement or a guarantee of a fill.
  • Concentrated liquidity, stable-swap pools, multiple hops, token transfer taxes, rebasing, changing fees, output fees, MEV and historical price changes are excluded.

Saved scenarios

Save up to 20 new-tool scenarios on this device, separately from the six existing tools. Prices and balances stay out of the URL. DCA, journal and correlation scenarios save settings and a digest, requiring the matching CSV again to calculate.

Saving requires browser storage and Web Locks.

Formula and worked example

Effective input = input × (1 − fee). Output = output reserve × effective input / (input reserve + effective input). Minimum output = modeled output × (1 − tolerance). Fees remain in the input reserve.

Hypothetical reserves of 1,000 X and 1,000 Y, with 100 X input and no pool fee, give about 90.9091 Y. A 1% tolerance sets a 90 Y minimum. This supports one full-range x*y=k pool, not concentrated or stable-swap liquidity.

These estimates use bounded decimal arithmetic. They are scenario calculations, not trading instructions or forecasts.

Methodology sources: Uniswap v2 full-range pool model

Related tasks and reading

This website is developed by Zack White and Vincent Hale.