Seasonal keywords: find them with Google Trends and publish 45 days before the peak

Seasonal keywords are searches whose Google Trends interest peaks in the same months every year, and the rule is to publish 45 days before the peak: the page then has time to collect rankings and user signals before demand arrives. Sunscreen peaks in June, May and April in the United States, so its publish-by date is April 24, 2027.

KwerixPublished

Seasonality chart of sunscreen showing seasonal keywords peaking in spring, with the publish-by date 45 days before the peak

What is a seasonal keyword?

A seasonal keyword is a search whose interest rises and falls in the same months every year. Sunscreen is seasonal in the United States: its monthly profile over 5 years runs from 11 in October to 53 in June, and the peak lands in June, May and April every year.

There are 4 steps to find seasonal keywords in Google Trends.

  1. Set the time range to 5 years, so every month appears at least 4 times.
  2. Average interest by calendar month to build a monthly profile.
  3. Check that the yearly peak lands in the same months year after year.
  4. Measure the swing between the highest and the lowest month; a large swing marks a seasonal keyword.

Seasonal, trending and evergreen keywords differ in how their interest moves over time.

TypeInterest over timeExampleWhen to publish
SeasonalPeaks in the same months every yearsunscreen45 days before the next peak
TrendingRises once around an eventa news storyWhile the trend is active
EvergreenStays flata reference topicAny time

When should you publish for a seasonal keyword?

Publish for a seasonal keyword about 45 days before its next peak. A page published 45 days early has time to be crawled, rank and collect user signals before demand arrives, which is the lead time the Google Trends API uses by default. For sunscreen, the next peak is June 8, 2027 and the publish-by date is April 24, 2027, according to the API’s sample output.

The Google Trends API flags seasonality with 5 fields in every row.

  1. isSeasonal: true when the monthly swing is large and the peak repeats in the same months.
  2. peakMonths and monthlyProfile: the peak months and the average interest per calendar month.
  3. nextPeakDate: the next expected peak.
  4. publishBy: the next peak minus the lead time, 45 days by default (seasonalityLeadDays).
  5. publishWindowOpen: whether the publish-by date is still ahead.
"seasonality": {
  "isSeasonal": true,
  "peakMonths": ["Jun", "May", "Apr"],
  "nextPeakDate": "2027-06-08",
  "publishBy": "2027-04-24",
  "publishWindowOpen": true
}

Seasonality comes back empty for ranges shorter than 2 years, and the peak dates are empty when a keyword is not seasonal. The Google Trends interest over time page covers the series underneath.

Seasonal keywords FAQ

Does seasonality need 5 years of Google Trends data?

No. The Google Trends API computes seasonality from 2 years or more, and 5 years make the pattern and the peak months more reliable.

Is a trending topic a seasonal keyword?

No. A trending topic rises once around an event, while a seasonal keyword rises in the same months every year.

Sources