Every month, quarter, and day of the week of Bitcoin's price history β color-coded. Spot the patterns: where Bitcoin has historically rallied, where it has historically struggled, and how reliably.
Avg monthly return
β
all months pooled
Monthly win rate
β
months closing positive
Strongest month
β
on average
Weakest month
β
on average
Average Returns by Period
β
About Bitcoin Returns Seasonality
Each cell shows the average percent return Bitcoin has produced for that period, computed across every year of available data. Green means positive, red means negative; saturation scales with magnitude.
Monthly returns are calculated month-end to month-end. Quarterly returns use the same close-to-close convention. Day-of-week returns are the mean daily log return for each weekday.
Use the year-by-year matrix to see how consistent a pattern is β a "good" month on average can still have plenty of red years.
Color scale:β30%+30%β magnitudes beyond Β±30% are capped to keep the chart readable.
Month of Year (Jan β Dec)avg monthly return across all years
Quarter (Q1 β Q4)avg quarterly return across all years
Day of Week (Mon β Sun)avg daily return by weekday
Year-by-Year Monthly Returns
Each row is a calendar year. Each cell = that month's return. Right column = full-year return.
Loading historical dataβ¦
Best & Worst Months
Across every calendar month in Bitcoin's history.
Top 10 β strongest months
Return
β
Bottom 10 β weakest months
Return
β
Bitcoin Returns Seasonality β What This Chart Shows
This page maps every month, quarter, and weekday of Bitcoin's trading history into a color-coded grid so you can see at a glance where Bitcoin has historically performed best and worst. Returns are computed from consensus daily closing prices and refreshed continuously.
Key findings (computed live from the data above):
Loadingβ¦
How Bitcoin returns are calculated on this page
Monthly and quarterly returns use the standard close-to-close formula:
For day-of-week aggregates we average daily log returns and report the arithmetic-equivalent percent, so each weekday is comparable on the same scale even though daily moves compound differently than monthly ones.
Why seasonality matters for Bitcoin
Unlike equities, Bitcoin's seasonality is shaped less by earnings cycles or tax calendars and more by reflexive market structure: leverage flushes, halving timing, ETF flow cycles, and the rhythm of speculative attention. Some patterns persist across cycles (Q4 strength, mid-summer chop); others are artefacts of just one or two outsized years. The year-by-year matrix above is the honest version β averages flatten the story, but the cell-by-cell view shows you how often a "good month" actually delivered.
Common Bitcoin return questions
What is Bitcoin's best historical month? Updated live in the "Strongest month" card above; the underlying matrix shows you how reliable that pattern has been.
How often does Bitcoin close a month positive? Monthly win rate is shown in the stats row. Anything above 50% means more green months than red across the full sample.
Is Q4 actually Bitcoin's strongest quarter? The quarterly strip answers this directly. Q4 has been the standout in most cycles, but the matrix shows the exceptions.
Does day of the week matter for Bitcoin? Crypto trades 24/7, so weekday effects are subtle compared to equities β but the day-of-week strip lets you see whether any pattern survives in the data.
How to use this data
Treat seasonality as one input, not a forecast. The strongest historical periods can produce disappointing years and vice versa. The most useful framing is:
Context for current returns. If Bitcoin is +8% this month and the historical average for this month is +12%, you're behind the typical year, not ahead of it.
Stress-testing strategies. A timing strategy that depends on a specific month outperforming should be checked against the year-by-year matrix, not just the average.
Long-horizon perspective. Win rate and average drawn from 15+ years of data is more honest than any single recent year's pattern.
Data source: consensus daily closes aggregated from major exchanges via the Bitcoin.com Charts API. Updated continuously.