Does Dollar-Cost Averaging Work?
$500 a month into SPY vs one lump sum, 2016 to 2026 (portfolio value, $ thousands)series ·
2026-07-16 · 126×4
Five-year, $30,000 plans by start year: dollar-cost averaging vs lump sum ($ thousands)ranking ·
2026-07-16 · 6×3
Same $500-a-month plan vs a lump sum across five stocks, 2016 to 2026 ($ thousands)ranking ·
2026-07-16 · 5×3
$500 a month into SPY vs one lump sum, 2016 to 2026 (portfolio value, $ thousands)
$500 a month into SPY vs one lump sum, 2016 to 2026 (portfolio value, $ thousands)
| month | dca_value | lumpsum_value | invested |
|---|---|---|---|
| 2016-01-01 | 0.5 | 63 | 0.5 |
| 2016-02-01 | 1 | 60.7 | 1 |
| 2016-03-01 | 1.5 | 62.1 | 1.5 |
| 2016-04-01 | 2.1 | 64.8 | 2 |
| 2016-05-01 | 2.6 | 65.2 | 2.5 |
| 2016-06-01 | 3.1 | 65.9 | 3 |
| 2016-07-01 | 3.6 | 65.8 | 3.5 |
| 2016-08-01 | 4.2 | 68 | 4 |
| 2016-09-01 | 4.7 | 68.1 | 4.5 |
| 2016-10-01 | 5.2 | 67.6 | 5 |
| 2016-11-01 | 5.6 | 66.1 | 5.5 |
| 2016-12-01 | 6.3 | 68.8 | 6 |
| 2017-01-01 | 7 | 70.6 | 6.5 |
| 2017-02-01 | 7.5 | 71.4 | 7 |
| 2017-03-01 | 8.5 | 75.1 | 7.5 |
| 2017-04-01 | 8.8 | 73.8 | 8 |
| 2017-05-01 | 9.4 | 74.8 | 8.5 |
| 2017-06-01 | 10.1 | 76.3 | 9 |
| 2017-07-01 | 10.6 | 76 | 9.5 |
| 2017-08-01 | 11.3 | 77.5 | 10 |
| 2017-09-01 | 11.8 | 77.7 | 10.5 |
| 2017-10-01 | 12.5 | 79.1 | 11 |
| 2017-11-01 | 13.3 | 80.7 | 11.5 |
| 2017-12-01 | 14.1 | 82.9 | 12 |
| 2018-01-01 | 14.9 | 84.3 | 12.5 |
| 2018-02-01 | 16.1 | 88.3 | 13 |
| 2018-03-01 | 15.8 | 83.9 | 13.5 |
| 2018-04-01 | 15.7 | 80.7 | 14 |
| 2018-05-01 | 16.6 | 83.1 | 14.5 |
| 2018-06-01 | 17.7 | 85.8 | 15 |
| 2018-07-01 | 18.1 | 85.2 | 15.5 |
| 2018-08-01 | 19.2 | 88.1 | 16 |
| 2018-09-01 | 20.3 | 90.9 | 16.5 |
| 2018-10-01 | 20.9 | 91.4 | 17 |
| 2018-11-01 | 20.1 | 85.7 | 17.5 |
| 2018-12-01 | 21 | 87.5 | 18 |
| 2019-01-01 | 19.3 | 78.4 | 18.5 |
| 2019-02-01 | 21.4 | 84.7 | 19 |
| 2019-03-01 | 22.7 | 87.9 | 19.5 |
| 2019-04-01 | 23.6 | 89.6 | 20 |
| 2019-05-01 | 24.6 | 91.5 | 20.5 |
| 2019-06-01 | 23.7 | 86.1 | 21 |
| 2019-07-01 | 26 | 92.7 | 21.5 |
| 2019-08-01 | 26.4 | 92.4 | 22 |
| 2019-09-01 | 26.5 | 91.1 | 22.5 |
| 2019-10-01 | 27.3 | 91.9 | 23 |
| 2019-11-01 | 29 | 96 | 23.5 |
| 2019-12-01 | 30 | 97.7 | 24 |
| 2020-01-01 | 31.8 | 101.8 | 24.5 |
| 2020-02-01 | 32.2 | 101.6 | 25 |
| 2020-03-01 | 31.2 | 96.9 | 25.5 |
| 2020-04-01 | 25.3 | 77.1 | 26 |
| 2020-05-01 | 29.6 | 88.6 | 26.5 |
| 2020-06-01 | 32.5 | 95.8 | 27 |
| 2020-07-01 | 33.5 | 97.3 | 27.5 |
| 2020-08-01 | 36 | 103 | 28 |
| 2020-09-01 | 39.1 | 110.5 | 28.5 |
| 2020-10-01 | 37.9 | 105.6 | 29 |
| 2020-11-01 | 37.6 | 103.5 | 29.5 |
| 2020-12-01 | 42.2 | 114.7 | 30 |
| 2021-01-01 | 43 | 115.6 | 30.5 |
| 2021-02-01 | 44.4 | 117.9 | 31 |
| 2021-03-01 | 46.5 | 122.1 | 31.5 |
| 2021-04-01 | 48.3 | 125.5 | 32 |
| 2021-05-01 | 50.9 | 131.1 | 32.5 |
| 2021-06-01 | 51.6 | 131.5 | 33 |
| 2021-07-01 | 53.4 | 134.9 | 33.5 |
| 2021-08-01 | 54.8 | 137.2 | 34 |
| 2021-09-01 | 57.1 | 141.6 | 34.5 |
| 2021-10-01 | 55.3 | 136.1 | 35 |
| 2021-11-01 | 59.1 | 144.2 | 35.5 |
| 2021-12-01 | 58.4 | 141.2 | 36 |
| 2022-01-01 | 62.4 | 149.8 | 36.5 |
| 2022-02-01 | 59.7 | 142 | 37 |
| 2022-03-01 | 57.2 | 134.8 | 37.5 |
| 2022-04-01 | 60.7 | 142 | 38 |
| 2022-05-01 | 56.1 | 129.9 | 38.5 |
| 2022-06-01 | 55.9 | 128.4 | 39 |
| 2022-07-01 | 52.5 | 119.5 | 39.5 |
| 2022-08-01 | 57.1 | 128.7 | 40 |
| 2022-09-01 | 55.6 | 124.3 | 40.5 |
| 2022-10-01 | 51.9 | 114.9 | 41 |
| 2022-11-01 | 55 | 120.5 | 41.5 |
| 2022-12-01 | 58.7 | 127.7 | 42 |
| 2023-01-01 | 55.4 | 119.4 | 42.5 |
| 2023-02-01 | 60.3 | 128.8 | 43 |
| 2023-03-01 | 58.4 | 123.7 | 43.5 |
| 2023-04-01 | 61.3 | 128.8 | 44 |
| 2023-05-01 | 62.5 | 130.2 | 44.5 |
| 2023-06-01 | 63.9 | 132.2 | 45 |
| 2023-07-01 | 67.8 | 139.1 | 45.5 |
| 2023-08-01 | 70.2 | 143.1 | 46 |
| 2023-09-01 | 69.9 | 141.4 | 46.5 |
| 2023-10-01 | 66.7 | 134 | 47 |
| 2023-11-01 | 66.5 | 132.5 | 47.5 |
| 2023-12-01 | 72.7 | 143.9 | 48 |
| 2024-01-01 | 75.3 | 148.1 | 48.5 |
| 2024-02-01 | 78.5 | 153.3 | 49 |
| 2024-03-01 | 82.8 | 160.7 | 49.5 |
| 2024-04-01 | 84.8 | 163.7 | 50 |
| 2024-05-01 | 81.7 | 156.8 | 50.5 |
| 2024-06-01 | 86.7 | 165.4 | 51 |
| 2024-07-01 | 90.1 | 170.9 | 51.5 |
| 2024-08-01 | 90.2 | 170.2 | 52 |
| 2024-09-01 | 92.2 | 173.1 | 52.5 |
| 2024-10-01 | 95.5 | 178.3 | 53 |
| 2024-11-01 | 96.4 | 179 | 53.5 |
| 2024-12-01 | 102.4 | 189.2 | 54 |
| 2025-01-01 | 99.7 | 183.2 | 54.5 |
| 2025-02-01 | 102.4 | 187.3 | 55 |
| 2025-03-01 | 100.5 | 183 | 55.5 |
| 2025-04-01 | 97.1 | 175.9 | 56 |
| 2025-05-01 | 97.2 | 175 | 56.5 |
| 2025-06-01 | 103.6 | 185.8 | 57 |
| 2025-07-01 | 108.5 | 193.6 | 57.5 |
| 2025-08-01 | 109.7 | 194.9 | 58 |
| 2025-09-01 | 113.5 | 200.7 | 58.5 |
| 2025-10-01 | 119 | 209.5 | 59 |
| 2025-11-01 | 122.1 | 214.2 | 59.5 |
| 2025-12-01 | 122.1 | 213.2 | 60 |
| 2026-01-01 | 123.1 | 214.1 | 60.5 |
| 2026-02-01 | 125.8 | 218 | 61 |
| 2026-03-01 | 124.6 | 215.1 | 61.5 |
| 2026-04-01 | 119.5 | 205.4 | 62 |
| 2026-05-01 | 131.9 | 225.9 | 62.5 |
| 2026-06-01 | 139.3 | 237.7 | 63 |
the exact SQL behind every number
WITH
monthly AS (
SELECT toStartOfMonth(dt) AS mo, argMin(c, dt) AS px
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS dt,
argMax(toFloat64(close), window_start) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= '2016-01-01 00:00:00' AND window_start < '2026-07-01 00:00:00'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY dt
)
GROUP BY mo
),
agg AS (
SELECT argMin(px, mo) AS first_px, sum(500.0) AS total_invested FROM monthly
)
SELECT mo AS month,
round(sum(500.0 / px) OVER (ORDER BY mo) * px / 1000, 1) AS dca_value,
round((total_invested / first_px) * px / 1000, 1) AS lumpsum_value,
round(sum(500.0) OVER (ORDER BY mo) / 1000, 1) AS invested
FROM monthly CROSS JOIN agg
ORDER BY mo
More from this analysisDoes Dollar-Cost Averaging Work?
Five-year, $30,000 plans by start year: dollar-cost averaging vs lump sum ($ thousands)
ranking 6×3
→
Same $500-a-month plan vs a lump sum across five stocks, 2016 to 2026 ($ thousands)
ranking 5×3
→
July 6, 2026 in five-minute buckets: the slide, the late climb, and the volume underneath
series 78×3
→
SPY at-the-money implied volatility by session: trailing 90 days
series 62×2
→
See all 2,170 queries →