Strasmore Research
Learn Matt ConnorBy Matt Connor

Is There a Minimum Holding Period for Stocks?

There is no minimum holding period for stocks. You can sell seconds after buying. Four clocks, settlement, day trades, dividends and wash sales, set the cost.

There is no minimum holding period for stocks. You can buy a share at 10:00:01 and sell it at 10:00:02, and no exchange rule or securities law stands in the way. What confuses people is that four separate clocks start running the moment the buy prints, and each one attaches a cost or a label to a fast exit without ever blocking it.

Those four clocks are settlement, the day trade counter, the 61 day qualified dividend window and the 30 day wash sale window. Not one of them is a lock-up.

The short answer: no minimum holding period for stocks

A lock-up is a contract. IPO insiders sign one, commonly for 90 to 180 days after listing, and it binds those named holders of restricted shares. Shares bought on an exchange carry no such term. The buyer on the other side of your sale has no way to know how long you held, and the matching engine never asks.

The tape makes the point better than any rule book. Below are six household names over September 2026, with the average number of separate trades printed in each regular session and the average share volume behind them.

QueryTrades and share volume per session, six household names, September 2026
tickeravg_trades_per_session_thousandsavg_shares_traded_millions
NVDA2586.6112.7
AAPL811.142.8
MSFT449.521.3
KO248.115.5
XOM166.114.1
PG121.68
The exact SQL behind every number
SELECT
    ticker,
    round(avg(transactions) / 1000, 1)     AS avg_trades_per_session_thousands,
    round(avg(toFloat64(volume)) / 1e6, 1) AS avg_shares_traded_millions
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('NVDA', 'AAPL', 'MSFT', 'XOM', 'KO', 'PG')
  AND date >= '2026-09-01'
  AND date <= '2026-09-30'
GROUP BY ticker
ORDER BY avg_trades_per_session_thousands DESC
Run this yourself

NVDA averaged 2586.6 thousand separate trades per session during September 2026, on 112.7 million shares a day. At the quiet end of the same list, PG still printed 121.6 thousand trades a session. Every print is one holder passing shares to another, and the holding periods behind them run from years down to milliseconds.

The four clocks, and what each one actually does

Read each clock as a trigger and a consequence. The consequence is never "the sale is blocked".

Clock 1: settlement, one business day

Trigger: selling shares before the cash that bought them has settled.

Consequence: nothing at all in a margin account, where the broker fronts the money for the day. In a cash account, selling a position that was bought with unsettled funds can produce a good faith violation. Three of those in a rolling 12 month period and most brokers restrict the account to settled cash for 90 days.

Clock 2: the day trade counter, one session

Trigger: buying and selling the same security inside the same trading session.

Consequence: the round trip is logged as a day trade. In a margin account, four or more day trades in five business days, when they make up more than 6% of total trades over that span, flags the account as a pattern day trader, which carries a $25,000 minimum equity requirement.

Clock 3: the qualified dividend window, 61 days

Trigger: holding for 60 days or fewer inside the 121 day period that begins 60 days before the ex-dividend date.

Consequence: the dividend is taxed at ordinary income rates instead of the lower qualified rate. The sale itself is untouched, and so is the right to the payment. Preferred stock uses a longer test: 91 days inside a 181 day window.

Clock 4: the wash sale window, 30 days

Trigger: selling at a loss, then buying the same or a substantially identical security within 30 days before or after that sale.

Consequence: the loss is disallowed for the current tax year and added to the cost basis of the replacement shares. The deduction is deferred, not erased.

How settlement limits a fast sale in a cash account

US equities settle T+1: cash and shares change hands one business day after the trade. The standard was T+2 until May 28, 2024. A fingerprint of that switch sits in dividend calendars, where anyone can check it. Under T+2 the ex-dividend date fell one business day ahead of the record date. Under T+1 the two land on the same day.

QueryDays between ex-dividend date and record date, ten household payers
quarter_datequarter_labelavg_days_ex_to_recorddividends_count
2022-01-01Q1 20221.510
2022-04-01Q2 20221.310
2022-07-01Q3 20221.210
2022-10-01Q4 20221.210
2023-01-01Q1 20231.510
2023-04-01Q2 20231.210
2023-07-01Q3 20231.410
2023-10-01Q4 20231.210
2024-01-01Q1 20241.810
2024-04-01Q2 20241.310
2024-07-01Q3 2024010
2024-10-01Q4 20240.310
2025-01-01Q1 2025010
2025-04-01Q2 2025010
2025-07-01Q3 2025010
2025-10-01Q4 2025010
2026-01-01Q1 2026010
2026-04-01Q2 2026010
2026-07-01Q3 2026010
The exact SQL behind every number
WITH deduped AS
(
    SELECT
        id,
        any(ex_dividend_date) AS ex_date,
        any(record_date)      AS record_date
    FROM global_markets.stocks_dividends
    WHERE ticker IN ('AAPL', 'MSFT', 'KO', 'JNJ', 'PG', 'XOM', 'CVX', 'JPM', 'ABBV', 'CSCO')
      AND ex_dividend_date >= '2022-01-01'
      AND ex_dividend_date <  '2026-10-01'
    GROUP BY id
)
SELECT
    toString(toStartOfQuarter(ex_date))                                       AS quarter_date,
    concat('Q', toString(toQuarter(ex_date)), ' ', toString(toYear(ex_date))) AS quarter_label,
    round(avg(dateDiff('day', ex_date, record_date)), 2)                      AS avg_days_ex_to_record,
    count()                                                                   AS dividends_count
FROM deduped
WHERE record_date >= ex_date
  AND dateDiff('day', ex_date, record_date) <= 10
GROUP BY quarter_date, quarter_label
ORDER BY quarter_date
Run this yourself

Across those ten payers, the span between the ex-dividend date and the record date averaged 1.5 calendar days in Q1 2022 and 0 calendar days in Q3 2026. The step down in the line arrives alongside the T+1 changeover, and the calendar has stayed there since.

In a margin account that one day cycle is invisible to you, since the broker settles with the clearing house on your behalf. In a cash account it is the binding constraint on a quick exit: proceeds from a sale are not spendable until T+1, and buying with unsettled proceeds and then selling that new position before the first sale settles is what produces a good faith violation. The full cycle is laid out in how T+1 settlement works, and the date pairing in the panel above is unpacked in record date vs ex-dividend date.

Does selling quickly make you a pattern day trader?

Only in a margin account, and only on the fourth round trip. A single same-session buy and sell is one day trade, which no rule prohibits. The designation attaches to the account rather than to any trade, and once applied it stays until the broker removes it. An account flagged below $25,000 in equity is typically restricted to closing transactions until the balance is restored. Cash accounts sit outside this framework entirely, which is why unsettled-funds mistakes are the common trap there instead. The counting mechanics, including what a broker treats as one round trip, are in the pattern day trader rule.

The 61 day window that changes the tax rate on a dividend

This clock is the one most often mistaken for a required holding period. To receive a dividend you need only own the shares at the ex-dividend date. To have that dividend taxed at the qualified rate instead of as ordinary income, you need more than 60 days of holding inside the 121 day window that opens 60 days before the ex-date. Sell on day 10 and the dividend is still yours. It is simply taxed at a higher rate.

The cadence of the payments themselves shows how much room that leaves.

QueryAverage days between ex-dividend dates, 2021 to date
tickerpaymentslatest_ex_dateavg_days_between_ex_dates
ABBV23Jul 15, 202691.3
JPM23Jul 6, 202691.3
CSCO23Jul 6, 202691.3
PG23Jul 24, 202691.4
CVX23Aug 19, 202691.4
JNJ23Aug 25, 202691.4
MSFT23Aug 20, 202691.4
KO23Sep 15, 202691.5
AAPL23Aug 10, 202691.5
XOM23Aug 17, 202691.6
The exact SQL behind every number
WITH deduped AS
(
    SELECT
        id,
        any(ticker)           AS sym,
        any(ex_dividend_date) AS ex_date
    FROM global_markets.stocks_dividends
    WHERE ticker IN ('AAPL', 'MSFT', 'KO', 'JNJ', 'PG', 'XOM', 'CVX', 'JPM', 'ABBV', 'CSCO')
      AND ex_dividend_date >= '2021-01-01'
      AND ex_dividend_date <  '2026-10-01'
    GROUP BY id
)
SELECT
    sym                                                                   AS ticker,
    count()                                                               AS payments,
    formatDateTime(max(ex_date), '%b %e, %Y')                             AS latest_ex_date,
    round(dateDiff('day', min(ex_date), max(ex_date)) / (count() - 1), 1) AS avg_days_between_ex_dates
FROM deduped
GROUP BY sym
HAVING count() >= 8
ORDER BY avg_days_between_ex_dates
Run this yourself

Every name here pays on a quarterly rhythm, averaging between 91.3 and 91.6 days from one ex-date to the next. ABBV alone has gone ex 23 times over the window, most recently on Jul 15, 2026. A 61 day holding requirement sits comfortably inside a single cycle of roughly 91 days, so a buyer who holds through one quarter clears it for that payment. A buyer who arrives two days before the ex-date and leaves two days after does not. Both of them get paid. The details of the count, including days when the position is hedged, are in the qualified dividend holding period, and the mechanics of exiting around the date are in selling on the ex-dividend date.

The 30 day wash sale window

The wash sale rule reaches in both directions: 30 days before the loss sale and 30 days after it, a 61 day span with the sale in the middle. Buying back inside that span disallows the loss for the year and rolls it into the basis of the new shares. The trace below pins a real 61 day window on SPY, the S&P 500 ETF, around a hypothetical loss sale in the middle of February 2025.

QuerySPY daily closes across a pinned 61 day wash sale window, Jan to Mar 2025
41 rows (showing 20)
datesession_labelclosechange_pct
2025-01-15Jan 15, 2025592.78-2.78
2025-01-16Jan 16, 2025591.64-2.96
2025-01-17Jan 17, 2025597.58-1.99
2025-01-21Jan 21, 2025603.05-1.09
2025-01-22Jan 22, 2025606.44-0.53
2025-01-23Jan 23, 2025609.750.01
2025-01-24Jan 24, 2025607.97-0.28
2025-01-27Jan 27, 2025599.37-1.69
2025-01-28Jan 28, 2025604.52-0.85
2025-01-29Jan 29, 2025601.81-1.29
2025-01-30Jan 30, 2025605.04-0.76
2025-01-31Jan 31, 2025601.82-1.29
2025-02-03Feb 3, 2025597.77-1.96
2025-02-04Feb 4, 2025601.78-1.3
2025-02-05Feb 5, 2025604.22-0.9
2025-02-06Feb 6, 2025606.32-0.55
2025-02-07Feb 7, 2025600.77-1.46
2025-02-10Feb 10, 2025604.85-0.8
2025-02-11Feb 11, 2025605.31-0.72
2025-02-12Feb 12, 2025603.36-1.04
The exact SQL behind every number
WITH
(
    SELECT toFloat64(any(close))
    FROM global_markets.stocks_daily_aggs
    WHERE ticker = 'SPY'
      AND date = '2025-02-14'
) AS sale_day_close
SELECT
    toString(date)                                          AS date,
    formatDateTime(toDate(date), '%b %e, %Y')               AS session_label,
    round(toFloat64(close), 2)                              AS close,
    round(100 * (toFloat64(close) / sale_day_close - 1), 2) AS change_pct
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'SPY'
  AND date >= '2025-01-15'
  AND date <= '2025-03-16'
ORDER BY date
Run this yourself

The window runs from Jan 15, 2025 through Mar 14, 2025 and holds 41 trading sessions, opening at a close of $592.78 and ending at $562.81, a move of -7.69% from the hypothetical sale day price. Any repurchase of SPY on any of those sessions would fall inside the window. The sale is permitted on every one of them, and the loss would simply attach to the new lot instead of the current tax year. Options complicate the test, since a call on a security can count as substantially identical: that case is covered in the wash sale rule and options.

Why the one year rule still comes up in Germany

German readers often arrive at this question carrying the Spekulationsfrist, the speculation period in private tax law. Gains on shares sold inside one year of purchase were taxable as private sale income, and gains on shares held past the year fell outside the tax. The Abgeltungsteuer, a flat withholding tax that took effect on 1 January 2009, replaced that treatment for shares: gains on shares acquired from that date are taxed at the flat rate plus the solidarity surcharge and any church tax, whatever the holding period. Shares bought before 2009 kept the older treatment. The one year language outlived the rule for stocks, and the question is still typed into search engines in German every month. US investors carry a cousin of it: one year and a day separates short-term from long-term capital gains rates, and that line changes the rate on a gain, never the right to sell. Tax treatment varies by country and by account, so these are descriptions of the frameworks rather than guidance for any particular situation.

FAQ

How long do I have to hold a stock before I can sell it?

There is no minimum. A share bought and sold within the same second is a valid trade. Holding time affects tax treatment and account labels, never the right to sell.

Is buying and selling a stock on the same day allowed?

Yes. The round trip counts as one day trade. In a margin account, four or more in five business days, above 6% of total trades, flags the account as a pattern day trader with a $25,000 minimum equity requirement. Cash accounts are not flagged, and run into settlement limits instead.

Do I need to hold a stock for 61 days to get the dividend?

No. Owning the shares as of the ex-dividend date is what entitles a holder to the payment. The 61 day test inside a 121 day window decides whether that dividend is taxed at the qualified rate or at ordinary income rates.

What is the 30 day rule for selling stocks at a loss?

The wash sale rule. A loss is disallowed for the year when the same or a substantially identical security is repurchased within 30 days before or after the sale, and the disallowed amount is added to the cost basis of the replacement shares.

Is there a one year holding period for stocks?

Not as a restriction. In the US, one year and a day marks the boundary between short-term and long-term capital gains rates. In Germany, the one year speculation period stopped applying to shares acquired from 2009 onward.


Every panel on this page carries the SQL that produced it, so the counting is visible end to end. To pull an ex-dividend calendar or a session trade count for a name you follow, ask the question in plain English on the Strasmore terminal.

#settlement#holding period#cash accounts#wash sale#dividends