STRASMORE/EXPLORE 2,749 QUERIES

yield_by_ex_date

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-28, from aapl-dividend-2026.

as of series 11×4read in context →
yield_by_ex_date — 11 rows by 4 columns, computed from US exchange, SIP and OPRA data.
ex_dateex_dividend_prettyclose_priceannualized_yield_pct
2024-02-09February 9, 2024188.850.51
2024-05-10May 10, 2024183.050.55
2024-08-12August 12, 2024217.530.46
2024-11-08November 8, 2024226.960.44
2025-02-10February 10, 2025227.650.44
2025-05-12May 12, 2025210.790.49
2025-08-11August 11, 2025227.180.46
2025-11-10November 10, 2025269.430.39
2026-02-09February 9, 2026274.620.38
2026-05-11May 11, 2026292.680.37
2026-08-10August 10, 2026308.260.35
Rows × columns
11 × 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 yield_by_ex_date, derived from the stored result.
ColumnTypeRangeNotes
ex_date date 2024-02-09 to 2026-08-10
ex_dividend_pretty text 11 distinct values
close_price number 183.05 to 308.26 US dollars
annualized_yield_pct number 0.35 to 0.55 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.

SELECT
    toString(d.ex_dividend_date)                                      AS ex_date,
    concat(monthName(d.ex_dividend_date), ' ',
           toString(toDayOfMonth(d.ex_dividend_date)), ', ',
           toString(toYear(d.ex_dividend_date)))                      AS ex_dividend_pretty,
    round(toFloat64(p.close), 2)                                      AS close_price,
    round(100 * 4 * toFloat64(d.cash_amount) / toFloat64(p.close), 2) AS annualized_yield_pct
FROM
(
    SELECT
        ex_dividend_date,
        max(cash_amount) AS cash_amount
    FROM global_markets.stocks_dividends
    WHERE ticker = 'AAPL'
      AND ex_dividend_date >= '2024-01-01'
    GROUP BY ex_dividend_date
) AS d
INNER JOIN
(
    SELECT
        date,
        max(close) AS close
    FROM global_markets.stocks_daily_aggs
    WHERE ticker = 'AAPL'
      AND date >= '2024-01-01'
    GROUP BY date
) AS p ON p.date = d.ex_dividend_date
ORDER BY d.ex_dividend_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 analysisaapl-dividend-2026
schedule_2026 series 3×6 → raise_timing table 6×5 → annual_totals ranking 6×4 → The 2s10s spread by month, full history series 604×5 → One SPY $600 LEAPS call's price over two years (expired Jan 16 2026) series 470×2 → monthly_history series 241×4 → See all 2,749 queries →