What this shows: for each month, the annualized return of a broad commodity
index over the trailing ten years
minus the annualized total return of the
S&P 500 over the same ten years, in percentage points. When the line is above
0%, commodities have outperformed stocks over the prior decade; below 0%,
stocks have outperformed. The 1970s were commodities' decade (oil embargo,
inflation); 1980–2020 was stocks' era (disinflation, tech); the 2020s reopening and
energy/critical-materials cycle has been narrowing the gap again.
Commodity leg: a broad spot commodity price index built from two free
series, ratio-linked at the 1991-12 seam: FRED
PPIACO (BLS Producer Price
Index: All Commodities, 1913+) through 1991, then the IMF
PALLFNFINDEXM
(All-Commodity Price Index, 2016=100) from 1992. Both are spot/price indices — they
exclude the futures roll income captured by BofA's Bloomberg commodity index, so
this line runs a few points below the original in roll-rich decades (notably the
late 1970s and the 2000s).
Stock leg: S&P 500 total return (monthly close plus dividends) from
Robert Shiller's long-run dataset (1871+, maintained mirror). BofA's original uses
MSCI World total return; the S&P 500 stands in for developed-market stocks
(the US is ~70% of the developed-market cap) and, like the original, includes
dividends.
Reading the chart: the line is a 10-year rolling window, so it moves
slowly and lags markets; each point answers "which asset class won the last
decade?". The dashed line marks parity (0). The red dot is the latest month.
Zoom in (scroll / shift+drag) to isolate episodes. Data may be revised.
Data:
chart data (JSON) ·
source series (CSV) ·
FRED PPIACO ·
FRED PALLFNFINDEXM