STRASMORE/EXPLORE 3,256 QUERIES

Every Apple split on record through 2020, with its cumulative factor

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-10-09, from Split-Adjusting Your Dividend History.

as of series 3×4read in context →
Every Apple split on record through 2020, with its cumulative factor — 3 rows by 4 columns, computed from US exchange, SIP and OPRA data.
split_datesplit_date_labelsplit_ratiocumulative_factor
2005-02-28Feb 28, 20052-for-156
2014-06-09Jun 9, 20147-for-128
2020-08-31Aug 31, 20204-for-14
Rows × columns
3 × 4
Period covered
to
Computed
Completeness
No missing values
Source
US exchange, SIP and OPRA market data
Licence
Strasmore terms · free, no signup
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for Every Apple split on record through 2020, with its cumulative factor, derived from the stored result.
ColumnTypeRangeNotes
split_date date 2005-02-28 to 2020-08-31
split_date_label text 3 distinct values (Aug 31, 2020, Feb 28, 2005, Jun 9, 2014)
split_ratio text 3 distinct values (2-for-1, 4-for-1, 7-for-1)
cumulative_factor number 4 to 56

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.

Run it yourself

This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.

WITH apple_splits AS
(
    SELECT
        execution_date,
        any(toFloat64(split_to) / toFloat64(split_from)) AS multiplier,
        any(toUInt32(split_to))                          AS shares_to,
        any(toUInt32(split_from))                        AS shares_from
    FROM global_markets.stocks_splits
    WHERE ticker = 'AAPL'
      AND execution_date < '2021-01-01'
    GROUP BY execution_date
)
SELECT
    toString(s.execution_date)                    AS split_date,
    formatDateTime(s.execution_date, '%b %e, %Y') AS split_date_label,
    concat(toString(any(s.shares_to)), '-for-', toString(any(s.shares_from))) AS split_ratio,
    round(exp(sum(log(f.multiplier))), 2)         AS cumulative_factor
FROM apple_splits AS s
CROSS JOIN apple_splits AS f
WHERE f.execution_date >= s.execution_date
GROUP BY s.execution_date
ORDER BY s.execution_date
⌘/Ctrl + Enter

Work with this data in your AI assistant

Opens ready to query, with this page's data. Free, no account.

More from this analysisSplit-Adjusting Your Dividend History
Apple trailing dividend yield, as-paid sum against split-aware sum series 15×3 → Apple daily closes around the 2020 split, each against the prior session series 15×3 → Apple dividends as paid, and restated onto today's share count series 6×5 → Dividend records restated by splits, six widely held payers ranking 6×4 → Dividend adjustment factors on every KO ex-date since 2019 series 31×4 → Dollar volume and daily range across a large forward split (NVDA, 2024) series 19×4 → See all 3,256 queries →