What is a stock market correction, and how long does it last?

US100 closed in correction territory on 2 November 2026 and JP225 slipped into a bear market four days later. Since 1995, US500 has fallen 10% or more 17 times; the typical correction took about three months to hit bottom and three more to get back.

On this page
  1. What is a stock market correction?
  2. Where markets stood on 6 November 2026
  3. How often do stock market corrections happen?
  4. How long does a stock market correction last?
  5. What happened after the first close 10% down
  6. Find corrections in any index with Python
  7. Reading a correction in market data
  8. Questions

Key takeaways

  • A correction is a fall of 10% to 20% from a closing high. A fall of 20% or more is a bear market, and a 5% to 10% dip is usually called a pullback.
  • From March 1995 to 6 November 2026, US500 fell 10% or more 17 times: 13 corrections and 4 bear markets, about one every 1.9 years.
  • The median correction took 88 days from high to low and 84 more to regain the high. Bear markets took a median 400 days down and 972 back.
  • On 6 November 2026, US500 was 5.65% below its record, US100 13.56% (a correction since 2 November) and JP225 20.63% (a bear market).
  • The first close 10% down did not say which kind it would be: after it, corrections fell a median 3.2% further and bear markets 33.8%.

A stock market correction is a fall of 10% to 20% from a recent high, measured on closing prices. A fall of 20% or more is a bear market. Corrections are common: US500, the large-cap US index, has had 13 of them since 1995, plus four bear markets. The typical correction took about three months to reach its low and about three more to get back to the old high. Bear markets usually took years.

The question came back last week. On Monday 2 November 2026 the tech-heavy US100 closed 10.36% below its 6 October record, a correction. On Thursday 5 November it fell 6.36%, its worst day since March 2020, and US500 fell 4.36%, its worst since April 2025. On Friday 6 November JP225, Japan’s main index, closed 20.63% below its June record: a bear market.

What is a stock market correction?

A correction is measured from the highest close before the fall, usually a record, to a later close. Traders use closes rather than intraday lows because the close is the price most funds value at and most data sets agree on. The thresholds are round numbers, not laws of nature, but they are the ones the market, the press and most research use:

  • Pullback: 5% to 10%A dip that stops short of 10%. With the swing rule this page uses set at 5%, US500 had 48 from 1995 to 2026, counting the one under way in November: about three every two years.
  • Correction: 10% to 20%The usual name for a real setback. US500 had 13 from 1995 to 2026, with a median fall of 13.3%.
  • Bear market: 20% or moreA deep fall, often tied to a recession or a crisis. US500 had four: 2000 to 2002, 2007 to 2009, 2020 and 2022.

decline = (1 − close ÷ highest close) × 100

close
the latest daily close
highest close
the highest close before it, usually the record
US100 on 6 November 2026: (1 − 26,989.99 ÷ 31,224.47) × 100 = 13.56%, a correction.

The arithmetic is lopsided on the way back. A 13.56% fall needs a 15.69% rise to get back to the high, a 20% fall needs 25% and a 50% fall needs 100%. That is why bear markets take so much longer to repair than they take to happen.

Correction vs bear market

MeasureCorrectionBear market
Fall from the high10% to 20%20% or more
US500 since 1995134
Median fall13.3%41.5%
Median days, high to low88400
Median days back to the high84972
Higher a year after the first close 10% down13 of 131 of 4
US500 daily closes from 24 March 1995 to 6 November 2026, calendar days. Bear markets are measured from the record to the lowest close before the record was regained.

Where markets stood on 6 November 2026

The same week put three big indices at three different stages. Here is each one’s distance from its record close at the end of every week since September:

Percent below the record close, Friday closes

  • US500
  • US100
  • JP225

% below the record

Each Friday close against the highest close up to that day. US500 and US100 set records on 6 October 2026 (7,818.93 and 31,224.47), JP225 on 25 June 2026 (72,366.34).TickerLayer GET /indices/agg/{symbol}/1/day, daily bars to 6 November 2026.
IndexRecordBelowStage
US5006 Oct5.65%Pullback
US305 Aug5.64%Pullback
US1006 Oct13.56%Correction
DE4028 Aug2.82%Near high
UK10027 Feb2.17%Near high
FR4010 Aug6.73%Pullback
EU5011 Aug5.81%Pullback
JP22525 Jun20.63%Bear market
AU2006 Aug2.71%Near high
Close of 6 November 2026 against each index’s record close; every record was set in 2026. HK50 is left out: it has not regained its January 2018 record and stood 12.47% below its 52-week high.

The selling was concentrated in the US tech index and in Japan, where chip and AI stocks carry heavy weights. US100 crossed the 10% line on 2 November, three days before the worst of the fall, and stood 14.71% down at the 5 November close. JP225 had spent much of September in a correction from its June record and came back to 2.32% below it on 6 October, then fell again; its 5.96% drop on 6 November, the worst since April 2025, took it past 20%. European indices, US30 and AU200 stayed within 7% of their records.

How often do stock market corrections happen?

Over 31.6 years of US500 daily closes there were 17 falls of 10% or more, about one every 1.9 years, and a new one crossed the 10% line in 15 of the 32 calendar years from 1995 to 2026. They do not arrive on a schedule: 1998 had two, while almost five years passed between the crossings of January 2003 and November 2007. Every decline in the data:

HighFallDownBack
Oct 199710.8%2039
Jul 199819.3%4584
Sep 199810.0%1513
Jul 199912.1%9132
Mar 200049.1%9291,694
Nov 200214.7%10462
Oct 200756.8%5171,480
Apr 201016.0%70125
Apr 201119.4%157144
May 201512.4%96321
Nov 201513.3%100117
Jan 201810.2%13197
Sep 201819.8%95120
Feb 202033.9%33148
Jan 202225.4%282464
Jul 202310.3%8835
Feb 202518.9%4880
US500, 24 March 1995 to 6 November 2026. Down: calendar days from the high to the lowest close. Back: calendar days from that low to the first close at or above the old high. Bear markets in bold.

To count them, a decline starts at a closing high and counts once the close is 10% below it. It ends at the lowest close before the index rises 10% from that low. A fall of 20% or more from a record is a bear market, and the smaller swings inside it, such as the rallies of 2001 and 2008, are part of it rather than events of their own. Other rules give slightly different lists; this one is in the script below.

Each decline: how deep and how long, US500

  • Corrections
  • Bear markets

Across: Calendar days from the high to the low. Up: Fall from the high, %.

Corrections cluster under 160 days and 20%. The 2020 bear market is the outlier: 33.9% in 33 days, as fast as a correction.TickerLayer daily bars, US500, March 1995 to 6 November 2026.

The tech index corrects far more often. By the same rule US100 had 48 declines of 10% or more over the same years, about one every eight months, and 9 of them went past 20%. US100 stayed below its 2000 record until 2015, so the rule counts its 2007 to 2009 fall as six separate swings rather than one bear market. Three have crossed 10% in 2026 alone, in March, July and now November. Concentrated indices swing harder, which is also why their historical volatility runs higher.

  • 17US500 falls of 10% or more, March 1995 to November 2026
  • 1.9 yearsOne decline per 1.9 years of data, on average
  • 48For US100 over the same years, one every eight months
  • 15 of 32Calendar years in which a new US500 decline crossed 10%

How long does a stock market correction last?

A correction usually runs its course in months. The median US500 correction took 88 calendar days from the high to the lowest close and 84 days from there back to the old high; from high to recovery the median was 166 days, about five and a half months. The quickest fall took 13 days (January to February 2018) and the longest 157 (April to October 2011). Bear markets are a different scale:

Median calendar days, US500 declines since 1995

  • Correction: high to low88
  • Correction: low back to the high84
  • Bear market: high to low400
  • Bear market: low back to the high972
13 corrections and 4 bear markets. The medians for bear markets sit between the fast 2020 decline (33 days down, 148 back) and the 2000s, when the index needed 1,694 and 1,480 days to regain its records.Computed from TickerLayer GET /indices/agg/US500/1/day; corrections.py below reproduces the figures.

The recovery took longer than the fall in 8 of the 13 corrections. The January 2018 correction bottomed in 13 days but took 197 more to regain the high, and the May 2015 correction took 321. These are price-index figures: dividends are left out, so an investor who reinvested them got back to even somewhat sooner.

What happened after the first close 10% down

The day an index first closes 10% below its high is the day headlines call it a correction. At that point nobody knows whether it will stop at 11% or run to 50%. Measured from that first close, here is what followed in the 17 US500 declines:

BecameFell moreYear on
13 corrections3.2%+21.3%
4 bear markets33.8%-9.5%
All 175.2%+20.1%
Medians from the first close 10% below the high. Fell more: from that close to the lowest close of the decline. Year on: change over the next 252 sessions. After corrections the index was higher a year on 13 times out of 13; after bear markets once out of 4 (2020).

Four of the 13 corrections bottomed on the very day they crossed 10% (October 1997, October 1998, February 2018 and October 2023). The other side of the record is the 2000 and 2007 bear markets, where the index was still 12.1% and 39.5% lower a year after its first 10% close. Three months on, the picture was already mixed: the median gain after a first 10% close was 8.5%, but two of the 17 cases were lower.

Correction calculator

Correction calculator

Below the high
5.65%
Stage
Pullback (5% to 10%)
Close that makes it a correction (-10%)
7,037.04
Close that makes it a bear market (-20%)
6,255.14
Rise needed to get back to the high
5.99%

Uses closing prices. A correction is a close 10% to 20% below the highest close before it; 20% or more is a bear market. Prices are editable examples from 6 November 2026.

Pick an example or type a high and a close: the fall, its stage, the closes that would make it a correction or a bear market, and the rise needed to get back.

Find corrections in any index with Python

corrections.py pulls US500 daily bars from 1995 in three requests (a daily request can span at most 5,000 days), applies the rule above and prints every decline with its depth and duration. Change SYMBOL to US100 or DE40 to run it on another index; for JP225 set START to date(1990, 1, 1), since its 1990 high stood until 2024. It needs Python 3.9 or newer, the standard library and a TICKERLAYER_API_KEY environment variable.

corrections.pyPython
"""Every 10% decline in an index since 1995: corrections, bear markets, depth and duration. Python 3.9+, standard library."""
import json
import os
import statistics
import sys
import urllib.request
from datetime import date, datetime, timedelta, timezone

API = "https://api.tickerlayer.com"
KEY = os.environ.get("TICKERLAYER_API_KEY") or sys.exit("Set TICKERLAYER_API_KEY first.")
SYMBOL, START, END = "US500", date(1995, 1, 1), date(2026, 11, 6)


def daily_closes():
    """Daily closes, oldest first, in windows of 4,900 days (a request may span at most 5,000)."""
    out, start = [], START
    while start <= END:
        stop = min(END, start + timedelta(days=4899))
        url = f"{API}/indices/agg/{SYMBOL}/1/day/{start}/{stop}?sort=asc&limit=5000"
        req = urllib.request.Request(url, headers={"x-api-key": KEY})
        with urllib.request.urlopen(req, timeout=30) as resp:
            out += [(datetime.fromtimestamp(b["t"] / 1000, timezone.utc).date(), b["c"]) for b in json.load(resp)["results"]]
        start = stop + timedelta(days=1)
    return out


def swings(closes, size=0.10):
    """(peak, trough) index pairs: a fall of `size` from a high, ended by a rise of `size` from the low."""
    found, high, low, falling = [], 0, 0, False
    for i, (_, c) in enumerate(closes):
        if not falling:
            if c > closes[high][1]:
                high = i
            elif c <= closes[high][1] * (1 - size):
                falling, low = True, i
        elif c < closes[low][1]:
            low = i
        elif c >= closes[low][1] * (1 + size):
            found.append((high, low))
            falling, high = False, i
    return found + ([(high, low)] if falling else [])


def bear_markets(closes):
    """Falls of 20% from a record close, to the lowest close before the record is regained."""
    found, peak, i = [], 0, 0
    while i < len(closes):
        if closes[i][1] >= closes[peak][1]:
            peak = i
        elif closes[i][1] <= closes[peak][1] * 0.8:
            low = j = i
            while j < len(closes) and closes[j][1] < closes[peak][1]:
                low = j if closes[j][1] < closes[low][1] else low
                j += 1
            found.append((peak, low))
            peak, i = j, j
        i += 1
    return found


closes = daily_closes()
bears = bear_markets(closes)
# A swing inside a bear market is part of it, not a correction of its own.
events = bears + [s for s in swings(closes) if not any(p <= s[0] and s[1] <= t for p, t in bears)]
print(f"{SYMBOL} daily closes {closes[0][0]} to {closes[-1][0]}: {len(closes)} sessions")
print(f"{'peak':<11} {'trough':<11} {'fall':>6} {'days down':>9} {'back to peak':>13}")
rows = []
for peak, trough in sorted(events):
    back = next((j for j in range(trough, len(closes)) if closes[j][1] >= closes[peak][1]), None)
    fall = (1 - closes[trough][1] / closes[peak][1]) * 100
    down = (closes[trough][0] - closes[peak][0]).days
    up = (closes[back][0] - closes[trough][0]).days if back is not None else None
    rows.append((fall, down, up))
    print(f"{closes[peak][0]!s:<11} {closes[trough][0]!s:<11} {fall:>5.1f}% {down:>9} {f'{up} days' if up is not None else 'not yet':>13}")
for name, group in (("corrections (10-20%)", [r for r in rows if r[0] < 20]), ("bear markets (20%+)", [r for r in rows if r[0] >= 20])):
    print(f"{name}: {len(group)}, median fall {statistics.median(r[0] for r in group):.1f}%, "
          f"median {statistics.median(r[1] for r in group):.0f} days down, "
          f"median {statistics.median(r[2] for r in group if r[2] is not None):.0f} days back to the peak")
high = max(range(len(closes)), key=lambda i: closes[i][1])
print(f"{closes[-1][0]}: {closes[-1][1]:,.2f}, {(1 - closes[-1][1] / closes[high][1]) * 100:.2f}% below the {closes[high][0]} record of {closes[high][1]:,.2f}")
python corrections.py
US500 daily closes 1995-03-24 to 2026-11-06: 7959 sessions
peak        trough        fall days down  back to peak
1997-10-07  1997-10-27   10.8%        20       39 days
1998-07-17  1998-08-31   19.3%        45       84 days
1998-09-23  1998-10-08   10.0%        15       13 days
1999-07-16  1999-10-15   12.1%        91       32 days
2000-03-24  2002-10-09   49.1%       929     1694 days
2002-11-27  2003-03-11   14.7%       104       62 days
2007-10-09  2009-03-09   56.8%       517     1480 days
2010-04-23  2010-07-02   16.0%        70      125 days
2011-04-29  2011-10-03   19.4%       157      144 days
2015-05-21  2015-08-25   12.4%        96      321 days
2015-11-03  2016-02-11   13.3%       100      117 days
2018-01-26  2018-02-08   10.2%        13      197 days
2018-09-20  2018-12-24   19.8%        95      120 days
2020-02-19  2020-03-23   33.9%        33      148 days
2022-01-03  2022-10-12   25.4%       282      464 days
2023-07-31  2023-10-27   10.3%        88       35 days
2025-02-19  2025-04-08   18.9%        48       80 days
corrections (10-20%): 13, median fall 13.3%, median 88 days down, median 84 days back to the peak
bear markets (20%+): 4, median fall 41.5%, median 400 days down, median 972 days back to the peak
2026-11-06: 7,376.86, 5.65% below the 2026-10-06 record of 7,818.93

An open decline prints not yet in the last column. Run on US100 with the same dates, the last line of the table is the November 2026 correction, 14.7% deep at its 5 November low and not yet recovered.

Reading a correction in market data

  • Use closes, and say so. An intraday low can cross 10% while the close does not; most published counts use closes, and so does this page.
  • Record or 52-week high. HK50 is 26% below its 2018 record but 12% below its 52-week high; state which high you measure from.
  • Price index or total return. Index levels leave out dividends, so a total-return series recovers sooner than the table above.
  • Index, fund or future. An index ETF tracks the index but trades its own hours; a futures series rolls between contracts. Measure a correction on the series you hold.
  • Time zones. JP225 closes before the US session opens, so its 6 November close reflected the US fall of 5 November. Align days before comparing markets.
  • Bad prints. One bad tick can fake a 10% drop or a new record; check outliers before you count them (see bad ticks).

Questions

What is a stock market correction?

A fall of 10% to 20% in a stock index or a stock from its recent closing high. A fall of 20% or more is called a bear market, and a 5% to 10% dip a pullback.

How long do stock market corrections last?

For US500 from 1995 to 2026, the median correction took 88 calendar days from the high to the low and 84 days to get back to the high, about five and a half months in all. Bear markets took a median 400 days down and 972 back.

How often do stock market corrections happen?

US500 fell 10% or more 17 times from March 1995 to November 2026, about once every 1.9 years. US100, the tech-heavy index, did so 48 times over the same years, about once every eight months.

What is the difference between a correction and a bear market?

Depth: a correction is a 10% to 20% fall from the high, a bear market 20% or more. The difference in time is larger: US500 corrections took a median 166 days from high to recovery, bear markets more than three years.

Is the stock market in a correction now?

At the close of 6 November 2026, US100 was 13.56% below its 6 October record, a correction since 2 November, and JP225 20.63% below its June record, a bear market. US500 was 5.65% below its record, a pullback.

Does a correction always turn into a bear market?

No. Of the 17 US500 falls of 10% or more since 1995, 13 stopped short of 20%. After the first close 10% down, the corrections fell a median 3.2% further and the bear markets 33.8%.

Ready to integrate?

Create an account, explore the docs, and connect via REST or WebSocket in minutes.