Crypto Seasonality

Bitcoin Monthly Returns by Year

Every Bitcoin (BTC) cell below is computed from daily price data: monthly return = this month-end close ÷ previous month-end close − 1; YTD = year-end ÷ prior year-end − 1. The % Positive row shows how often each month finished green across all available years.

Bitcoin (BTC-USD) Monthly Returns by Year

Jul 20, 2015Aug 10, 2026 · 12 yrs · Coinbase daily candles

Historically strongest: October (+19.1% avg, green in 9 of 11 years). Weakest: September (-1.8% avg, green in 5 of 11 years).

YearYTDJanFebMarAprMayJunJulAugSepOctNovDecStartEnd
2026-25.8%-10.1%-14.9%+1.9%+11.8%-3.6%-20.5%+7.4%+3.4%$87,498$64,952
2025-6.3%+9.7%-17.7%-2.1%+14.1%+11.1%+2.4%+8.0%-6.5%+5.4%-4.0%-17.5%-3.2%$93,354$87,498
2024+121%+0.6%+43.8%+16.5%-15.0%+11.3%-7.1%+3.1%-8.7%+7.3%+10.9%+37.4%-3.2%$42,288$93,354
2023+156%+39.9%+0.1%+23.0%+2.7%-6.9%+11.9%-4.1%-11.3%+4.0%+28.5%+8.9%+12.1%$16,530$42,288
2022-64.2%-16.7%+12.2%+5.4%-17.3%-15.6%-37.1%+16.6%-14.0%-3.1%+5.5%-16.2%-3.7%$46,211$16,530
2021+59.4%+14.3%+36.5%+30.0%-1.7%-35.5%-6.0%+18.4%+13.5%-7.0%+40.0%-7.1%-18.9%$28,990$46,211
2020+305%+30.3%-8.7%-24.6%+34.2%+9.5%-3.3%+24.2%+2.7%-7.5%+28.1%+42.8%+47.1%$7,166$28,990
2019+94.1%-7.6%+11.2%+8.0%+28.7%+62.3%+25.8%-6.3%-4.8%-13.5%+10.3%-17.5%-5.2%$3,692$7,166
2018-73.4%-27.1%+2.1%-32.8%+33.4%-19.0%-14.7%+21.1%-9.2%-5.8%-4.6%-36.9%-7.1%$13,863$3,692
2017+1324%-0.3%+23.2%-8.9%+27.1%+66.4%+6.6%+16.4%+66.1%-8.5%+48.5%+53.7%+40.0%$973$13,863
2016+126%-14.5%+18.6%-4.7%+9.1%+17.0%+26.8%-6.9%-8.6%+6.3%+14.4%+6.6%+31.1%$430$973
2015-19.1%+2.8%+32.8%+19.7%+14.2%$430
Average+183%+1.7%+9.7%+1.1%+11.6%+8.8%-1.4%+8.9%+0.3%-1.8%+19.1%+6.7%+9.4%
Median+94.1%-0.3%+11.2%+1.9%+11.8%+9.5%-3.3%+8.0%-7.6%-3.1%+14.4%+6.6%-3.2%
% Positive45%73%55%73%55%45%73%33%45%82%55%45%

Heads up: this is only 12 years of data — a small sample. Monthly seasonality is a weak, easily-overfit signal that can flip with a single big year. Treat it as context, not a trade.

✓ Every year reconciles — the twelve monthly returns compound to the displayed YTD.