88.4% of EUR/USD weekend gaps close within 24 hours, and the median gap is only 6.5 pips. But the Sunday open print is not what it appears to be: across 835 weekends the median signed EUR/USD gap is -1.30 pips at the reopen and +0.50 pips sixty minutes later. That is the reopen spread showing through a bid quote, and it means every published statistic about which way forex gaps open needs checking.
Key takeaways
- The median EUR/USD weekend gap is 6.5 pips — 8.2% of a normal day's range. The 90th percentile is 31.8 pips and the largest in 835 weekends was 192.7 pips.
- 88.4% of EUR/USD weekend gaps are closed within 24 hours of the reopen, 95.2% within the week, and 1.8% were still open 30 days later. Median time to fill: 5 hours.
- The Sunday open lies, and we can measure by how much. On all 13 FX pairs the first hour of the reopen closes higher than it opened 60.5-70.8% of the time, and the median signed EUR/USD gap flips from -1.30 pips to +0.50. Gold, indices and stocks show none of it.
- Gap direction therefore cannot be measured from a reopen print on a bid feed. Absolute size and fill rates survive both definitions; direction does not.
- Gaps are a stock problem, not a forex problem. AAPL gaps a median 25.0% of a normal day's range every night against EUR/USD's 0.1%, and only 48.8% of AAPL weekend gaps fill within 24 hours.
weekend gap
24 hours
measured
every night
Weekend gaps by instrument
| Instrument | Weekends | Median pips | Mean | 90th pct | Largest | Median as % of daily range | Gap > 25% of range |
|---|---|---|---|---|---|---|---|
| EUR/USD | 835 | 6.5 | 13.0 | 31.8 | 192.7 | 8.2% | 18.0% |
| GBP/USD | 835 | 9.0 | 14.7 | 30.7 | 234.4 | 9.2% | 15.6% |
| USD/CAD | 835 | 6.9 | 10.4 | 21.6 | 209.5 | 9.1% | 13.2% |
| AUD/USD | 835 | 6.9 | 11.6 | 27.3 | 122.6 | 10.2% | 21.3% |
| EUR/GBP | 835 | 6.5 | 9.7 | 20.7 | 127.7 | 13.0% | 24.8% |
| EUR/CHF | 835 | 5.9 | 10.4 | 21.8 | 128.7 | 13.3% | 30.2% |
| NZD/CHF | 835 | 10.1 | 13.4 | 26.9 | 91.0 | 17.8% | 34.7% |
| AUD/CAD | 835 | 9.0 | 12.8 | 27.8 | 108.5 | 13.9% | 26.5% |
| CAD/CHF | 835 | 8.0 | 11.2 | 24.7 | 105.6 | 14.1% | 25.7% |
| USD/JPY | 835 | 8.2 | 13.7 | 30.9 | 209.2 | 10.7% | 18.6% |
| EUR/JPY | 835 | 12.0 | 20.0 | 42.9 | 366.5 | 11.9% | 20.8% |
| GBP/JPY | 835 | 15.6 | 24.7 | 51.0 | 332.4 | 11.9% | 20.9% |
| AUD/JPY | 835 | 10.9 | 17.4 | 39.1 | 162.7 | 13.2% | 24.5% |
| Gold | 852 | 95.7 | 282.6 | 561.1 | 11,193.7 | 5.0% | 11.5% |
| Silver | 786 | 31.0 | 98.1 | 169.0 | 3,316.0 | 6.2% | 13.8% |
| Brent crude | 753 | 21.4 | 50.7 | 112.8 | 1,516.0 | 12.0% | 27.2% |
| US100 (Nasdaq) | 667 | 18.5 | 40.5 | 99.1 | 823.1 | 13.3% | 31.5% |
| US30 (Dow) | 667 | 29.2 | 63.2 | 154.3 | 1,270.5 | 10.0% | 24.7% |
| US500 (S&P) | 662 | 5.3 | 10.8 | 24.2 | 311.1 | 14.8% | 34.0% |
| GER40 (DAX) | 641 | 23.0 | 43.6 | 97.5 | 747.3 | 12.7% | 27.2% |
| AAPL | 430 | 100.9 | 266.3 | 369.0 | 37,153.0 | 30.4% | 56.9% |
| TSLA | 140 | 433.5 | 557.1 | 1,234.1 | 2,742.0 | 39.2% | 64.3% |
| NVDA | 140 | 225.4 | 1,158.6 | 899.9 | 108,774.9 | 37.3% | 65.0% |
BTC/USD and ETH/USD are absent for the obvious reason: crypto never closes, so there is no weekend gap to measure. That is itself the cleanest weekend-risk answer in the table.
Notice how far the means sit above the medians — gold's mean gap is 282.6 pips against a 95.7 median, NVDA's 1,158.6 against 225.4. Weekend gap size is heavily right-tailed, so the median is the number to plan around and the 90th percentile is the number to survive. A mean on its own, which is what usually gets quoted, overstates the typical weekend and understates the bad one.
Do gaps fill?
Two definitions, because the first one is contaminated by the artefact described in the next section. Open-based measures the gap from the reopen print. Settled measures it from the close of the first reopen hour, after the reopen spread has normalised, and looks for the fill from the second hour onward.
| Instrument | Filled ≤24h from the open | Filled ≤24h settled | Filled ≤1 week | Still open after 30d | Median hours to fill |
|---|---|---|---|---|---|
| EUR/USD | 88.4% | 85.0% | 95.2% | 1.8% | 5 |
| GBP/USD | 88.3% | 85.4% | 95.1% | 2.2% | 7 |
| USD/CAD | 89.9% | 86.6% | 96.0% | 1.4% | 4 |
| USD/JPY | 86.3% | 81.6% | 93.7% | 3.1% | 3 |
| GBP/JPY | 87.7% | 84.7% | 95.4% | 2.4% | 3 |
| CAD/CHF | 91.3% | 85.3% | 95.8% | 1.3% | 3 |
| Gold | 89.4% | 82.4% | 95.7% | 1.5% | 6 |
| Silver | 89.8% | 82.3% | 94.8% | 2.3% | 3 |
| Brent crude | 79.2% | 76.6% | 89.1% | 4.8% | 9 |
| US100 (Nasdaq) | 74.5% | 72.4% | 89.2% | 4.5% | 12 |
| US30 (Dow) | 79.3% | 75.4% | 90.0% | 3.0% | 12 |
| US500 (S&P) | 73.3% | 71.5% | 88.7% | 4.2% | 12 |
| GER40 (DAX) | 78.6% | 75.5% | 88.0% | 3.7% | 9 |
| AAPL | 59.3% | 48.8% | 79.1% | 4.0% | 48 |
| TSLA | 55.7% | 45.7% | 73.6% | 5.0% | 49 |
| NVDA | 59.3% | 46.4% | 82.9% | 4.3% | 28.5 |
The “gaps fill” claim survives the stricter definition on FX — EUR/USD goes from 88.4% to 85.0% — which is the useful result, because it means the fill rate is a property of the market rather than of the measurement. What does not survive is applying that claim across asset classes. A single stock's weekend gap is closer to a coin flip than to a rule (AAPL 48.8%, TSLA 45.7%, NVDA 46.4% on the settled definition), and index gaps sit in between at roughly 71.5-75.4%.
A word on what “fill” means here. It means price traded back through Friday's closing level at some point within the window. It does not mean a gap-fill trade would have been profitable: the 1.8% of EUR/USD gaps that never filled in 30 days include the ones that ran hundreds of pips the other way first, and a 5-hour median is an average over both the small gap that closed in one bar and the large one that closed on Thursday.
Why the Sunday open lies
Forex reopens at 21:00 or 22:00 UTC on Sunday and the spread at that moment is enormous. Our spread study already showed EUR/USD widening from 0.32 pips mid-session to 2.24 pips at 21:00 UTC on an ordinary weekday, and the Sunday reopen is worse than that. Our price data is bid-side. A bid quote sitting under a very wide spread prints below where the market actually is, so the reopen bar's open is artificially low and any gap measured from it is artificially negative.
Here is the fingerprint, over the same 835 weekends:
| Instrument | Median signed gap at the open | Median signed gap after 1 hour | Gapped up from the open | Gapped up settled | First reopen hour closed up |
|---|---|---|---|---|---|
| EUR/USD | -1.30 | +0.50 | 43.1% | 52.0% | 62.2% |
| GBP/USD | -2.50 | +0.70 | 42.6% | 52.9% | 66.1% |
| USD/CAD | -1.40 | +1.20 | 45.4% | 56.2% | 68.1% |
| AUD/USD | -2.00 | -0.40 | 42.0% | 47.9% | 60.5% |
| EUR/GBP | -2.00 | +0.80 | 40.2% | 55.1% | 65.9% |
| EUR/CHF | -2.50 | +0.10 | 37.8% | 50.1% | 67.0% |
| NZD/CHF | -4.50 | -1.10 | 36.7% | 45.3% | 64.5% |
| USD/JPY | -1.90 | +2.50 | 41.4% | 60.4% | 70.8% |
| GBP/JPY | -7.75 | -0.50 | 35.5% | 48.2% | 68.6% |
| AUD/JPY | -4.10 | +0.25 | 38.1% | 50.4% | 70.4% |
| Gold | +7.35 | +11.55 | 51.9% | 51.5% | 51.3% |
| US100 (Nasdaq) | +2.19 | +2.84 | 56.2% | 54.9% | 48.9% |
| US500 (S&P) | +0.62 | +0.68 | 54.5% | 54.1% | 49.2% |
| GER40 (DAX) | +4.40 | +5.38 | 56.9% | 55.2% | 49.5% |
Every one of the 13 FX pairs shows a negative median signed gap at the open that returns to roughly zero after one hour, and a first reopen hour that closes up on 60.5-70.8% of weekends. Gold, the indices and GER40 show neither: their first reopen hour closes up 48.9-51.3% of the time, which is what you would expect, and their signed gap does not flip.
That pattern cannot be a market fact. A genuine Sunday-evening bearish bias in EUR/USD, GBP/USD, EUR/GBP, NZD/CHF and CAD/CHF at the same time would require every one of those currencies to weaken against every other one, which is impossible. It is the quote mechanism. The honest conclusion is that the direction of a forex weekend gap cannot be measured from the reopen print on a feed like this — while absolute gap size and fill behaviour hold up under both definitions, as the tables above show.
Weekend gap versus overnight gap
Gaps are usually framed as a forex weekend problem. Measured session to session, they are overwhelmingly a single-stock problem that happens every night.
| Instrument | Sessions | Median gap pips | As % of a normal day's range | Sessions gapping > 10% of range |
|---|---|---|---|---|
| NVDA | 770 | 199.0 | 32.9% | 79.7% |
| TSLA | 770 | 281.0 | 25.4% | 77.7% |
| AAPL | 2,384 | 83.1 | 25.0% | 76.6% |
| Brent crude | 3,853 | 10.0 | 5.6% | 30.7% |
| US500 (S&P) | 3,400 | 0.3 | 0.8% | 19.9% |
| GER40 (DAX) | 3,306 | 1.0 | 0.5% | 23.3% |
| Silver | 4,006 | 2.0 | 0.4% | 11.4% |
| US30 (Dow) | 3,413 | 1.1 | 0.4% | 19.5% |
| AUD/CAD | 4,321 | 0.2 | 0.3% | 13.5% |
| US100 (Nasdaq) | 3,412 | 0.4 | 0.3% | 17.7% |
| EUR/GBP | 4,194 | 0.1 | 0.2% | 10.8% |
| EUR/CHF | 4,194 | 0.1 | 0.2% | 11.9% |
| NZD/CHF | 4,196 | 0.1 | 0.2% | 12.8% |
| CAD/CHF | 4,321 | 0.1 | 0.2% | 13.3% |
| GBP/JPY | 4,194 | 0.2 | 0.2% | 12.2% |
| Gold | 4,420 | 3.0 | 0.2% | 11.0% |
| EUR/USD | 4,252 | 0.1 | 0.1% | 9.8% |
| GBP/USD | 4,253 | 0.1 | 0.1% | 10.1% |
| USD/CAD | 4,253 | 0.1 | 0.1% | 11.1% |
| AUD/USD | 4,196 | 0.1 | 0.1% | 11.7% |
| USD/JPY | 4,195 | 0.1 | 0.1% | 13.0% |
| EUR/JPY | 4,195 | 0.1 | 0.1% | 12.1% |
| AUD/JPY | 4,194 | 0.1 | 0.1% | 13.5% |
| BTC/USD | 2,704 | 0.6 | 0.1% | 13.5% |
| ETH/USD | 2,561 | 0.1 | 0.1% | 13.1% |
Holding NVDA through one night exposes you to a median gap worth 32.9% of a normal day's range, and a gap larger than 10% of the day's range on 79.7% of sessions. Holding EUR/USD through the same night exposes you to 0.1%. A stop loss is a real instruction on a 24-hour instrument and a suggestion on a single stock — which is worth more to a position-sizing decision than any weekend gap statistic.
Methodology
- Source: Dukascopy bid OHLC hourly and daily bars, as held in the FxBacktest archive and replayed by the simulator.
- Sample: 835 weekends per FX pair (2010-07-18 to 2026-07-26), gold 852, silver 786, Brent 753, US indices 641-667, AAPL 430, TSLA and NVDA 140 each.
- Weekend break definition: a pause of 20 hours or more between consecutive hourly bars where the last bar falls on a Friday or Saturday and the next on a Saturday, Sunday or Monday. Holiday breaks that do not match that pattern are excluded deliberately — a Christmas break is not a weekend, and mixing them would inflate the tail.
- Gap, open-based: Friday's closing bid to the reopen bar's opening bid.
- Gap, settled: Friday's closing bid to the close of the first reopen hour, with the fill search starting from the second hour. This is the variant to trust for anything directional.
- Fill: price trading back through Friday's closing level, checked on hourly bars for up to 30 days after the reopen. The 24-hour and one-week windows are measured from the reopen, not from Friday.
- Normalisation: gap size as a share of the instrument's own median daily range, computed from its daily bars with Sunday bars dropped (partial session) and bars where high equals low dropped — so the comparison holds across asset classes where pips do not.
- Overnight gaps: previous daily close to next daily open, same filters.
- Spread: everything is bid-side and excludes the spread, which for this study is not a minor caveat but the finding itself. See the Sunday-open section.
- Known limit: one feed, one liquidity provider. Absolute gap sizes will differ at a retail broker with wider weekend spreads, and the reopen artefact will be larger there, not smaller.
What to do with this
Do not size weekend risk off the median. EUR/USD's median gap is 6.5 pips, its 90th percentile is 31.8, and its worst case in this sample was 192.7. Treat “gaps always fill” as instrument-specific — 85.0% on EUR/USD, roughly 71.5-75.4% on indices, under 50% on single stocks within 24 hours. It is not a market law.
If you hold single stocks over a weekend, your stop is not a stop — a gap of 25.0-32.9% of the daily range goes straight through it. And distrust gap-direction statistics, including anyone else's: if a study does not say how it handled the reopen spread, its direction numbers are probably measuring the spread. The simulator steps the same hourly bars across a Friday close and Sunday reopen, so you can watch a gap open against a live position rather than reading about it — see where to place a stop loss and forex market hours.
Cite or republish this data
This research is free to quote, screenshot, or republish — in an article, a video, a newsletter, or a course — as long as you credit FxBacktest with a link back to this page. Copy the attribution below.
Frequently asked
How big is a typical forex weekend gap?
The median EUR/USD weekend gap over 835 weekends is 6.5 pips, which is 8.2% of a normal day's range. The 90th percentile is 31.8 pips and the largest in the sample was 192.7 pips. JPY crosses gap more — GBP/JPY's median is 15.6 pips.
Do forex gaps always fill?
Nearly always, but not always. 88.4% of EUR/USD weekend gaps closed within 24 hours of the reopen and 95.2% within a week, while 1.8% were still open 30 days later. On the stricter definition that ignores the first reopen hour, the 24-hour figure is 85.0%.
Do stock gaps fill as often as forex gaps?
No, and it is not close. Within 24 hours on the settled definition, AAPL weekend gaps filled 48.8% of the time, TSLA 45.7% and NVDA 46.4%, against EUR/USD's 85.0%.
Why does the Sunday forex open look lower than Friday's close?
Because the reopen spread is enormous and these are bid quotes, so the bid prints below the true market. Across 835 weekends the first reopen hour closes higher than it opened on 62.2% of weekends on EUR/USD, and the median signed gap moves from -1.30 pips at the open to +0.50 pips an hour later. It is a quote artefact, not a Sunday-night downtrend.
Which instruments have no weekend gap risk?
BTC/USD and ETH/USD, because they trade through the weekend and never close. That is why they are excluded from the weekend table on this page.
Is overnight gap risk worse than weekend gap risk?
For single stocks, yes, and by a lot. AAPL's median overnight gap is 25.0% of a normal day's range and NVDA's is 32.9%, happening every session. EUR/USD's median overnight gap is 0.1%.