STRASMORE/EXPLORE 2,170 QUERIES

The market's dividend yield vs. the 10-year Treasury: end-June readings, 2016-2026

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-08-15, from What Is Dividend Yield? What's Normal in 2026.

as of table 11×5read in context →
The market's dividend yield vs. the 10-year Treasury: end-June readings, 2016-2026 — 11 rows by 5 columns, computed from US exchange, SIP and OPRA data.
yearmarket_dividend_yield_pcttreasury_10y_pcttreasury_minus_stocks_pctgap_abs_pct
20162.091.49-0.60.6
20171.912.310.40.4
20181.822.851.031.03
20191.8520.150.15
20201.860.66-1.21.2
20211.31.450.150.15
20221.592.981.391.39
20231.473.812.342.34
20241.264.363.13.1
20251.164.243.083.08
20261.014.443.433.43
Rows × columns
11 × 5
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 The market's dividend yield vs. the 10-year Treasury: end-June readings, 2016-2026, derived from the stored result.
ColumnTypeRangeNotes
year number 2,016 to 2,026
market_dividend_yield_pct number 1.01 to 2.09 percent
treasury_10y_pct number 0.66 to 4.44 percent
treasury_minus_stocks_pct number -1.2 to 3.43 percent
gap_abs_pct number 0.15 to 3.43 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.

the exact SQL behind every number
WITH spy_px AS (
    SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS year,
           argMax(close, window_start) AS price
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND toMonth(toTimeZone(window_start, 'America/New_York')) = 6
      AND toDayOfMonth(toTimeZone(window_start, 'America/New_York')) >= 25
      AND toYear(toTimeZone(window_start, 'America/New_York')) >= 2016
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
    GROUP BY year
),
spy_div AS (
    SELECT toYear(addMonths(ex_dividend_date, 6)) AS year,
           sum(cash_amount) AS ttm_div
    FROM global_markets.stocks_dividends
    WHERE ticker = 'SPY' AND cash_amount > 0 AND ex_dividend_date >= toDate('2015-07-01')
    GROUP BY year
),
tsy AS (
    SELECT toYear(date) AS year,
           argMax(yield_10_year, date) AS y10
    FROM global_markets.treasury_yields
    WHERE toMonth(date) = 6 AND toYear(date) >= 2016 AND yield_10_year IS NOT NULL
    GROUP BY year
)
SELECT spy_px.year AS year,
       round(spy_div.ttm_div / spy_px.price * 100, 2) AS market_dividend_yield_pct,
       round(tsy.y10, 2) AS treasury_10y_pct,
       round(tsy.y10 - spy_div.ttm_div / spy_px.price * 100, 2) AS treasury_minus_stocks_pct,
       round(abs(tsy.y10 - spy_div.ttm_div / spy_px.price * 100), 2) AS gap_abs_pct
FROM spy_px
INNER JOIN spy_div ON spy_px.year = spy_div.year
INNER JOIN tsy ON spy_px.year = tsy.year
ORDER BY year

Run your own version of this

The same 22 years of US equities and 12 years of options data are queryable in SQL or plain English. A free account runs 100 queries a day and takes no card.

More from this analysisWhat Is Dividend Yield? What's Normal in 2026
Trailing yield by sector fund: twelve months of distributions ÷ latest price table 13×5 Payout ratio by yield band: US payers, $1B+ market cap, latest snapshot table 4×6 Conagra (CAG): price, quarterly dividend, and yield, month-end 2023-07 to 2026-06 series 36×5 Trailing dividend yields: eight household names, latest snapshot on file ranking 8×3 Recurring cash dividends by payment schedule: H1 2026, all US-listed payers ranking 5×3 Dividend yield across the US market: $1B+ market cap, $5+ share price, latest snapshot scalar 1×6 See all 2,170 queries →