This report uses Google Trends data to study seasonal search interest for “tax software” in the United States. The purpose is to identify the annual seasonal pattern, compute average interest by month, and recommend a campaign launch window that begins before the expected peak in demand.
Google Trends reports normalized search interest rather than raw
search volume. Values range from 0 to 100, where 100 represents the
highest relative search interest during the selected time period and
geography. The data are collected in R using the gtrendsR
package, which provides an interface for retrieving Google Trends
results over time and by geography.
packages <- c(
"gtrendsR", "tidyverse", "lubridate", "openxlsx", "scales", "readxl"
)
installed <- rownames(installed.packages())
for (p in packages) {
if (!(p %in% installed)) install.packages(p)
}
library(gtrendsR)
library(tidyverse)
library(lubridate)
library(openxlsx)
library(scales)
This analysis pulls three years of U.S. web search interest for the seasonal product keyword “tax software”.
keyword <- "tax software"
cache_file <- "tax_software_google_trends_data.xlsx"
if (file.exists(cache_file)) {
interest <- readxl::read_excel(cache_file)
} else {
trend_raw <- gtrends(
keyword = keyword,
geo = "US",
time = "today+5-y",
gprop = "web",
onlyInterest = TRUE
)
interest <- trend_raw %>%
as_tibble() %>%
mutate(
date = as.Date(date),
hits = as.numeric(ifelse(hits == "<1", 0.5, hits)),
month = month(date, label = TRUE, abbr = FALSE),
month_num = month(date),
year = year(date)
) %>%
filter(date >= Sys.Date() - years(3)) %>%
select(date, year, month_num, month, keyword, hits, geo, time)
write.xlsx(
interest,
file = cache_file,
overwrite = TRUE
)
}
head(interest)
## # A tibble: 6 × 8
## date year month_num month keyword hits geo time
## <dttm> <dbl> <dbl> <chr> <chr> <dbl> <chr> <chr>
## 1 2021-06-20 00:00:00 2021 6 June tax software 6 US today+5-y
## 2 2021-06-27 00:00:00 2021 6 June tax software 6 US today+5-y
## 3 2021-07-04 00:00:00 2021 7 July tax software 5 US today+5-y
## 4 2021-07-11 00:00:00 2021 7 July tax software 6 US today+5-y
## 5 2021-07-18 00:00:00 2021 7 July tax software 5 US today+5-y
## 6 2021-07-25 00:00:00 2021 7 July tax software 6 US today+5-y
The scraped Google Trends data are exported as an Excel spreadsheet for submission with this report.
write.xlsx(
interest,
file = "tax_software_google_trends_data.xlsx",
overwrite = TRUE
)
ggplot(interest, aes(x = date, y = hits)) +
geom_line(linewidth = 0.8) +
geom_point(size = 1.6) +
scale_x_date(date_breaks = "3 months", date_labels = "%b %Y") +
labs(
title = "Google Trends Interest for Tax Software in the U.S.",
subtitle = "Three-year web search trend",
x = "Date",
y = "Search interest, normalized 0–100"
) +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
monthly_avg <- interest %>%
group_by(month_num, month) %>%
summarize(avg_interest = mean(hits, na.rm = TRUE), .groups = "drop") %>%
arrange(month_num)
monthly_avg
## # A tibble: 12 × 3
## month_num month avg_interest
## <dbl> <chr> <dbl>
## 1 1 January 26.3
## 2 2 February 32.6
## 3 3 March 33.0
## 4 4 April 29.2
## 5 5 May 16.8
## 6 6 June 11.3
## 7 7 July 11.0
## 8 8 August 10.7
## 9 9 September 12.5
## 10 10 October 11.3
## 11 11 November 13.5
## 12 12 December 13.4
ggplot(monthly_avg, aes(x = reorder(month, month_num), y = avg_interest)) +
geom_col() +
labs(
title = "Average Google Trends Interest by Month",
subtitle = "Keyword: tax software",
x = "Month",
y = "Average search interest"
) +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
peak_month <- monthly_avg %>%
filter(avg_interest == max(avg_interest, na.rm = TRUE))
peak_month
## # A tibble: 1 × 3
## month_num month avg_interest
## <dbl> <chr> <dbl>
## 1 3 March 33.0
The Google Trends analysis shows a strong seasonal pattern for the keyword “tax software” in the United States. Average monthly interest peaks in March (33.04) and remains high in February (32.65) and April (29.19). Search interest drops substantially after the tax filing season, reaching its lowest levels during the summer months.
The time-series chart also shows a dramatic spike during the 2026 tax season, where search interest reached the normalized value of 100. This indicates that consumers actively seek tax preparation software immediately before filing deadlines.
Based on these findings, marketers should begin advertising campaigns in late January or early February so that promotional efforts are visible before peak search activity occurs in March.
The highest average monthly search interest occurred in March. Therefore, the optimal campaign launch window is between late January and early February (approximately 2–4 weeks before the peak search period). Launching campaigns during this period allows marketers to reach consumers while search activity is rising but before competition becomes most intense.
Google Trends data are normalized, not raw search counts. A value of 100 represents the highest relative interest within the selected query, region, and time period. Therefore, the results are best interpreted as relative demand patterns rather than exact market size. In addition, search interest may be affected by tax deadlines, policy changes, advertising, news coverage, and broader economic conditions.
gtrendsR: Perform
and Display Google Trends Queries. CRAN. https://cran.r-project.org/web/packages/gtrendsR/