H1 2026 listings vs their offer price: last regular-hours close of July 6-10, by type
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-07-26, from IPO Market 2026: The First Half in Numbers.
| listing_type | deals_with_offer_price | traded_jul6_10 | above_offer | below_offer | at_offer | median_return_pct |
|---|---|---|---|---|---|---|
| Unit offerings | 101 | 56 | 50 | 4 | 2 | 1.1 |
| Common or ordinary shares | 72 | 70 | 45 | 25 | 0 | 3.6 |
| ADRs | 5 | 5 | 0 | 5 | 0 | -17.4 |
- Rows × columns
- 3 × 7
- Computed
- Completeness
- No missing values
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
listing_type |
text | 3 distinct values | |
deals_with_offer_price |
number | 5 to 101 | US dollars |
traded_jul6_10 |
number | 5 to 70 | |
above_offer |
number | 0 to 50 | |
below_offer |
number | 4 to 25 | |
at_offer |
number | 0 to 2 | |
median_return_pct |
number | -17.4 to 3.6 | percent |
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
SELECT multiIf(i.security_type IN ('SP', 'UNIT'), 'Unit offerings',
i.security_type = 'ADRC', 'ADRs',
'Common or ordinary shares') AS listing_type,
count() AS deals_with_offer_price,
countIf(p.last_close > 0) AS traded_jul6_10,
countIf(p.last_close > toFloat64(i.final_issue_price)) AS above_offer,
countIf(p.last_close > 0 AND p.last_close < toFloat64(i.final_issue_price)) AS below_offer,
countIf(p.last_close = toFloat64(i.final_issue_price)) AS at_offer,
round(quantileExactIf(0.5)((p.last_close / toFloat64(i.final_issue_price) - 1) * 100, p.last_close > 0), 1) AS median_return_pct
FROM global_markets.stocks_ipos AS i
LEFT JOIN (
SELECT ticker, toFloat64(argMax(close, window_start)) AS last_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 00:00:00')
AND window_start < toDateTime('2026-07-11 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY ticker
) AS p ON p.ticker = i.ticker
WHERE i.ipo_status = 'history'
AND i.currency_code = 'USD'
AND i.listing_date >= '2026-01-01'
AND i.listing_date <= '2026-06-30'
AND i.final_issue_price > 0
GROUP BY listing_type
HAVING countIf(p.last_close > 0) > 0
ORDER BY deals_with_offer_price DESC
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 analysisIPO Market 2026: The First Half in Numbers
H1 2026 listings by security type: count, dollars, and the typical deal in each bucket
table 3×5
→
The eight largest US listings of H1 2026 by offer size
ranking 8×3
→
First-half listings by year, 2019-2026: like-for-like January-June counts and dollars
ranking 8×3
→
US-dollar listings by month, H1 2026: count and dollars raised
series 6×3
→
H1 2026 listings by primary exchange: count, dollars, and the unit-offering share
ranking 4×4
→
H1 2026 listings: totals, the typical deal, and the concentration receipts
scalar 1×11
→
See all 2,173 queries →