Crypto Price Impact Calculator

Work out what a trade against an automated market maker will actually cost you, before you make it.

Price impact is the price movement your own trade causes by moving along the pool's curve. On a constant-product pool it is arithmetic you can compute in advance from the pool's reserves — it is not a fee, and it is entirely predictable. Your execution impact is simply your spend divided by the pool's reserve of the asset you are spending, so what matters is your size relative to the pool, not its absolute size.

Pool and trade

Result

Spot price before trade
2,000.0000
You would receive
4.960273
Average price paid
2,016.0181
Price impact
0.80%
Swap fee paid
30.00
Shortfall vs. spot price
0.039727
Your trade vs. pool size
0.50%
Spot price after trade
2,019.9897

How impact scales with size

The same pool, at different trade sizes. This is the property worth internalising: impact does not scale linearly.

Amount spent Received Average price Price impact
1,000 0.4998 2,001.00 0.05%
10,000 4.9751 2,010.00 0.50%
100,000 47.6190 2,100.00 5.00%
1,000,000 333.3333 3,000.00 50.00%

Fee excluded from this table so the curve's own behaviour is visible.

The formula

A constant-product pool holds reserves of two assets and requires their product to stay constant:

invariant:      x × y = k
spot price:     y / x
output:         Δy = y − k / (x + Δx)
average price:  Δx / Δy
price impact:   (average price − spot price) / spot price

Where x and y are the pool reserves and Δx is what you are spending. The swap fee is taken from Δx before the curve is applied, which is why a fee makes your effective trade smaller rather than being deducted from the output.

What scales, and what does not

"Price impact" names more than one quantity, and they behave differently. Substituting the output formula into the average price gives:

received      = x . dx / (y + dx)     sublinear, saturates
average price = (y + dx) / x
exec impact   = dx / y                exactly LINEAR in trade size
spot move     = (1 + dx/y)^2 - 1      quadratic

So the widely repeated claim that "price impact grows faster than trade size" is true of the pool's spot price move and false of your execution impact, which is exactly proportional to your spend. Interfaces rarely say which figure they display. The table above shows execution impact — the one that determines what you actually pay.

What is genuinely superlinear from your side is the shortfall: the tokens you did not receive versus buying at the untouched spot price. And note what never happens at any size — the trade being refused. There is no depth to exhaust; the price simply keeps getting worse along a hyperbola.

This differs fundamentally from an order book, which holds discrete orders at chosen prices and can genuinely run out. An order book refusing to fill tells you your order is too large. An AMM fills it and reports success. See understanding slippage for the order-book equivalent.

Price impact is not slippage tolerance

Two things interfaces display side by side. Price impact is the movement your own trade causes — deterministic, and what this calculator computes. Slippage tolerance is how much additional adverse movement you will accept from other transactions landing before yours. Raising tolerance does not reduce impact; on a public mempool it is the budget available to anyone sandwiching your trade.

Limitations

  • Models the constant-product curve only. Stableswap and concentrated-liquidity pools behave differently, particularly near their design assumptions.
  • Assumes a single pool. A router splitting your trade across several pools will do better than this shows.
  • Excludes gas, which dominates the cost of small trades.
  • Excludes MEV. A sandwiched trade fills worse than the arithmetic predicts.
  • Uses floating-point arithmetic — fine for education, not for accounting.

Educational tool. Not financial or trading advice. Figures are illustrative and depend entirely on the reserves you enter.