HistoricalData

Historical US stock data — daily and 1-minute bars

Coverage: US stocks and ETFs, including active and delisted securities, with archive history dating to October 2003.

Data: OHLCV, raw and adjusted prices, and dividend and split events.

Files: Plain CSV organized by security, with daily and 1-minute bars. Minute data includes pre-market and after-hours trading.

15,717 currently listed and 23,259 delisted securities · As of 2026-09-11

Stock dataTSLA · Daily coverage 2010-06-29 – 2026-09-11 · Daily bars 457 KB, 1-minute bars 264 MB

CSV File Format & Free Sample Download

Daily bars

TSLA · 24–26 August 2022

17 columns, one row per trading day. Scroll horizontally to view all fields.

TSLA daily CSV format: all 17 columns
dateopenhighlowclosevolumevwaptransactionsadj_openadj_highadj_lowadj_closeadj_volumeadj_vwapdividenddividend_typesplit
2022-08-24892.69910.94889.5891.2919084719900.3447594430297.5633303.6467296.5297.096757254157300.1149
2022-08-25302.36302.96291.6296.0753207507295.53721041468302.36302.96291.6296.0753207507295.53721:3
2022-08-26297.43302287.47288.0957111194292.6261984036297.43302287.47288.0957111194292.6261

1-minute bars

TSLA · 24–25 August 2022

18 columns, one row per recorded minute. Scroll horizontally to view all fields.

TSLA minute CSV format: all 18 columns
timestampopenhighlowclosevolumevwaptransactionsadj_openadj_highadj_lowadj_closeadj_volumeadj_vwapdividenddividend_typesplitsession
2022-08-24 19:59:00892.25892.6892.01892.6216187297.4167297.5333297.3367297.53336483post
2022-08-25 04:00:00307.95307.95301.97303.617863453307.95307.95301.97303.6178631:3pre
2022-08-25 04:01:00303.4303.49302.36302.515236582303.4303.49302.36302.515236pre
Download sample (8 MB)

The sample includes daily and 1-minute data for TSLA, KO, SPY and TWTR from July–December 2022, in the same CSV formats as the paid archives.

Datasets & Subscriptions

DatasetPricePurchase
Daily archive 2003-10-01 through 2026-09-11 · Includes 2 months of daily updates $399 · one-time Buy
1-minute archive Includes the daily archive · Includes 2 months of daily and minute updates Coverage varies by security · Full minute archive end date: Not yet verified $699 · one-time Buy
Daily updates New trading days · Starts with the latest three weeks · Published by 08:00 UTC the next morning $39 / month Subscribe
1-minute updates Minute bars only · New trading days plus the latest three weeks $69 / month Subscribe

Payments powered by Stripe Visa Mastercard Apple Pay Google Pay

Instant delivery Your download link appears on the confirmation page and is emailed to you after payment.

Included updates Run for 2 months (62 days) from purchase and do not renew automatically. Downloaded files stay yours. Continued updates require a separate subscription; subscriptions provide recent and new trading days, with historical archives sold separately.

Refunds Request an archive refund within 21 days of purchase. If no data has been downloaded, the refund is 100%; otherwise, it depends on the number of data files downloaded. Refund policy.

Historical coverage

The daily archive begins in October 2003 and includes the 2008–2009 financial crisis, the COVID crash and the 2022 bear market. Available dates vary by security and frequency.

Financial crisis · 2008–2009 COVID crash · 2020 Bear market · 2022 free sample 2003 2010 2015 2020 2026
What can I study across these market periods?

Financial crisis · 2008–2009

Follow daily prices through the decline and recovery, comparing drawdowns, trading volume and the time taken to regain earlier price levels. Include delisted securities when examining how a universe based on today's listings can change a backtest.

Check each security's dates and listing history before joining files. A reused ticker can identify different companies or separate listing periods, so matching the symbol alone does not establish a continuous investment history.

COVID crash · 2020

Study the rapid selloff and rebound using the same entry, exit and rebalancing rules across securities. Daily open and close prices can help separate overnight moves from regular-session moves.

Where minute records are available, explore how price changes and trading activity differ across pre-market, regular and after-hours sessions. Check minute coverage for the selected security and dates before relying on an intraday sequence.

Bear market · 2022

Compare the duration of drawdowns, recoveries and changes in trading activity with the 2008–2009 and 2020 periods. Keeping portfolio and rebalancing rules consistent makes it easier to understand how results vary across market conditions.

The free sample contains TSLA, KO, SPY and TWTR records from July–December 2022, with TWTR ending in October. Use its daily and minute files to check date handling, corporate-action fields and session filters before extending the analysis to other securities or periods.

Does every security have the same date coverage?

Available dates vary by security and frequency. A daily record does not guarantee that minute records exist for the same date. The stock lookup reports daily-file start and end dates; those boundaries do not establish that every trading day within the range is present.

Check the selected security, dates and frequency for your research. See the coverage notes and measurements for detailed checks.

Understanding stock data

Explore how prices, corporate actions and listing histories appear in the files.

How do stock splits affect prices and returns?

A stock split changes the price per share. Adjusted prices let you compare returns across the split, as these TSLA records illustrate.

TSLA stock split — selected columns
datecloseadj_closesplit
2022-08-24891.29297.0967
2022-08-25296.07296.071:3

TSLA sample: day_by_symbol/TSLA_day.csv

Across the 3-for-1 split, raw closing prices fall 66.8%, while adjusted closing prices show a return of approximately −0.35%. The split value 1:3 records the change from one share to three.

Read split alongside close and adj_close when comparing trading days. The adjustment methodology explains how the fields are calculated.

How do regular and special dividends appear in the data?

The dividend field records the cash amount per share, while dividend_type identifies the kind of distribution. This MSFT example combines a regular dividend with a special payment.

MSFT cash distributions — selected columns
datecloseadj_closedividenddividend_type
2004-11-1229.9718.407
2004-11-1527.3918.74923.08SC+CD

Archive file: day_by_symbol/MSFT_day.csv

The $3.08 amount combines a $3.00 special dividend and a $0.08 regular dividend, recorded together as SC+CD. Microsoft documents these payments in its dividend history.

Across these two dates, raw closing prices fall approximately 8.6%, while adjusted closing prices rise approximately 1.9%. Compare the cash amount and distribution classification when separating recurring income from one-time payments.

Can the same ticker identify different companies?

A reused ticker can refer to separate businesses and listing histories. In this archive, TWTR identifies both the home-entertainment retailer Tweeter and, later, Twitter.

TWTR separate listing histories — selected columns
listingdateclose
Tweeter2007-06-200.132
Twitter2013-11-0744.9

Tweeter: TWTR_day_delisted_2007-06-21.csv
Twitter: TWTR_day_delisted_2022-10-31.csv
Both files are in day_by_symbol/. The listing labels above identify the source files; they are not an additional CSV column.

Joining these records as one company's price series creates an artificial jump of roughly 34,000%. Confirm the company, date range and listing period before combining files. See listing histories and survivorship bias for more detail.

How does VWAP differ from the closing price?

The close is the regular-session closing price. VWAP is a volume-weighted average across the full trading day, including extended hours. They describe different aspects of the day's trading.

SPY closing price and VWAP — selected columns
dateclosevwap
2008-10-2893.7687.9844

Archive file: day_by_symbol/SPY_day.csv

On this day, full-day VWAP was approximately 6.2% below the close. OHLC values alone do not contain the individual trade prices and volumes needed to reconstruct VWAP.

Full-day VWAP becomes available after the day ends. Using that completed value for an earlier decision introduces look-ahead bias, and a VWAP benchmark does not establish the price at which a simulated order would have filled.

File Format & Columns

Per-security CSV files have 17 daily columns or 18 minute columns, in a fixed order. Each file includes a header row, with records ordered by date or timestamp. Empty fields are not zeros.

Daily bars

17 columns in CSV order
#ColumnTypeDescription
1dateDateObservation or recorded event date in US Eastern time, YYYY-MM-DD. Declared event-only rows can fall on non-trading dates; see event-row conventions.
2openNumberRegular-session opening price, as traded.
3highNumberHighest price during the regular session.
4lowNumberLowest price during the regular session.
5closeNumberRegular-session closing price, as traded.
6volumeNumberShares traded across the full day, including extended hours. May contain fractional shares.
7vwapNumberVolume-weighted average price across the full trading day, including extended hours.
8transactionsIntegerNumber of trades.
9adj_openNumberOpening price adjusted for splits and cash distributions.
10adj_highNumberHigh price adjusted for splits and cash distributions.
11adj_lowNumberLow price adjusted for splits and cash distributions.
12adj_closeNumberClosing price adjusted for splits and cash distributions.
13adj_volumeNumberVolume divided by the row's cumulative price adjustment factor, including cash distributions as well as splits. May be fractional.
14adj_vwapNumberVWAP adjusted for splits and cash distributions.
15dividendNumberCash distribution per share on the recorded ex-dividend date. Blank when this row records no cash distribution.
16dividend_typeTextSource classification: CD = regular; SC = special; + joins multiple types. Historical labels can be incomplete; CD alone does not rule out a special distribution. A +CUR:XXX suffix identifies a non-USD distribution. See classification notes.
17splitTextRecorded split ratio as from:to: 1:3 means a 3-for-1 split. Blank when this row records no split.

1-minute bars

18 columns · Differences from daily files

Minute files follow the daily column order, with the differences below.

ColumnTypeDescription
timestampDate-timeReplaces date in column 1. Start of the recorded minute, formatted YYYY-MM-DD HH:MM:SS in US Eastern time, following EST and EDT.
sessionTextColumn 18: pre = pre-market; reg = regular session; post = post-market. Labels follow that date's exchange calendar, including early closes.
open, high, low, closeNumberPrices within that minute, rather than the daily session. The corresponding adj_* columns hold adjusted minute prices.
volume, transactionsNumber / IntegerShares traded and trade count for that minute. Minute volume totals can differ from daily volume.
vwap, adj_vwapEmptyBoth columns remain in the file but are blank in minute data.
dividend, dividend_type, splitNumber / TextEvent values appear on the first recorded bar of the effective date. Later bars leave these event fields empty. A date without minute bars has no row in which to record the event.

Numeric columns can contain empty fields. Adjusted values can be blank where the adjustment factor cannot be determined; consult the accompanying data notes and adjustment conventions for the applicable cases.

How do files organized by trading day differ?

Files in day_by_date/ and minute_by_date/ group records for multiple securities by date. They insert symbol as column 2, giving 18 daily columns or 19 minute columns. The remaining fields keep their relative order.

The 17-column daily and 18-column minute definitions above apply to files in day_by_symbol/ and minute_by_symbol/. Keep the symbol's original case when parsing or joining records. Date-organized update files cover a recent window; they do not establish full historical coverage.