Skip to content
Searchpedia SEO field notes Callum Bennett Callum

Writing desk

Seasonal SEO

I build seasonal pages on evergreen URLs, update them 8 weeks before the peak, and use year-over-year Search Console data to decide what earns a refresh.

Beginner3 min readUpdated 2026-07-27Notes by Callum Bennett

What I’d do first

  • Use Search Console's year-over-year comparison to find pages that spike or dip at the same time each year.
  • For every seasonal topic, establish a single evergreen URL and update it annually instead of creating a new one.
  • Start your content refresh at least 8 weeks before the expected peak to give Google time to recrawl and re-rank.
  • Keep seasonal pages live year-round and link to relevant evergreen content to retain authority and traffic in off-season.
  • Refresh title tags, meta descriptions, images, and internal links every season, not just the body text.

The path I'd take

I start with an audit of the past 24 to 36 months of Search Console data, comparing each month to the same month the year before. The goal is to spot pages that show a recurring spike or drop during a specific period. If a page reliably jumps 40 % in November every year, that is seasonal behaviour. If the spike moves dates or disappears, it is probably a one-off trend or an algorithm change. I set a threshold: a consistent year-over-year increase of at least 30 % for two consecutive cycles qualifies for a dedicated seasonal plan. Once I have that list, I move to the URL structure. I never create a year-stamped URL like /christmas-gift-guide-2025. That forces me to start from zero in authority, backlinks, and indexing latency every year. Instead, I use a permanent URL such as /christmas-gift-guide and plan to update it annually. The decision rule is simple: if the topic will repeat next year, commit to an evergreen slug. If the event is a one-off (for example, a product launch), then a dated URL is fine and I make peace with its short life. After the URL is set, I look at timing. I want the content refreshed and published no later than 8 weeks before the predicted peak. For Black Friday, that means mid-September. For a Valentine's Day campaign, early December. I pull the previous year's page, update every component — [title tag](/title-tag/), [meta description](/meta-description/), headings, body copy, product links, and [alt text](/alt-text/) on images — and submit the URL for indexing in Search Console. I also check internal links: any [on-page SEO](/on-page-seo/) page that naturally references the seasonal topic should point to this URL, especially from the main navigation or site-wide footer if appropriate. In 2023, I applied this approach to a client's Halloween landing page. We had /halloween-costumes established from 2022 with 15 supporting backlinks and a Domain Authority of 28. I updated the content in early September, added fresh category filtering, and rewrote the [SEO copywriting](/seo-copywriting/) for the current year's trends. The page ranked #2 for "buy halloween costumes" by October 1st, traffic hit 12 000 sessions in the month, up 37 % from the previous year's peak. The old yearly URL approach would have required 8 weeks of link building just to get indexed.

Watch-outs

The most common trap is timing. Publishing a seasonal page less than 4 weeks before the expected peak rarely works. Google needs time to crawl, index, and start ranking a new or updated piece. The crawl budget for a fresh URL is lower than for an updated evergreen one, so if you wait until the week before, you are competing against pages that have been sitting on the SERP for months. My rule: no seasonal update later than 8 weeks out, and for brand-new content, start 12 weeks early. The second watch-out is URL hygiene. Changing the URL every year resets your history. I once saw a site that published /halloween-2022, then /halloween-2023. The 2023 version got almost no organic traffic because it started with zero backlinks and zero index history. The client had to run a paid campaign to compensate. If you must change the URL (for example, a rebrand), set up a 301 redirect from the old seasonal URL to the new one, but that still leaks authority. Better to plan for permanence from year one. The third pitfall is deleting or hiding seasonal pages after the season ends. I used to think 'out of season' meant 'no value' and would remove the page or add noindex. That throws away all the accumulated authority. Instead, I now keep the page live and add a banner or intro paragraph acknowledging the season has passed, then link to relevant evergreen content on the same topic. For example, a 'Christmas dessert recipes' page can point to a general 'dessert recipes' hub during January. That way the page continues to earn backlinks and internal search value. An edge case: events that shift dates, like Easter (which can fall anywhere from late March to late April). For such events, I build the URL without the year (e.g., /easter-decorations) and I adjust my update window based on the current year's date. I set a calendar reminder in my [content calendar](/what-is-a-content-calendar/) that recalculates each year using the known date formula. Finally, watch out for conflating seasonality with trends. A page that spiked in March 2020 because of lockdowns is not seasonal — that was a one-off external shock. Use at least three years of data to confirm the pattern before treating it as recurring.

What I got wrong

My biggest mistake was creating fresh URLs for every seasonal event. For three years I published /super-bowl-snacks-2020, /super-bowl-snacks-2021, and /super-bowl-snacks-2022. Each time I built the page, waited for indexing, and scraped together a handful of backlinks. The traffic never exceeded 2 000 sessions in the month of February. In 2023, I consolidated everything into a single /super-bowl-snacks URL, 301-redirected the old pages, and updated the content with the current year's recipes and a fresh feature on air-fryer wing tricks. That page hit 4 500 sessions in February 2023. The authority from the redirects and the accumulated backlinks doubled the traffic. I should have listened to the advice about evergreen seasonal URLs three years earlier. The second error was treating seasonal pages as write-once-and-ignore. I assumed that because the season repeats, the search demand and user expectations stay static. In reality, search queries shift year to year. In 2020, 'remote holiday party ideas' was huge. By 2022, that query dropped off and 'crypto holiday gifts' spiked. If I had just kept the old content, I would have missed the change. Now I do a full [content audit](/content-audit/) for each seasonal page every year: I check current keyword rankings, review the top 10 SERP results for the primary query, and adjust the angle and the internal links seo structure accordingly. The third mistake was ignoring off-season value. I used to think that once Halloween was over, the page was dead until next September. But users still search 'Halloween costume ideas' in July — usually because they are planning early or looking for DIY patterns. Instead of hiding the page, I now keep it discoverable and add a 'planning timeline' section that stays relevant year-round. That generated an extra 800 sessions per month in the off-season, with a low bounce rate because the content answered a real need. Don't assume a seasonal page has no off-season purpose. Finally, I underestimated the crawl delay. I used to update seasonal pages two weeks before the peak and wonder why they didn't rank. Now, with the 8-week rule, I give Google time to re-crawl and re-evaluate. The results speak for themselves: my seasonal pages now deliver consistent, predictable traffic spikes that line up with the calendar.

Next step

Quick answers

How far in advance should I update a seasonal page for Black Friday?

I start updating Black Friday content in mid-September, about 12 weeks before the event. Google needs time to reindex and recalculate relevance. If you wait until November, you compete with pages that have been sitting in the index for months.

What do I do with a seasonal page after the event is over?

Keep it live. Do not delete or noindex it. Add a banner saying 'This season has ended' and link to related evergreen content. The page continues to earn backlinks and traffic from people planning ahead, while preserving its authority for next season.

Can I use the same URL for a seasonal page that changes name each year, like 'best of 2024'?

Yes, but you need a structure that separates the year from the core topic. Use /best-of-year and treat the yearly variant as an update. If you must include a year, keep the base and redirect old years: /best-of-2024 redirects to /best-of-year.

How do I identify seasonality in my analytics if I only have one year of data?

You cannot confirm seasonality with one year. Look for external signals: search trend charts, industry calendars, or known seasonal events. Treat the page as a test. If the expected spike does not happen next year, switch strategies.

Sources

Primary documentation is linked directly. Anything commercial is marked nofollow.

  • Google Search Central — Backs up the guidance on preserving page authority with evergreen URLs and using Search Console for page lifecycle decisions.
  • Google Search Console Help — Supports the method of comparing year-over-year performance data in Search Console to identify seasonal patterns.
  • Search Engine Land — Provides practical advice on keeping seasonal URLs stable and the importance of publishing early for seasonal keywords.
  • Sitebulb — Offers operational tactics for trend analysis and page-level performance review during seasonal planning.

Notes from Callum Bennett.