Seasonality is an expectation, not an insight; not an analysis.
More often than not, I see it used as an excuse for why performance is down. If it appears, seasonality may impact performance, it ought to be addressed at the top of the quarter wherein you create a plan for what you’re going to do about it. Your report should go over what to expect in the coming months based on the last 2 years of analytics data.
Which is why…
If “seasonality” is responsible for the site’s performance, you’re not doing your job
For clients: SEOs should NEVER be using seasonality as a deus ex machina.
If the main takeaway from the report is “you’re usually ’down’ this time of year,” then that’s a clear sign you need a new agency.
It’s effectively short-hand for “I don’t know.”
For SEOs: nothing reads more like laziness than when you send a monthly report attributing losses to seasonality and this is the first time you’re mentioning “seasonality.”
If it’s seasonal, don’t wait until the month you’re reporting on it to say it’s seasonal. And if you expect seasonal changes, build a plan around it! For example, if the site makes 75% of their revenue around Black Friday, you wouldn’t wait UNTIL November to come up with a plan.
Seasonality should SHOW why what you’re doing is working
Seasonality is the status quo and if you’re meant to be driving impacts, then seasonality should only serve as false humility,
I.e. some of these gains are due to seasonality, but we can confidently attribute X% to our team.
For example:

Here’s a site that historically, has a high Q4, but that’s WHY you have 2 years of data. We launched a content campaign June through August of 2019, and there’s a clear difference in trendlines (seasonality be damned) — with October 2019 being the first month in 2.83 years to buck the trend of less traffic year over year.
Seasonality ought to be used to showcase how you succeed. Heck, reporting on July 2019 was just as much of a celebration since — seasonality-wise — it bucked the trend in a positive direction. September 2019?! Chef’s kiss. October was just the icing on the initiative.
What’s more forecasting is that much easier when you’re able to demonstrate the cost of doing nothing (or doing what they’ve been doing).
…and sometimes seasonality isn’t seasonal
Seasonality is predictable. Take this chart:

Here’s the organic sessions of an accounting firm from 2017-2019. Peaks in March and — if April yielded a 30 day view — you’d see April hit higher daily heights right until the 15th when it tapers off precipitously. No brainer, right? Demand increases rapidly from January through March as people collect their paystubs, W2s, health insurance, etc. April 15th is tax day, and after that, you see demand flatline as accounting (for most people) is an annual thing.
So of course, it’s easy to look at this and draft a Q1 content strategy in 2020. What could possibly go wrong?

A Global Pandemic Grants Accounting Firms Two Christmases
Instead of taxes being due April 15 — as it had been for decades — some grace was offered and taxes were due July 15. Additionally, taxpayers could file an extension to October. You can see how this changes things.
Now, a bad SEO is gonna look at July 2020 and compare it to July 2019 and say, “500% increase from our ongoing efforts!” Then in August 2020 say, “declines are due to seasonality” cus taxes are over (womp whaaa).
That laziness will cost you a client. The client’s gonna want you to replicate those gains, but they’re vanity metrics.
And here’s the thing, look at the above chart again, there’s a compelling story here. If you compare July 2020 to April 2019, that’s the closest comparable you’ll get to Y/Y and sessions have improved. Not by 500%, but they’ve improved. Similarly, while the drop to August 2020 is not nearly as steep as the drop from April to May 2019. Again, it’s improved and there’s a story worth telling there — especially when you consider the pivots this team made to handle COVID, furloughed ambiguity, stimulus checks, etc.
In 2021, Tax Day was in May 17th, which, while closer to the usual April, atypical.

But that’s once in a lifetime (we hope).
But while we’re touching on seasonality, let’s talk about that other specter that gets lazily blamed for minor/moderate changes.
Google Algorithm Updates & Other Shenanigans 🙄
Here’s a site that was actually hit by a Google Algorithm update in 2019. I’ll spare you the gory details, but effectively this site was a financial BOON for the company, hitting a record high of 1,033,957 sessions in October 2018. January and February 2019 were on track to topple those numbers… until Google launched their March 2019 Core Algorithm Update.

Comparing Q1 2019’s 1.7m sessions against Q1 2020’s 419k was a 76% loss. Given this was a site whose primary revenue driver was display ads, this cost jobs.
Meanwhile, in 2022, here’s a company that ranked for a bunch of terms that shifted dramatically due to new search intent — captured in Google’s Algo update.

My favorite was “PFP” which was shorthand for “Pentafluorophenyl.” During this algo update, “pfp” got recategorized from pentafluorophenyl to “picture for proof” on TikTok. Today, it’s now shorthand for “Profile Picture.”
Course, the nice thing about an algo update is you can usually corroborate it with competitors:

Don’t blame algorithms or seasonality on performance. Don’t use it as a crutch. The same people that struggled with this some 5-6 years ago, are struggling to report on the rise of AI Overviews (AIOs):

Or the drop of 51-100 from visibility…

Seasonality isn’t Insight, it’s Baseline
The point is seasonality isn’t a shield; it’s a baseline. Your job is to anticipate, plan, and outperform expectation despite the calendar.
Clients don’t pay for excuses, they pay for leadership; clarity — especially when things get weird (and they ALWAYS get weird). They pay for teams who can look at a chart, understand why it moved and use that knowledge to move it again.
If you’re doing the work, seasonality becomes the backdrop that makes your strategy look smarter. If you’re not… it’s effectively saying, you don’t have a strategy. You’re not thinking about what’s next, you’re thinking about getting through the day/month.
Stop blaming the seasons, start owning the outcomes.
