How an Avalanche Treasury Should Set Swap Slippage
Set a swap’s minimum output from the treasury’s price and execution limits, then size orders against pool depth so volatility does not turn a quote into a blind fill.
The Finality Desk5 min read#8482b4

A treasury should set swap slippage from its maximum acceptable execution loss, then enforce that limit through the router’s minimum-output parameter. The percentage in a swap interface is only a way to calculate that floor. It does not improve the quote, guarantee execution at the quoted price, or protect a trade whose starting quote is already poor.
On Avalanche’s C-Chain, a swap executes as an EVM transaction against one or more liquidity pools. A router can execute only if the output meets the bound encoded in its calldata. For an exact-input swap, that bound is commonly named amountOutMinimum or minAmountOut; for an exact-output swap, the corresponding control is commonly amountInMaximum. Before approving a Blackhole swap, a treasury should assess the pool and route as well as the displayed slippage setting; questions about a Blackhole trade on Avalanche cover that venue-specific review.
What does swap slippage control on Avalanche?
Slippage tolerance sets how far execution may move from the quote before the router reverts. For an exact-input trade, the treasury starts with a quoted output, applies its permitted shortfall, and passes the resulting minimum output to the router. If the executed route returns less than that floor, the transaction reverts. The swap does not partially settle, though the treasury still pays gas for the failed transaction.
The quoted output already reflects the route’s expected pool fees and price impact. Price impact is the change in price caused by trading against the pool’s available liquidity. Slippage tolerance instead bounds the difference between the quoted output and the output at execution. Increasing the tolerance does not make a thin pool deeper or reduce price impact. It allows execution to proceed after a larger adverse change.
This bound is not a promise of a particular exchange rate. If the quote itself is stale, routed through an unfavorable pool, or based on a token with transfer behavior that affects received amounts, a permissive minimum can still authorize a poor fill. Nor does a minimum-output check prove that the trade received fair value relative to an external market. It only enforces the encoded condition.
How should a treasury calculate its minimum output?
Set the minimum from a reviewed quote and a written execution-loss limit, not from a platform default. If the route quotes output Q and policy allows a fractional shortfall s, the exact-input floor is Q × (1 − s), rounded down to the token’s smallest unit. The permitted shortfall should come from the mandate for that trade, including how much execution uncertainty the treasury accepts while the transaction waits to be included.
Then test the quote against a separate fair-value reference. A quote-relative floor can permit an unacceptable trade when the quote is already far from that reference. The treasury can set both a quote-relative minimum and an independent price band: reject or re-quote if the route’s implied rate is outside the band, even if the router’s minimum-output condition would pass.
Keep the controls distinct in transaction records. The quote records the expected route output at review time. The minimum output records the worst output the treasury authorized. The executed amount records what the contract actually returned. That makes it possible to measure realized shortfall and identify whether repeated reverts result from a tight bound, a stale quote, or inadequate pool depth.
When should a treasury widen the limit or split a trade?
Widen the limit only when the treasury’s risk policy permits a larger loss and the quote remains inside its independent fair-value band. Repeated reverts alone do not justify a wider setting. They may indicate that the trade is too large for the route, that liquidity changed before execution, or that the quote needs refreshing. Raising the floor’s tolerance in those cases can convert an execution problem into an avoidable loss.
For a large order, compare the expected output at the proposed size with the output for smaller slices. Pool depth and the route’s price curve determine whether splitting reduces price impact. Splitting also creates more transactions, more gas costs, and more exposure to price movement between fills. A treasury should compare those costs with the improvement in expected execution rather than assuming that smaller orders are always better.
- Refresh the route quote close to submission and verify the token pair, path, and recipient.
- Check pool depth and expected price impact at the treasury’s full order size.
- Encode the approved minimum output in the transaction; do not rely on a displayed percentage alone.
- Revert for review if the quote breaches the independent price band or policy limit.
On Avalanche, fast settlement does not remove the need for these checks. Once a C-Chain transaction is accepted, the treasury cannot treat the swap as a cancellable order. The router’s minimum-output condition is the on-chain execution bound; the treasury’s quote review and policy are what determine whether that bound is acceptable. Set it tightly enough to reject an adverse fill, but only after confirming the quoted route is worth executing at all.