Skip to main content

Crypto Trade Execution: Fees, Slippage & Order Quality

TL;DR. A round trip costs three things: the exchange fee on each leg, the spread you cross if you take, and the slippage between the price you saw and the price you got. In scalping the margin per trade is small and the number of trades is large, so crypto trade execution compounds faster than almost anything else in the account: the same strategy executed with market orders instead of limit orders pays $6,600 a month more in fees at fifty round trips a day on $10,000 of notional. The limitation of limit orders is the fill. Some trades run without you, and the discipline is to let them.

Prerequisites for this lesson: Crypto order types (market, limit, stop, post-only, reduce-only), Order book and DOM (spread, depth). Lesson 3 of the basics section.

The three costs of a round trip​

Most traders think of trading cost as the fee shown on the exchange. It is real, and it is a third of the picture.

  1. Fees. The maker or taker fee on each leg. Two legs, two fees.
  2. Spread. The gap between the best bid and the best ask. A market buy fills at the ask and a market sell at the bid, so a round trip with two market orders pays the spread twice. On BTC perpetuals in active hours it is one or two ticks; on a smaller coin it can be several tenths of a percent.
  3. Slippage. The difference between the price you expected and the price you received, from your order walking through the book or from the market moving between your decision and your fill.

A position trader pays these once a week. A scalper pays them fifty times a day, which is why they decide the outcome for scalpers and barely register for anyone else.

The order type decision, in numbers​

"Use limit orders" is common advice and rarely quantified. Here is the arithmetic on a typical venue, with $10,000 of notional per trade and fifty round trips a day:

ApproachFees per legRound trip50 round trips a dayMonth (22 days)
Both legs market (taker)0.05%0.10% = $10$500$11,000
Both legs limit (maker)0.02%0.04% = $4$200$4,400
Difference$6$300$6,600
Execution cost comparison at fifty round trips a day on 10,000 dollars of notional: market orders on both legs cost about 11,000 dollars a month in fees, limit orders on both legs about 4,400 dollars, a difference of 6,600 dollars a month from order type alone.

The $6,600 gap is from the order type alone, before spread and slippage. No edge or market read changes it; it is mechanical and constant. At a hundred round trips a day it doubles; at $50,000 of notional it is five times larger. The range fade lesson shows the same effect from the other side: a setup with a positive edge with limit fills becomes a losing one with market fills.

When market orders are the right choice​

Limit orders are the default, not a rule. Two situations justify the taker fee:

Getting out of a trade that is wrong. When the premise has failed and price is moving against you, speed beats cost. A market order exits now; a limit order can sit unfilled while the loss grows. The extra fee on an exit is trivial next to holding a deteriorating position.

A genuine momentum entry. A breakout on heavy volume, a cascade moving fast: a limit order posted behind the move fills only if the move fails. In those conditions the taker fee is the price of participating, and the entry is sized down to reflect the worse fill.

The rule: limit orders for every planned entry and every target; market orders when speed is the point, which means exits under pressure and momentum entries where each tick of delay changes the trade.

Slippage and how to limit it​

Market impact. Your order is large relative to the size resting at the price and consumes several levels to fill. For retail-size scalping on BTC and ETH perpetuals this is usually negligible; on thinner coins it is not.

Latency. Price moves between your decision and the exchange receiving your order. A web interface adds a few hundred milliseconds; in a sharp move on BTC at $100,000 that can be $10 to $50 of slippage on a market entry. In calm conditions it is close to zero. The moment that matters is the spike or the cascade, when market orders fill several ticks from the price on the screen; the API vs interface lesson covers what a retail setup can do about it.

To limit both:

  • Size inside the visible depth at your price. If the book shows 10 BTC resting at the ask and your order is 0.2 BTC, the fill is clean.
  • Use post-only limit orders for planned entries. A limit order has no latency slippage: it fills at your price or not at all.
  • Pay for speed deliberately. When you need a market order, decide that before the trade, not in the moment.

Post-only: the maker guarantee​

With the post-only flag the exchange checks whether your limit order would cross the spread and fill as a taker; if so, it cancels the order instead of executing it. Every fill is a maker fill. The cost is that in a fast market a post-only order can be cancelled the instant you place it and has to be re-entered. For entries at a defined level in normal conditions it is the simplest way to guarantee the maker rate.

Partial fills​

A resting limit order fills against a sequence of smaller aggressive orders and may fill only in part before price moves away. You then hold a smaller position than planned. Whether to wait, move the remainder or accept the partial depends on whether the setup is still valid and whether the missing size changes the risk. The habit to avoid is converting the remainder to a market order at once, which turns a disciplined entry into a taker fee on the part of the trade that mattered most.

The execution trap that has nothing to do with the market​

The most expensive execution error is behavioural. A setup forms and the plan is a limit order at a level. Price reaches the level and moves a little past it before you click. The move is happening without you. You click market buy.

You have now entered at a different price from the plan, paid the taker fee, and lost the relationship between your entry, stop and target that made the trade worth taking. Repeated fifty times, this produces a stream of small losses that have nothing to do with your read of the market. The setup was right; the execution made it a loser.

The discipline: if the limit did not fill, the trade did not happen. Let it go. A good setup missed costs nothing. A bad execution repeated costs the month.

Execution checklist​

Before every entry:

  1. Order type: limit by default; market only when speed is the point, decided in advance.
  2. Post-only: yes for a planned level in calm conditions.
  3. Size against visible depth: can the book absorb the order at this level without moving?
  4. Stop: placed the moment the entry fills, reduce-only, not "in a minute".
  5. Has price already passed the level? Then the trade is gone; wait for the next one.

Where to go from here​

You can now price a round trip and choose the order that fits the situation. The next lesson is the map you place those orders on: the levels where the resting liquidity that fills them tends to sit.

Related guides:


This article is educational content, not investment advice. Trading derivatives carries substantial risk, including total loss of capital. See disclaimer.