Beginner · 7 min read

Slippage, Price Impact and Why Your Swap Filled Worse

Two numbers explain almost every disappointing swap, and traders routinely blame the wrong one — which is why they keep setting the wrong tolerance.

Dario FennDario FennDeFi & Markets Lead · DeFi protocols, yield, market structure and on-chain data
Slippage, Price Impact and Why Your Swap Filled Worse
The short answer

Price impact is the cost your own trade creates by moving the pool price, and it grows with size relative to liquidity. Slippage is the additional difference between the quoted price and the executed one, caused by other transactions landing first — including sandwich bots. Reduce price impact by splitting orders or routing through an aggregator; reduce slippage by tightening tolerance and using MEV-protected routes.

Your swap interface quoted 1,000 USDC for a token. You received 977. Somewhere between the quote and the confirmation, 2.3% disappeared, and understanding where it went is the difference between fixing the problem and repeating it.

Price impact: the cost you create

An automated market maker prices from the ratio of assets in the pool. Buying moves that ratio, so the price rises as your order consumes liquidity, and the average price you pay sits above where the price started. That is price impact, it is visible in the quote before you sign, and it is entirely a function of your size against the pool's depth.

A $500 swap in a $10m pool has negligible impact. The same swap in a $30,000 pool can cost several per cent. This is why the same token can be cheap to buy on one venue and expensive on another, and why a listing count tells you nothing about tradability — depth does.

Slippage: the cost someone else creates

Slippage is the gap between the price you were quoted and the price you got, caused by state changing between the two. Someone else's trade landed first, the pool moved, and your transaction executed against a different ratio.

Slippage tolerance is your instruction about how much of that you will accept. Set it to 0.5% and a transaction that would fill worse simply reverts, costing gas but not value. Set it to 5% on a volatile pair and you have authorised anyone watching the mempool to take up to 5% from you deliberately.

The sandwich, in one paragraph

A bot sees your pending swap, buys the token first, lets your buy push the price up, and sells into it. Your fill lands at the top of the move it created. The wider your tolerance, the more profitable this is, which is why high tolerance is not a neutral convenience setting — it is a bid you are posting for anyone with faster inclusion.

The structural fix is a route that does not expose your order to the public mempool. 1inch Fusion replaces the ordinary swap with an auction where professional resolvers compete to fill your intent and absorb the MEV risk themselves; several wallets now offer private transaction relays that do the same job. Both improve realised prices for ordinary users more than any tolerance setting can.

Fixing each cost separately

To reduce **price impact**: check the pool depth rather than the token's market cap; split a large order into tranches; and route through an aggregator, which splits across venues automatically. On Solana that routing is effectively free and consistently beats hitting one pool.

To reduce **slippage**: set tolerance as low as the pair allows — 0.1% on deep stablecoin pairs, 0.5% on majors, higher only for genuinely thin tokens — and use MEV-protected submission. Accept that low tolerance means occasional failed transactions; a reverted swap costs gas, a sandwiched swap costs a percentage of your capital.

The costs the interface does not show

Two more items sit between the quote and your wallet. The pool fee — 0.01% to 1% depending on the tier on Uniswap — is usually in the quote. The wallet's own swap markup often is not: MetaMask takes around 0.875% and several consumer wallets take a similar cut on top of the route they use, which is invisible unless you compare the quote against the underlying DEX.

For anything above a token amount, that markup exceeds every other cost in this article combined. Comparing the same swap in your wallet and in an aggregator before signing takes fifteen seconds and is the single highest-return habit in on-chain trading.

A working rule

Deep pair, small size: tolerance 0.1–0.5%, any route, watch the wallet markup. Thin pair or size above roughly 0.5% of pool depth: split the order, use an aggregator, and treat the price impact number as the real cost of the trade. If the impact is above 2% and you are not certain why, the honest answer is usually that the token does not have a market at the size you want to trade — and no setting fixes that.

FAQ

What is the difference between slippage and price impact?
Price impact is what your own order does to the pool price and is shown in the quote. Slippage is the extra difference between the quote and the execution, caused by other transactions landing first.
What slippage tolerance should I set?
0.1% on deep stablecoin pairs, around 0.5% on majors, higher only for genuinely illiquid tokens. High tolerance is an open invitation to sandwich bots rather than a convenience setting.
Why did I get sandwiched?
A bot saw your pending swap in the public mempool, bought ahead of it and sold into your fill. Wide slippage tolerance makes the attack profitable; MEV-protected or intent-based routes remove the exposure.
Do wallets charge extra for swaps?
Most consumer wallets add a markup on top of the route they use — MetaMask around 0.875%, several others near 0.85%. Comparing the quote against an aggregator before signing shows it immediately.