Upload a CSV with a date column and a metric. Get an STL decomposition with a seasonal strength score, the peak and trough seasons named with their size vs trend, and an honest noise share. Free.
We email you the report link.
Free up to 10,000 rows. Encrypted in transit.
Decomposing trend, seasonality, and noise...
The analysis parses your dates, aggregates duplicates by sum, infers the cadence (daily, weekly, monthly) from the median date gap, and fills small gaps by linear interpolation, every adjustment stated in the report. It then runs an STL decomposition (seasonal-trend decomposition using loess with a periodic seasonal window), splitting the series into trend, seasonal, and remainder. Seasonal strength is max(0, 1 minus Var(remainder) divided by Var(seasonal plus remainder)), banded weak below 0.30, moderate below 0.60, strong at 0.60 or above. Each season gets an index, its percentage above or below the trend level, reported in calendar order, with the peak and trough named.
Use it when you have a dated history of one metric and want to know whether a seasonal cycle is real, how big it is, and which seasons peak and dip: before setting targets, staffing, or stock levels around a calendar.
Not for projecting future values (use the forecast tool), for series shorter than two full cycles, or for irregular event-driven spikes that do not repeat on a calendar.
Built for: Operators, planners, and analysts deciding whether a metric's calendar pattern is real enough to plan around
Typical data source: Any CSV or spreadsheet with a date column and a numeric metric: sales by month, orders by day, signups by week
A dated history of one metric. For example, monthly revenue:
Minimum 10 rows · Best with 2-6 years of monthly or weekly history, or 3+ months of daily history
Standard-library analysis: find out whether a metric has a real seasonal pattern and how big it is. Maps a date column and a numeric column, infers the data's cadence (daily, weekly, monthly) from the date spacing, and runs an STL decomposition to split the series into trend, seasonal, and noise. Reports a 0-to-1 seasonal strength score with a plain-language band, names the peak and trough seasons in calendar terms with their percentage above and below trend, gives the trend direction over the window, and states honestly how much of the variation is just noise.
Your metric against its deseasonalized trend, recurring gaps between the lines are the seasonal pattern; wandering gaps are noise.
One bar per season in calendar order: how far above or below the trend that season typically runs, as a percentage.
The full per-season breakdown: average effect, percentage index vs trend, and each season's share of the seasonal deviation.
The decomposition method, the strength formula and its thresholds, and the assumptions the seasonal read rests on.
Plain-English reading of the results and what to do next.
Is this metric actually seasonal, or does it just look that way?
Map your date column and the metric. The STL decomposition separates the repeating seasonal pattern from trend and noise, scores its strength on a 0-to-1 scale, and names the peak and trough seasons with their size, so you know whether the pattern is real enough to plan around.
See our FAQ for pricing, privacy and how the analysis works.
MCP Analytics. Seasonality Decomposition. Free tool. https://mcpanalytics.ai/free/standard_seasonality. Accessed [date you used it].
Your turn
Bring your own data and the question you actually need answered.
MCP AnalyticsData science by email Send us your data and your question, and we will reply. ds@mcpanalytics.ai
Tell us what went wrong, in your own words. We capture the page you're on automatically, so no need to describe where you are.