STRASMORE/EXPLORE 2,433 QUERIES

Every SPY distribution over the last three years, against the share price

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-09-20, from SPY Dividend Yield: Why It Trails the Index.

as of series 12×5read in context →
Every SPY distribution over the last three years, against the share price — 12 rows by 5 columns, computed from US exchange, SIP and OPRA data.
ex_dateex_date_labelpay_date_labelcash_amountpct_of_price
2023-12-15Dec 15, 2023Jan 31, 20241.90610.406
2024-03-15Mar 15, 2024Apr 30, 20241.59490.313
2024-06-21Jun 21, 2024Jul 31, 20241.7590.323
2024-09-20Sep 20, 2024Oct 31, 20241.74550.307
2024-12-20Dec 20, 2024Jan 31, 20251.96550.333
2025-03-21Mar 21, 2025Apr 30, 20251.69550.301
2025-06-20Jun 20, 2025Jul 31, 20251.76110.296
2025-09-19Sep 19, 2025Oct 31, 20251.83110.276
2025-12-19Dec 19, 2025Jan 30, 20261.99340.293
2026-03-20Mar 20, 2026Apr 30, 20261.7970.277
2026-06-18Jun 18, 2026Jul 31, 20261.90350.255
2026-09-18Sep 18, 2026Oct 30, 20261.88880.248
Rows × columns
12 × 5
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 SPY distribution over the last three years, against the share price, derived from the stored result.
ColumnTypeRangeNotes
ex_date date 2023-12-15 to 2026-09-18
ex_date_label text 12 distinct values (Dec 15, 2023, Dec 19, 2025, Dec 20, 2024…)
pay_date_label text 12 distinct values (Apr 30, 2024, Apr 30, 2025, Apr 30, 2026…)
cash_amount number 1.5949 to 1.9934
pct_of_price number 0.248 to 0.406 percent

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
    divs AS
    (
        SELECT
            ex_dividend_date            AS ex_date,
            any(pay_date)               AS pay_date,
            max(toFloat64(cash_amount)) AS cash_amount
        FROM global_markets.stocks_dividends
        WHERE ticker = 'SPY'
          AND ex_dividend_date >= today() - 1095
          AND ex_dividend_date <  today()
        GROUP BY ex_dividend_date
    ),
    px AS
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS d,
            toFloat64(argMax(close, window_start))               AS close_px
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= today() - 1105
          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
    )
SELECT
    toString(divs.ex_date)                         AS ex_date,
    formatDateTime(divs.ex_date, '%b %e, %Y')      AS ex_date_label,
    formatDateTime(divs.pay_date, '%b %e, %Y')     AS pay_date_label,
    round(divs.cash_amount, 4)                     AS cash_amount,
    round(divs.cash_amount / px.close_px * 100, 3) AS pct_of_price
FROM divs
INNER JOIN px ON px.d = divs.ex_date
ORDER BY ex_date
⌘/Ctrl + Enter
More from this analysisSPY Dividend Yield: Why It Trails the Index
SPY by calendar year: price change against dividends collected ranking 7×3 Days from ex-dividend date to pay date, last three years ranking 3×4 Trailing 12-month dividend yield: SPY against two open-end S&P 500 ETFs ranking 3×3 SPY close versus its 50-day and 200-day averages, February to July 2020 series 126×4 $500 a month into SPY vs one lump sum, 2016 to 2026 (portfolio value, $ thousands) series 126×4 SPY at-the-money implied volatility by session: trailing 90 days series 62×2 See all 2,433 queries →