STRASMORE/EXPLORE 2,170 QUERIES

The pipeline lag in one row: plus the bulk backfill these figures deliberately exclude

Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-08-22, from Why Short Interest Data Is Always Two Weeks Old.

as of scalar 1×6read in context →
settlements measured
10
fastest lag days
10
median lag days
14
slowest lag days
26
settlements bulk loaded
197
bulk load date
2026-03-16
Rows × columns
1 × 6
Period covered
Computed
Completeness
No missing values
Source
US exchange, SIP and OPRA market data
Licence
Strasmore terms · free, no signup
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for The pipeline lag in one row: plus the bulk backfill these figures deliberately exclude, derived from the stored result.
ColumnTypeRangeNotes
settlements_measured number every row is 10
fastest_lag_days number every row is 10
median_lag_days number every row is 14
slowest_lag_days number every row is 26
settlements_bulk_loaded number every row is 197
bulk_load_date date 2026-03-16

Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.

the exact SQL behind every number
WITH first_arrival AS (
    SELECT settlement_date,
           toDate(min(_ingest_time)) AS arrived
    FROM global_markets.stocks_short_interest
    GROUP BY settlement_date
),
bulk_days AS (
    SELECT arrived
    FROM first_arrival
    GROUP BY arrived
    HAVING count() > 5
),
organic AS (
    SELECT settlement_date,
           dateDiff('day', settlement_date, arrived) AS lag
    FROM first_arrival
    WHERE arrived NOT IN (SELECT arrived FROM bulk_days)
)
SELECT count() AS settlements_measured,
       min(lag) AS fastest_lag_days,
       round(quantileDeterministic(0.5)(lag, cityHash64(settlement_date)), 1) AS median_lag_days,
       max(lag) AS slowest_lag_days,
       (SELECT count() FROM first_arrival WHERE arrived IN (SELECT arrived FROM bulk_days)) AS settlements_bulk_loaded,
       (SELECT toString(max(arrived)) FROM bulk_days) AS bulk_load_date
FROM organic

Run your own version of this

The same 22 years of US equities and 12 years of options data are queryable in SQL or plain English. A free account runs 100 queries a day and takes no card.

More from this analysisWhy Short Interest Data Is Always Two Weeks Old
GME days to cover: as reported in the file, and recomputed on the volume that traded while the print was pending scalar 1×8 The current state of the cycle: the newest print on file, and the one still in the pipeline scalar 1×6 Every incrementally-delivered settlement: measured on one date, on file days later series 10×3 GME, winter 2020-21: each short interest print and the price move before it went public (as-traded prices) table 6×5 The blind window: what five stocks did between the settlement date and the day its short interest was published table 5×6 The publication lag in one row: fastest, median and slowest across incrementally-delivered settlements scalar 1×4 See all 2,170 queries →