Stock Market Holidays 2026–2027: NYSE & Nasdaq
When is the stock market closed? Every upcoming NYSE & Nasdaq holiday and 1:00 p.m. early close for 2026–2027, from the live exchange calendar.
When is the stock market closed? US equity markets, the NYSE and Nasdaq, shut for about ten full-day holidays a year, and on a few half-days around Thanksgiving and Christmas they close early at 1:00 p.m. ET instead of the usual 4:00 p.m., the full session-by-session clock lives in our stock market hours guide The calendar below lists every upcoming stock market holiday and early close straight from the exchange schedule, and it refreshes on its own: as each holiday passes it drops off, and the next ones move up.
When is the stock market closed next?
The soonest closure ahead is Labor Day on September 7, 2026, 20 days out from today. The full forward calendar carries 12 dated closures, each tagged either a full closure (no trading at all) or an early close (a shortened session).
The exact SQL behind every number
SELECT
toString(date) AS holiday_date,
formatDateTime(date, '%a') AS weekday,
any(name) AS holiday,
any(status) AS day_status,
any(if(status = 'early-close',
formatDateTime(toTimeZone(close, 'America/New_York'), '%I:%i %p'),
'')) AS early_close_et,
dateDiff('day', today(), date) AS days_away
FROM global_markets.stocks_market_holidays
WHERE date >= today()
GROUP BY date
ORDER BY dateRead the table top to bottom and it doubles as a countdown: the days_away column measures each closure from today, and the day_status column marks whether the market is dark for the whole day or only closes early. A single holiday can occupy two rows, a full-closure day next to a shortened session, as Thanksgiving Thursday does with the half-day Friday that follows it.
What happens when a holiday falls on a weekend?
US exchanges observe a fixed-date holiday on the nearest weekday. When a holiday lands on a Saturday, the market takes the Friday before off; when it lands on a Sunday, it closes the Monday after. New Year's Day is the exception: when January 1 falls on a Saturday, the market is not closed the Friday before, that Friday, December 31, sits in the prior year, so there is no makeup day at all. This nearest-weekday rule is why a holiday's weekday shifts from year to year in the table above, and why some years hand traders a four-day week around the Fourth of July. Floating holidays such as Thanksgiving (the fourth Thursday of November) and Memorial Day (the last Monday of May) are already pinned to a weekday, so they never move.
What is the difference between a full closure and an early close?
The schedule ahead splits into two kinds of day. A full closure means no regular session and no trading at all. An early close, a shortened half day, is a regular session that ends at 1 p.m. ET rather than 4:00 p.m., three and a half hours of regular trading instead of six and a half.
The exact SQL behind every number
SELECT
countDistinctIf(date, status = 'closed') AS full_closures_ahead,
countDistinctIf(date, status = 'early-close') AS early_closes_ahead,
countDistinct(date) AS total_closures_ahead,
concat(monthName(min(date)), ' ', toString(toDayOfMonth(min(date))), ', ', toString(toYear(min(date)))) AS next_closure_pretty,
toString(min(date)) AS calendar_from,
toString(max(date)) AS calendar_through
FROM global_markets.stocks_market_holidays
WHERE date >= today()The loaded calendar holds 10 full-day closures and 2 scheduled early closes, running from the next one through 2027-07-05. The early closes cluster around two holidays: the Friday after Thanksgiving and Christmas Eve, plus July 3 in years when it falls on a weekday ahead of Independence Day. On an early-close day the closing auction still runs, it simply prints at 1:00 p.m. rather than 4:00 p.m., and the after-hours session shifts with it, beginning at 1:00 p.m. instead of 4:00 p.m.; the premarket window is unchanged, since it is anchored to the 9:30 a.m. open, which does not move. A volume or closing-price calculation that assumes a 4:00 p.m. close on one of these days will quietly overstate the day.
How do I check if the market was closed on a past date?
The exchange calendar in this warehouse is forward-looking: it lists only the holidays still ahead and drops each one the moment it passes. That keeps "what's next" accurate, but it means a date that has already happened is no longer in the table. To audit a closure in the past, you count the tape instead. A full six-and-a-half-hour session works out to 390 one-minute bars (6.5 × 60 minutes); a three-and-a-half-hour early close to 210 (3.5 × 60); a full holiday prints none at all. A weekday with zero regular-session bars is, by definition, a day the market was shut.
The exact SQL behind every number
SELECT
toString(cal.day) AS session_date,
formatDateTime(cal.day, '%a') AS weekday,
toUInt32(ifNull(t.bars, 0)) AS regular_session_bars
FROM
(
SELECT today() - 150 + arrayJoin(range(146)) AS day
) AS cal
LEFT JOIN
(
SELECT
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
count() AS bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= today() - 150
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
GROUP BY d
) AS t ON t.d = cal.day
WHERE toDayOfWeek(cal.day) BETWEEN 1 AND 5
AND cal.day <= today() - 5
AND ifNull(t.bars, 0) = 0
ORDER BY cal.dayThis panel walks back over the last several months of the SPY tape and returns every weekday that printed 0 regular-session bars, 4 of them, each a weekday the market sat closed. 2026-04-03 is the earliest still in view. No date is hardcoded anywhere in the query: it derives the closures entirely from what did, and did not, trade, so the same SQL keeps working long after those holidays leave the forward calendar.
How many trading days are in a year?
Take out the weekends and those ten-odd holidays and a calendar year leaves roughly 250 to 253 trading sessions. The exact figure is easiest to settle the same way, by counting the days the tape actually recorded a regular session.
The exact SQL behind every number
SELECT
count() AS trading_days,
toString(min(d)) AS first_session,
toString(max(d)) AS last_session
FROM
(
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= today() - 370
AND window_start < today() - 4
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
GROUP BY d
)Over the trailing year, between 2025-08-13 and 2026-08-13, the market held 252 regular sessions. That is the working number behind "about 252 trading days a year", a count, not an estimate. It moves by a day or two from year to year as holidays land on weekends and drop off the weekday tally.
FAQ
When is the US stock market closed?
The NYSE and Nasdaq close for about ten full-day holidays each year, New Year's Day, Martin Luther King Jr. Day, Presidents Day, Good Friday, Memorial Day, Juneteenth, Independence Day, Labor Day, Thanksgiving, and Christmas, plus a handful of 1:00 p.m. early closes. The calendar at the top of this page lists the next ones with exact dates.
What time does the stock market close early?
On an early-close day, regular trading ends at 1:00 p.m. ET instead of 4:00 p.m. ET, a three-and-a-half-hour session. These half-days fall on the Friday after Thanksgiving, on Christmas Eve when it lands on a weekday, and on July 3 in some years.
What happens when a market holiday falls on a weekend?
Exchanges observe it on the nearest weekday: a Saturday holiday is taken on the Friday before, and a Sunday holiday on the Monday after. A Saturday Fourth of July, for instance, closes the market the Friday before. The one exception is New Year's Day: when January 1 lands on a Saturday, the market is not closed the Friday before (December 31) and there is no makeup day.
How many trading days are in a year?
Roughly 250 to 253, once weekends and holidays are removed. The most reliable way to know a specific year's count is to count the distinct days the market actually held a regular session, as the trailing-year panel above does.
Is the stock market closed on every federal holiday?
No. The stock market stays open on two federal holidays, Columbus Day and Veterans Day, even though the bond market closes on both. It also closes for Good Friday, which is not a federal holiday at all.
Every panel here ships with the exact SQL beneath it, expand any one to see how the number was counted. To check whether a specific date was a trading day, or find when the market closes next, ask the question in plain English on the Strasmore terminal.