Shiller S&P 500 Monthly Returns

Nominal monthly total returns, February 1871 to September 2026, as clean CSV and JSON for backtesting and research

The full month-by-month total-return series behind firenum's historical backtesting, derived from Robert Shiller's dataset and published as a tidy CSV and JSON. 1,868 rows, February 1871 to September 2026. No sign-up.

CSV columns: year, month, nominalReturn, cpi · ~42 KB

What's in the Data

Each row is one month of nominal total return for the S&P 500 composite: price change plus reinvested dividends, expressed as a decimal (so 0.0173 means +1.73% for that month).

yearmonthnominalReturncpi
187120.01839312.8446
187130.02925913.035
187140.03289912.5592
…………
20269-0.009472333.8925

Methodology

The series is derived from Robert J. Shiller's long-running historical dataset (the data behind Irrational Exuberance). Monthly total returns are computed from his S&P composite price and dividend series. Shiller's price for a month is the average of that month's daily closes, not the close itself, so these returns are smoother than close-to-close figures and a compounded calendar year can land a few points away from published S&P 500 total returns.

The returns are nominal, not CPI-adjusted. This is deliberate: when a projection already applies inflation to expenses (as firenum's does), nominal returns are the correct input, because using real returns would double-count inflation. If you need real returns, deflate with the cpi column: Shiller's CPI series (his column E), copied as published and rounded to 4 decimals. The latest month can predate the official BLS release, so treat it as provisional.

One caveat: pre-1926 figures are reconstructed from historical sources and are less precise than modern index data. They're standard for long-horizon backtesting, but treat the 19th-century tail as indicative rather than exact.

How firenum Uses It

The Fire Planner's historical backtesting runs your plan against this series from every start year it covers. Runs start each January, so a 50-year projection tests 105 historical starting years and a 30-year one tests 125, and the results report success rates alongside the best and worst outcomes. Its portfolio survival heatmap uses the cpi column to raise each year's withdrawal with actual inflation, as the Trinity Study did. The full method is documented in the mathematical foundations guide.

How to Cite

If you use this data, please credit Robert Shiller as the original source. A suggested citation:

Shiller, Robert J. Online Data: U.S. Stock Markets 1871-Present. Yale University. Monthly nominal total returns prepared by firenum.com, firenum.com/tools/shiller-data.

Original source: Robert Shiller's Online Data page (Yale University). This dataset is offered for research and educational use; attribution is required.

Frequently Asked Questions

See the FIRE spreadsheets & downloads, test a withdrawal rate in the Backtest Spreadsheet, or run a full backtest in the Fire Planner.