How can Slippage be measured?

Explore How can Slippage be: mechanics, differences, limitations, and practical checks.

Mechanism and definition

Slippage is the difference between the price you expected to get for an order and the price you actually received when it executed. To measure it consistently, you need three elements: (1) a reference price that represents “intended execution,” (2) the actual executed price(s), and (3) a rule for how to handle timing and partial fills.

A common measurable field is price slippage (in price units):

  • Slippage = ActualExecutionPrice − IntendedExecutionPrice For a buy, a higher actual price implies positive slippage; for a sell, the sign interpretation can be reversed depending on the convention you choose. Pick one convention and apply it to every calculation.

Another measurable field is slippage in account currency (cost impact). This converts the price difference into an amount using the trade’s size and contract specifications. Exact formulas depend on how your execution system defines contract value, so your calculation method should be stated as an assumption.

How to measure it step by step

  1. Select the intended price reference. Examples of possible “intended” prices include the quoted price at order submission time, the order’s limit/stop price (if applicable), or an internal “expected price” used by your execution workflow. The measurement is only as consistent as this choice.
  2. Choose the actual execution price reference. Use the trade fill price(s) recorded by the execution venue/platform. If there are multiple fills, you must decide whether to measure each fill separately or compute a volume-weighted average.
  3. Define timestamps and matching logic. You need a rule for which timestamp anchors “intent” versus “execution.” For instance, you might use the order submission timestamp for the intended price and the fill timestamp for actual price. If the system provides multiple events (quote update, request sent, acceptance, fill), define which pair you compare.
  4. Handle partial fills. If an order fills in parts, you can compute a volume-weighted average slippage across fills, using each fill’s size as weights. Alternatively, report per-fill slippage and the spread of outcomes.

Evidence and example with explicit assumptions

Assume the following measurement setup for a single order:

  • IntendedExecutionPrice is the displayed quote used when the order request was created.
  • ActualExecutionPrice is the volume-weighted average price across all fills for that order.
  • Slippage is computed as Actual − Intended.

Example (numbers are illustrative): IntendedExecutionPrice = 1.1000, and the executed volume-weighted average ActualExecutionPrice = 1.1012. Then slippage (price units) = 1.1012 − 1.1000 = 0.0012.

To verify the calculation independently, compare your intended quote timestamp and value against your execution log, then recompute the weighted average from the fill sizes and prices. If your system records both “request sent” and “fill time,” repeat the measurement with each plausible intent timestamp to see how much the result changes; a large change indicates your timestamp assumption is likely to dominate the measurement.

Limitations and risks in measurement

Slippage measurement has material limitations:

  • Intent ambiguity: Different systems define “expected” or “intended” price differently (quote at request, limit/stop level, or a cached expectation). Changing this definition can change slippage even if execution prices are identical.
  • Timing uncertainty: Markets can move between the moment you capture the intended price and the moment the order actually executes. If you cannot align timestamps precisely, you may be measuring “delay plus movement,” not only slippage.
  • Partial fills and aggregation effects: Combining fills into a weighted average can hide the fact that some fills were favorable while others were not.
  • Provider and execution-path variability: Your observed execution depends on how orders are routed and matched, the liquidity available at execution time, and transaction costs. Even with identical methods, results can differ across time and environments.

Historical comparisons should be treated as descriptive: relationships observed in the past do not guarantee future slippage behavior. Also, costs such as commissions and fees can be reported separately from price slippage; mixing them into one number should be avoided unless your definition explicitly includes them.

Verification and what to measure next

To make slippage measurements independently verifiable, document your assumptions: which intended price definition you used, how you paired timestamps, whether you used per-fill or volume-weighted averages, and what currency conversion rules you applied.

Trading foreign exchange and CFDs involves substantial risk. Information on FoxiForex is educational and is not personal financial advice. Sponsored placements are labelled clearly.