2026-10-17 07:45 UTCa3ede1
Why volatile swaps can fill worse
A swap can fill below its quote when pool prices move before execution; MEV searchers can add pressure, while minimum-output limits cap what you accept.
Crypto Record Editorial4 min read

A volatile swap can return fewer tokens than its quote because the pool price can change before the transaction executes. The wallet or exchange first estimates an output from current liquidity, then builds a transaction with a minimum acceptable output. The transaction waits to be included in a block. When it runs, the pool’s current state determines the actual result.
That gap can come from ordinary market movement, the swap’s own effect on a shallow pool, or maximal extractable value (MEV): value gained by choosing which transactions go into a block and in what order. The causes can overlap, but they are not the same. For a closer look at how routes shape wallet-to-wallet swaps, see thor swap.
How does a volatile swap move the pool price?
An automated market maker (AMM) holds token reserves in a pool and calculates trades from their changing ratio. When a buyer takes one token out, that token becomes scarcer in the pool relative to the other. The next unit therefore costs more. A larger trade, or a trade against a pool with less liquidity, pushes the price further along the pool’s curve.
This price impact is part of the swap itself. The quote estimates what the pool will return if its state stays as observed; it cannot guarantee that state will remain unchanged. Other traders’ swaps may land first, shifting the reserves and the price. In a fast market, even a short wait can change the amount available.
Think of the pool as a shop shelf that is restocked at changing prices. A large purchase clears some of the cheaper stock, so the remaining units cost more. The analogy stops there: an AMM applies a contract-defined formula to reserves, and a transaction’s position in the block can affect which state that formula sees.
How can MEV make a swap fill worse?
On a chain where pending transactions are visible, a searcher can inspect a swap before it is included. A sandwich attack uses that information and transaction ordering to trade around the user. The searcher submits a buy before the user’s swap, raising the pool price, then sells after the user’s swap at the higher price. The user’s trade now receives fewer tokens; the searcher aims to capture the difference, after fees and trading costs.
The block builder, validator or sequencer controls or influences transaction ordering, depending on the network. Searchers compete to get their transactions placed in profitable positions. A volatile market can make pool prices move sharply while a swap is pending, and a large trade can move the pool enough to create a target. But a worse fill alone does not prove a sandwich: ordinary price movement, route changes and price impact can also explain it.
What can a trader do to limit a worse fill?
The transaction’s minimum-output limit sets the lowest amount the user agrees to receive. If the pool would return less, the contract reverts the swap instead of completing it at that price. A tighter limit narrows the range in which the swap can execute, but it also makes a revert more likely when prices move. A wider limit helps a trade complete in changing conditions while allowing a worse result.
Before confirming a volatile swap, check the estimated price impact and the minimum output together. Consider these steps:
- Compare the minimum output with the quote, not just the displayed market price.
- Reduce trade size or split a large swap when a single trade would move a shallow pool substantially.
- Use a narrower slippage tolerance when avoiding a poor execution matters more than completing immediately, and expect the transaction may fail.
- For a time-sensitive trade, check whether the wallet offers transaction privacy or another execution method; it may reduce public exposure, but it cannot guarantee a better price.
MEV is one reason a pending swap can lose ground, not a separate fee that explains every shortfall. The useful distinction is between the pool’s expected price, movement before execution, and the minimum output the contract will accept. That limit gives the trader a clear choice: accept a bounded range or let the swap fail and reconsider.