In foreign exchange (FX), milliseconds determine who bears risk and who captures edge. “Last Look” is a microstructure rule that gives a liquidity provider (LP) a brief window—typically a few milliseconds—to accept or reject a trade request after a taker has attempted to execute at a quoted price. Supporters argue it is a risk-control tool that protects quote integrity in a fragmented, latency-sensitive market. Critics say it can enable asymmetric information and selective fills, undermining fairness. This article explains what Last Look is, why it exists, how it is implemented, the trade-offs versus firm liquidity, and how traders can evaluate execution in environments where Last Look is present. It is written for a broad audience—from retail traders and technologists to compliance officers and buy-side desks—seeking a practical, comprehensive reference without external links.
FX is an over-the-counter (OTC) global market with multiple liquidity pools, heterogeneous technology stacks, and uneven access to price information. Prices stream continuously; takers (brokers, ECNs, funds, and retail platforms) consume those streams and respond to quotes by sending orders. Between the moment a price is displayed and the moment an order hits the quoting LP, network latency, queuing, and internal processing can render the original quote stale. In normal conditions, this delay is small and inconsequential. Around data releases, thin sessions, or bursty markets, the delay can be material, converting a seemingly valid quote into a mispriced obligation for the LP.
Last Look gives LPs a short, pre-disclosed hold window to check whether the inbound order would execute at a price still within tolerance of the LP’s current book. If not, the LP may reject or (in some models) re-quote. The practice emerged in the early days of electronic FX to defend against latency arbitrage and toxic flow. Over time, it has been standardized, measured, and—in better venues—constrained by policies designed to minimize information asymmetry and abuse.
Core Definition and Mechanics
Last Look is a post-trade request, pre-execution control: the taker hits or lifts a streamed price, the LP receives the order, and the LP has a bounded micro-interval to validate the trade. Implementation details vary, but most designs share three elements:
- Hold Window: A short interval (e.g., 5–100 ms) during which the LP decides to accept or reject. Some models enforce a symmetric minimum hold (the LP cannot accept faster than a floor), ensuring takers are not disadvantaged by selective acceleration.
- Price Check: The LP compares the requested price to its current internal mid/quote or to a tolerance band (e.g., basis points or pips threshold). If the market has moved beyond tolerance, the trade is rejected.
- Information Handling: Policies determine whether the LP can use knowledge of the incoming order for anything other than that decision, and whether any re-streaming or hedging is permitted before the decision is communicated.
Some venues allow re-quote (the LP offers a new price). Others are accept-or-reject only (AOR). Some enforce price-movement-only checks; others let LPs embed risk filters (credit, inventory, flow toxicity). The practical experience of a taker depends on all these choices.
A Step-by-Step Look at Order Flow With Last Look
To visualize Last Look in practice, consider a buy order in EUR/USD hitting a broker’s smart aggregator:
- The broker’s aggregator receives multiple live quotes from LPs (banks and non-banks). Each quote includes price, size, and metadata (e.g., whether it is firm or subject to Last Look).
- The taker (client) clicks or an algo triggers on the best offer. The aggregator routes the order to the quoting LP with the best combination of price, size, and policy.
- The LP receives the order and starts a Last Look timer. Its risk/pricing engine pulls the current internal reference (e.g., the LP’s own top-of-book) and applies tolerance bands.
- If the difference between the stream price and the current price is within the threshold, the LP accepts. Otherwise, it rejects (or re-quotes if permitted).
- The accept/reject message returns to the broker, which confirms the fill to the client or, on rejection, seeks the next best quote in the book.
Two metrics summarize this experience: acceptance rate (percentage of orders accepted) and time-to-decision (how long the LP held the order). Sophisticated takers also track post-trade slippage, fill-to-quote distance, and reject-on-favorable-movement asymmetry.
Economic Rationale: Benefits Claimed by LPs
Three arguments typically justify Last Look:
- Protection against stale quotes and latency arbitrage: When a price is hit at the edge of a fast market, the LP may be trading at a quote that no longer exists. Last Look filters those edge cases, keeping the LP’s inventory and hedging aligned with the true market.
- Stability of spreads: With Last Look as a safety valve, LPs are comfortable streaming tighter spreads most of the time. Without it, they may widen spreads to cover adverse selection.
- Risk-based throttling: LPs can protect their own books during periods of thin liquidity (such as rollover, late Friday, or holidays) when hedging costs spike.
These benefits are real in fragmented, high-speed OTC markets. However, the way Last Look is implemented can either preserve fairness or create a structural edge for the quoting side.
Trader Concerns: Where Last Look Can Go Wrong
Opponents of Last Look emphasize four risks:
- Asymmetric information: During the hold window, the LP knows the client’s intent (side, size, and timing) while the client is blind to the LP’s decision process. If the LP uses that information beyond a pure price-validity check, the asymmetry grows.
- Cherry-picking fills: If an LP accepts trades that are favorable and rejects those that are not, average execution for takers deteriorates even when the streamed spreads look tight.
- Hidden costs: A low headline spread can mask high reject rates and opportunity costs (missed fills during price moves). Effective cost is spread + rejects + slippage + the cost of re-routing.
- Opacity: If the venue, broker, or LP does not disclose parameters (hold duration, rejection logic, re-quote rules), takers cannot accurately evaluate execution quality.
Variants of Last Look in the Wild
Not all Last Look is equal. The market has converged on several recognizable patterns:
- Price-Check-Only (PCO): The LP checks only whether the market has moved beyond a fixed tolerance. If within range, it must accept. If beyond, it must reject. No inventory or toxicity signals are used.
- Risk-Aware Last Look (RALL): The LP applies both price tolerance and additional filters (credit limits, inventory bounds, toxicity scores). Common for bespoke relationships, but controversial if undisclosed in anonymous venues.
- Symmetric Hold: The LP must wait a minimum time (e.g., 10 ms) before either accepting or rejecting, preventing selective “fast accepts” and “slow rejects.”
- Accept-Or-Reject Only (AOR): No re-quotes; the order is either filled at the original price or rejected. Favored by takers as it limits negotiation games.
- Re-Quote Permitted: If the price moved outside tolerance, the LP may return a new price. Better for completion rates, but can add delay and complexity.
Firm Liquidity vs Last Look Liquidity
Firm liquidity is immediately executable and irrevocable upon hit/lift—no hold window, no re-quote. Last Look liquidity is “subject to validation.” Both have niches. Many venues now offer both streams and let takers choose. The choice is ultimately a portfolio problem: price tightness vs certainty of execution.
Comparison Table: Firm vs Last Look
| Dimension | Firm Liquidity | Last Look Liquidity |
|---|---|---|
| Execution Certainty | Immediate and binding | Conditional on hold-window validation |
| Spread Tightness | Often wider to reflect adverse selection risk | Often tighter; risk partially offloaded to rejects |
| Rejects | None by design | Possible; rate depends on volatility and tolerance |
| Transparency Needs | Lower; outcome is deterministic | Higher; hold time, logic, and reporting matter |
| Resilience in Fast Markets | LP bears full burden; may pull back liquidity | LP can protect book; may keep streaming |
| Best Use Case | Urgent, certainty-driven execution | Cost-sensitive flow in normal conditions |
Microstructure: Where the Milliseconds Go
Understanding Last Look requires a grasp of latency budget across the stack:
- Display Latency: Time from LP quote creation to taker screen or algo input.
- Decision Latency: Time for the taker to respond (human reaction or algo evaluation).
- Network Latency: Transit time to the venue, then to the LP.
- Venue Processing: Matching, risk checks, routing to LP.
- LP Hold Window: The configurable Last Look interval.
- Return Trip: Acceptance/rejection message back to the taker.
In calm markets, the combined latency may be under a few milliseconds, and Last Look rarely triggers. Around macro events, latency spikes at every layer, and a previously innocuous hold window can materially impact execution certainty.
Risk Controls Inside a Last Look Engine
Modern LP engines tend to implement layered controls:
- Reference Price Model: A composite mid derived from multiple venues and the LP’s own book, refreshed every tick.
- Dynamic Tolerance Bands: Tight bands in stable markets; wider bands during volatility or low liquidity hours.
- Inventory Stops: Hard caps on long/short exposure per currency pair to avoid over-concentration after bursts of fills.
- Credit Limits: Client-specific checks (notional, DV01, per-minute throttles) to prevent outsized risk from a single counterparty.
- Toxicity Scoring: Statistical detection of patterns correlated with adverse selection (e.g., highly predictive flow around quote changes).
From the taker’s perspective, the key is whether only price validity is tested or whether non-price heuristics also gate acceptance. The former is easier to audit and defend as fair.
Fairness Principles That Improve Last Look
Over the last years, the industry has converged on practices that mitigate asymmetry while preserving legitimate risk control:
- Explicit Disclosure: State clearly whether Last Look is used, what the hold duration is, and whether only price movement is checked.
- Symmetric Minimum Hold: Enforce a consistent minimum decision time for accept and reject, stopping selective acceleration.
- Price-Movement-Only Logic: Avoid inventory or toxicity filters in anonymous pools; reserve them for disclosed, bilateral streams.
- AOR (Accept-Or-Reject) Without Re-Quotes: Reduce negotiation, simplify analytics, and avoid bait-and-switch perceptions.
- Comprehensive Post-Trade Reports: Provide timestamps (quote time, order receive, decision send), decision reason, and reference price snapshots.
- Reject-Side Neutrality: Ensure rejections are not systematically biased to one market direction.
How Brokers and Aggregators Can Protect End Clients
Brokers sit between LPs and retail or small institutional clients, so their policy choices matter. Practical steps include:
- Labeling of Streams: Mark streams as Firm or Last Look, propagate tags to downstream clients.
- Smart Routing by Outcome, Not Headline Spread: Optimize for effective spread (spread + reject cost + slippage), not just displayed price.
- Reject Thresholds and Timeouts: If an LP exceeds acceptable reject or time-to-decision thresholds, throttle or drop that stream.
- Multi-Fill Fallback: On rejection, immediately route to next best firm or low-LL stream to reduce missed fills.
- Client Reporting: Expose acceptance rates and decision latencies per LP so clients see true execution quality.
Measuring the Real Cost of Last Look
Takers should quantify the total economic impact, not just the posted spread. A robust framework considers:
- Headline Spread: The visible bid/ask at click time.
- Acceptance Rate: Low acceptance can nullify tight spreads.
- Time-to-Fill: Rejections introduce delay; in momentum markets, delay equals slippage cost.
- Fill-to-Quote Distance: For AOR models, how close is the executed price to the original quote?
- Directionality of Rejects: Are rejects more common when the market moves in the client’s favor?
- Opportunity Cost: How often does a rejected order miss the subsequent price entirely?
Many buy-side analytics platforms turn these into a single KPI, often called Effective Cost of Liquidity (ECL). In stable markets, LL can lower ECL through tighter quotes; in unstable markets, ECL may rise if the hold logic is too tight or asymmetric.
Case-Style Scenarios
Scenario 1: Stable London Morning
EUR/USD trades in a tight 0.4–0.6 pip spread. Multiple LL streams show near-zero reject rates with 10 ms symmetric holds. For a mid-frequency strategy with small ticket sizes, LL is beneficial: you get tight prices with near-firm behavior.
Scenario 2: Non-Farm Payrolls Release
Spreads yaw wider, quote updates burst, and latency rises. A 25 ms LL window causes many rejections as prices outrun the quotes. Firm streams widen meaningfully but deliver certainty for urgent hedges. A smart router prefers firm or long-standing high-quality LL streams with relaxed but transparent tolerance bands.
Scenario 3: Thin Asian Late Session
Liquidity is shallow; LL streams keep quoting but reject frequently as micro-bursts occur. An execution policy that prefers higher acceptance-rate LPs—even at slightly wider spreads—yields better realized prices than blindly chasing the tightest headline.
Retail Platform Realities
Retail traders often do not see the LP mix behind their broker. Nevertheless, you can infer LL effects from experience:
- Frequent re-quotes or “off quotes” messages: Likely indicates LL rejections or internal risk gatings.
- Slippage clustering during news: A sign that your chain (broker → LP) tightens controls in volatile windows.
- Asymmetric slippage: If favorable fills are rare and unfavorable slippage is common, demand better reporting or consider brokers that disclose firm/LL routing ratios.
Retail users can also reduce exposure by avoiding market orders around scheduled data, using limit orders, and preferring brokers that explicitly publish acceptance metrics.
Order Types and Last Look
Order type determines exposure to LL mechanics:
- Market Orders: Most exposed to LL; they chase the top of book and will be rejected if the quote is stale at arrival.
- Limit Orders: Set a maximum/minimum price; if the LP’s book refreshes through your limit, some venues convert fills to firm once the price prints. Others still apply LL price checks. Ask for your venue’s rule.
- Stop Orders: Trigger in fast markets; if routed to LL streams, expect more rejections. Using protective offsets or routing to firm pools for trigger events can help.
Compliance and Governance Considerations
Sound governance around LL has five pillars:
- Policy Documentation: Clearly describe whether LL is used, the duration, and decision logic (price only or additional filters).
- Disclosure: Provide that policy to clients in plain language, including examples of accept/reject behavior.
- Monitoring & Testing: Track acceptance rates, decision latencies, directionality of rejections, and client-level dispersion.
- Change Control: Treat hold duration or tolerance changes as material; notify clients in advance.
- Issue Management: Have a process to investigate client complaints about rejections or perceived asymmetry.
Technology Trends Reducing Dependence on Last Look
Several innovations progressively narrow the gap LL was designed to bridge:
- Co-location and ultra-low-latency networks: Shorter round-trip times reduce the delta between displayed and internal prices.
- Deterministic matching engines: Venues with predictable queuing and time-stamping simplify audit and discourage gaming.
- Automated risk controls: Real-time hedging and adaptive spreads lessen the need to reject after the fact.
- Better analytics: Venue-level reporting on hold times and reject causes helps takers penalize outlier behavior, incentivizing cleaner LL implementations.
Designing a Fair Last Look: A Practical Blueprint
If you are a venue or LP designing LL from scratch, a fair starting point looks like this:
- Declare LL Upfront: Label streams as LL and publish the nominal hold range (e.g., 10–20 ms).
- Symmetric Hold: Impose a minimum hold equally for accepts and rejects.
- Price-Only Validation: Use only a price-movement test in anonymous pools; reserve inventory/toxicity checks for bilateral, disclosed relationships.
- AOR, No Re-Quote: Either fill at the original price or reject outright.
- Comprehensive Decision Packet: Return timestamped accept/reject decisions with reference price snapshots.
- Reject Neutrality Tests: Periodically publish statistics that show rejections are not directionally biased.
Quantifying “Toxic Flow” Without Penalizing Everyone
Some LL controversy springs from using toxicity models in anonymous pools. A more defensible approach is two-tiered:
- Anonymous Pools: Price-movement-only LL; no toxicity gates. Everyone gets the same rules.
- Bilateral Streams: Where identities and histories are known, modest, disclosed risk filters can be negotiated (e.g., per-minute notional caps).
This split recognizes that statistical edge exists but confines bespoke controls to relationships where both sides consent and can verify outcomes.
Advanced Execution Tips for Buy-Side Desks
Professional takers can materially improve realized costs by adapting to LL microstructure:
- Time-of-Day Rotation: Reweight firm streams around data releases; emphasize LL streams during quiet hours for tighter prices.
- Size Slicing: Break large tickets into child orders with randomized intervals to reduce burst rejections.
- Venue Diversity: Use multiple pools; do not over-rely on a single LL source whose performance may degrade intermittently.
- Feedback Loops: Drop or down-weight LPs whose acceptance rates degrade without explanation, even if their spreads appear attractive.
- TCA Discipline: Run monthly reviews on acceptance, latency, and directionality; negotiate terms using your evidence.
Myths and Misconceptions
- “Last Look is always bad.” Not necessarily. Clean, price-only LL with symmetric holds can deliver lower effective costs in calm markets.
- “Firm streams are always better.” For urgency and certainty, yes. But firm often costs more in spread, which may not be optimal for low-impact, high-frequency participation.
- “Rejections mean the broker is cheating.” Not automatically. Rejections can reflect legitimate price changes. The issue is frequency, timing, and bias.
- “Transparency solves everything.” It solves a lot by letting takers price the trade-off correctly, but technology and policy discipline must accompany disclosure.
Putting It All Together: A Decision Framework
When choosing between firm and LL streams—or among multiple LL implementations—apply this sequence:
- Define Objective: Is your priority certainty, average cost, or completion speed?
- Collect Evidence: Measure acceptance rate, hold times, and directionality across LPs.
- Score Streams: Compute effective cost that includes rejects and delays, not just spread.
- Set Routing Rules: Use firm during events; use high-quality LL otherwise; cap exposure to any single LP.
- Review Monthly: Adjust weights; renegotiate terms where performance slips.
Short Checklist for Traders
- Ask your broker to label which venues/LPs use Last Look.
- Request acceptance-rate and time-to-decision statistics by pair and time of day.
- Compare realized slippage during news vs quiet hours.
- If you see many re-quotes, use limit orders or reduce size around events.
- Consider brokers that provide a mix of firm and clean LL streams.
Key Takeaways
- Last Look is a latency-era safeguard with both benefits and pitfalls.
- Done well (price-only, symmetric, disclosed), it can lower costs in stable conditions.
- Done poorly (opaque, biased, inventory-gated in anonymous pools), it harms fairness.
- Execution quality is measurable; demand data and route based on outcomes, not appearances.
Conclusion
Last Look practices sit at the intersection of technology, market ethics, and liquidity economics. They were originally designed to safeguard liquidity providers from executing against stale prices in a decentralized and latency-filled environment. Over time, however, this small window of decision has come to symbolize a larger philosophical question in modern electronic trading: how to balance the protection of quote makers with the rights of quote takers to fair and predictable execution. From a structural perspective, Last Look is not inherently unfair. When implemented transparently—using short, symmetric hold times and purely price-movement checks—it can improve overall liquidity by encouraging LPs to stream tighter spreads with manageable risk. When applied opaquely—without disclosure, with arbitrary risk filters, or with asymmetric timing—it becomes a source of hidden cost and market distrust. For brokers, the responsibility is to disclose and monitor. For institutional traders, the task is to measure acceptance rates, hold durations, and directionality to make evidence-based routing decisions. For regulators and venues, the challenge is to codify best practices that promote integrity without stifling the efficiency that electronic FX relies on.
Ultimately, the evolution of Last Look mirrors the evolution of the Forex market itself: from bilateral opacity toward systemic transparency. As latency declines and analytical scrutiny increases, the industry is moving toward a future where fairness is quantified and verified rather than assumed. Last Look will likely persist in some form, but its influence will be defined not by secrecy but by how openly and responsibly it is governed.
Frequently Asked Questions
What exactly is Last Look in FX?
Last Look is a very short, post-order hold window that lets a liquidity provider validate whether the price you tried to trade at is still current. If the market moved beyond a set tolerance during that window, the LP may reject the trade (or re-quote on some venues).
How long does the Last Look window usually last?
Typical implementations range from about 5 to 100 milliseconds. Some places enforce a symmetric minimum hold so the LP cannot accept “instantly” but reject “slowly,” which improves fairness.
Why would a liquidity provider need Last Look at all?
Because quotes can become stale by the time an order arrives, especially in fast markets. Last Look helps filter trades that would force the LP to execute at prices that no longer exist, stabilizing spreads overall.
Is Last Look the same as a re-quote?
No. Last Look is the decision window; a re-quote is one possible outcome when the original price is invalid. Many venues forbid re-quotes and allow only accept-or-reject at the original price.
How do I know if my broker or venue uses Last Look?
Ask for explicit disclosure. Repeated re-quotes, frequent “off quotes,” or clustered rejections during news can be indirect signs. Good brokers publish acceptance rates and decision latencies per LP.
Does Last Look always disadvantage the trader?
Not always. Clean, price-movement-only implementations with symmetric holds often deliver tighter effective costs during normal trading. The problems arise when LL is opaque, biased, or used to cherry-pick fills.
What metrics should I track to evaluate Last Look?
Track acceptance rate, time-to-decision, fill-to-quote distance, and directionality of rejections. Combine them into an effective cost measure so you can compare streams on realized outcomes.
Note: Any opinions expressed in this article are not to be considered investment advice and are solely those of the authors. Singapore Forex Club is not responsible for any financial decisions based on this article's contents. Readers may use this data for information and educational purposes only.

