Do Gaps Fill? Gap Fill Probability Across Six ETFs
Scope: measured on the ETFs listed (SPY, QQQ, IWM, DIA, GLD, SLV). Findings apply to the instruments measured and do not automatically transfer to other markets.
SPY's opening gap "filled", meaning price touched the prior close at some point that same session, 60.6% of the time over 386 sessions. That number is true and it is misleading. Fill rate falls steadily with gap size in all six ETFs tested: SPY gaps under 0.10% filled 93.0% of the time, while gaps of 0.50% or more filled 35.1%. If you hold a position through the close, the rate that applies to you is the one for the size of gap you wake up to, not the average. Same session only: whether a gap fills days later is a different question. If you have ever been tempted to sell into a bad open, or to hold on because "it will come back", the size of the gap says how often it did.
All 26 research notes
01Claims retail traders inherit — tested
Do gaps get filled? What a volume spike means Do volatile days offer more? Calendar effects, tested Reversal stories need controls What moved Bitcoin in August Stop hunts, tested The VWAP magnet, tested02Before you read any indicator
When futures actually trade Best time of day to buy an ETF How much does SPY move? Premarket and after hours The gap before you see it ETFs vs futures SPX vs SPY vs ES Do SPY and QQQ move together?03The account is a variable too
Why accounts blow up The account is a variable04How the levels are computed
GEX: open interest vs volume Why platforms disagree on GEX05How much the levels move
The gamma flip moves all day Call and put walls, explained06Whether the levels carry information
Testing the gamma wall Point of control, tested07What the executed trades add
One market, many tapes Order flow + gamma confluenceWhat percentage of gaps fill the same session?#
Between 57.3% and 63.8% in the four index ETFs, and under half in the two metals. SPY filled 60.6% of 386 sessions, QQQ 57.3% of 386, IWM 61.7% of 384 and DIA 63.8% of 384. GLD filled 41.1% of 384 and SLV 37.2% of 384. No minimum gap size was required, so every session with a prior close counts.
The gaps that filled and the gaps that did not are not the same kind of gap. In every one of the six, the median unfilled gap is roughly two to four times the median filled gap (2.4× for SPY, 4.2× for GLD).
| ETF | Median gap that filled | Median gap that did not |
|---|---|---|
| SPY | 0.198% | 0.473% |
| QQQ | 0.263% | 0.804% |
| IWM | 0.282% | 0.769% |
| DIA | 0.172% | 0.566% |
| GLD | 0.249% | 1.042% |
| SLV | 0.438% | 1.512% |
2025-02-10 to 2026-08-28, regular session 09:30–16:00 ET, one-minute bars. n = 386 sessions with a prior close for SPY and QQQ, 384 for IWM, DIA, GLD and SLV; sessions with fewer than 300 minute bars are excluded. Gap = the 09:30 opening print versus the prior session's 16:00 close, as a percent of that close. "Filled" = the session's high–low range reached the prior close at any point that same session. Medians are of absolute gap size. Fill rates: SPY 60.6%, QQQ 57.3%, IWM 61.7%, DIA 63.8%, GLD 41.1%, SLV 37.2%.
A median filled gap of 0.172% to 0.282% in an index ETF is roughly a fifth of a typical session's range, about 0.9% on SPY (see how much SPY moves in a day). Those small gaps dominate the counts, and they are what carries the headline percentage.
Why is the high fill rate misleading?#
Because the fill rate is not one number. It is a curve that falls as the gap grows, and the headline is a weighted average of a near-certainty at one end and roughly a one-in-three chance at the other. Split SPY's 386 sessions into four size buckets and the rate drops from 93.0% to 35.1%.
| Absolute SPY gap at 09:30 | Sessions (n) | Filled same session |
|---|---|---|
| Under 0.10% | 71 | 93.0% |
| 0.10% to 0.25% | 94 | 79.8% |
| 0.25% to 0.50% | 107 | 49.5% |
| 0.50% or more | 114 | 35.1% |
SPY, 2025-02-10 to 2026-08-28, n = 386 sessions with a prior close, 09:30–16:00 ET, one-minute bars; the four buckets sum to the same 386 sessions. Buckets are by absolute gap as a percent of the prior close and are left-inclusive: a 0.10% gap belongs to the second bucket. "Filled" = the session's high–low range reached the prior close at any point that same session.
The same fall, steeper at every step, appears in the other five with no exception.
| ETF | Under 0.10% | 0.10% to 0.25% | 0.25% to 0.50% | 0.50% or more |
|---|---|---|---|---|
| QQQ | all 40 | 74.2% (89) | 69.7% (76) | 34.3% (181) |
| IWM | 93.6% (47) | 86.3% (73) | 70.1% (87) | 39.0% (177) |
| DIA | 93.7% (79) | 80.4% (102) | 62.4% (93) | 28.2% (110) |
| GLD | 94.7% (38) | 81.5% (54) | 52.1% (71) | 18.6% (221) |
| SLV | all 17 | 86.8% (38) | 64.6% (48) | 22.1% (281) |
Same-session fill rate by absolute gap bucket, sessions in brackets. Same window, definition and exclusion rule as the SPY table. Bucket counts sum to 386 for QQQ and 384 for IWM, DIA, GLD and SLV. "All 40" and "all 17" are written as counts rather than as 100.0% because samples that small do not earn a decimal.
So the honest summary is that "gaps fill" is statistically true, and it is most true of the gaps small enough that filling them changes very little.
How often do the gaps you would actually notice fill?#
About a third of the time in the index ETFs, and about a fifth in the metals. In the 0.50%-or-more bucket, SPY filled 35.1% of 114 sessions, QQQ 34.3% of 181, IWM 39.0% of 177 and DIA 28.2% of 110. GLD filled 18.6% of 221 and SLV 22.1% of 281. Every one of those is a minority outcome.
These are not marginal gaps. The median gap inside that top bucket was 0.881% for SPY, 0.922% for QQQ, 0.883% for IWM, 0.800% for DIA, 1.176% for GLD and 1.522% for SLV. That is the size a reader registers as a gap on opening the account, and it is the size at which the folk rule stops describing most sessions.
The metals deserve a separate line. GLD put 221 of its 384 sessions in the 0.50%-or-more bucket and SLV put 281 of 384 there. For those two the large gap is the ordinary case, which is most of why their overall rates sit at 41.1% and 37.2% rather than near 60%.
What does "filled" mean here?#
Touched, not closed. A session counts as filled when its high–low range reached the prior close at any point between 09:30 and 16:00 ET. It does not require price to settle back there, to hold, or to be reachable at a usable price. One minute of overlap at 09:31 counts the same as a full round trip at 15:00, so these are the most generous fill rates a range test can produce.
Can you know which bucket you are in before the open?#
Not from this data. Every rate above is conditioned on the size of the gap, and that size is only known once the 09:30 print exists. Someone holding a position through the previous close is exposed to the whole distribution rather than to the 60.6%, because the bucket is drawn after they have already committed.
That makes these tables a base rate, not a signal. They set what normal looks like once the open has printed. They supply no edge in the hours before it, and nothing here says a large unfilled gap is more likely to keep running.
What this does not say#
- Same session only. A gap closed three days later counts as unfilled here. The "eventually fills" version of the claim is a different question this measurement does not answer.
- No minimum gap size. Every session with a prior close is included, so sessions that opened essentially unchanged count as filled gaps. That choice raises every headline rate, which is why the size buckets matter more than the overall number.
- Range-based, not path-based. Filled means the level was reached, not that it was reached at a workable price, not when, and not with any claim about where price went next.
- Six ETFs, one window. SPY, QQQ, IWM, DIA, GLD and SLV, regular session only. The metals and the index funds disagree by more than 20 percentage points inside this window alone, so another window or another fund is a separate question.
- Descriptive only. These are counts of what happened. No forecast, no rule, no advice about any position.
Related reading#
- The overnight gap is mostly over before you see it — the companion piece. That note is about when the overnight move happens; this one is about whether what is left of it at 09:30 gets traded back.
- How much does SPY move in a day? — the intraday range a gap has to be filled inside of.
- Trading ETFs premarket and after hours — the sessions where the gap is built.
- The calendar effects are real and still useless — another base rate that does not survive contact with a position.
- Do SPY and QQQ move together? — why two of the six above are not independent evidence.
See these levels on a live chart
Option-derived levels and futures tape on one timeline.