Skip to content

GetCited Blog

Chapter 8 · SEO Tools

SEO Forecasting Tools: What SEOs Actually Use, Compared

Spreadsheets, Excel's ETS forecast, BigQuery ML, Python Prophet, SEO suites and dedicated platforms: how each one models a forecast, how to test its accuracy, which free options hold up, and what to use in an agency pitch.

Updated October 202614 min read
In one line

SEO forecasting tools either extend your own traffic history forward (time-series models) or estimate what new rankings would be worth (keyword-opportunity models). Most SEOs use a spreadsheet or a time-series library for the first and an SEO platform or their own sheet for the second, and none of them should be trusted before you backtest it on your own data.

There is no single standard SEO forecasting tool. What people use depends on the question being asked: "what will traffic do next quarter if we keep going?" needs a different tool from "what is ranking on page one for these 40 keywords worth?". This guide sorts the options by how they work, compares them on properties you can check, shows how to test a tool's accuracy, and covers what to use when the forecast goes into an agency pitch.

This page is about software. For the method itself (baseline, seasonality, CTR-by-position model, ranking scenarios and a spreadsheet template), read how to forecast SEO traffic, step by step.

Illustration of SEO forecasting tools projecting traffic with confidence ranges

How SEO forecasting tools model a forecast

Before comparing products, find out which engine a tool runs. It decides what the tool can and cannot tell you.

Time-series forecasting looks only at your past traffic (usually daily or weekly clicks from Search Console, or sessions from Analytics), finds the trend and seasonal pattern, and projects it forward with an uncertainty interval. Common methods are exponential smoothing (ETS), ARIMA-family models and Prophet. It answers "where is traffic heading if nothing unusual happens?" It cannot tell you the effect of work you have not done yet, and it does not know a core update is coming.

Year-on-year seasonal ratios are a simpler cousin: take the same weeks last year and scale them by how this year is running against last year. There is no model to fit, the logic fits in one sentence, and it handles seasonality as long as you have a full year of history.

Keyword-opportunity forecasting starts from keywords: search volume × expected click-through rate at a target position, minus what you get today, often with a ramp-up period and scenarios. It answers "what is it worth if we rank here?" It depends heavily on third-party search volumes and on whichever CTR curve the tool assumes, and those assumptions are often not shown.

Good forecasts combine a time-series or seasonal baseline with a keyword-opportunity uplift on top. Few single tools do both well, which is why so many SEOs end up in a spreadsheet.

Think of it like weather and a garden

A time-series tool is a weather forecast: it tells you what is likely to happen based on patterns, and it gets worse the further out you look. A keyword-opportunity tool is a garden plan: it tells you what you could harvest if you plant certain things and they grow. You need both, and neither one knows whether a storm (a core update) is coming.

The tools, by category

Spreadsheets (Google Sheets, Excel). The most used option by far, because every input is visible. Google Sheets has FORECAST.LINEAR, TREND and GROWTH, which fit a straight line or exponential curve but do not model seasonality on their own; you add a seasonal index by hand. Excel goes further: FORECAST.ETS and the Data → Forecast Sheet command use exponential smoothing, detect seasonality automatically, and draw upper and lower confidence bounds (95% by default, adjustable).

Looker Studio and GA4. Looker Studio is a reporting layer: calculate the forecast in Sheets or BigQuery and chart it against actuals in Looker Studio. GA4 does not produce an organic traffic forecast. Its predictive metrics (purchase probability, churn probability, predicted revenue) are about users, need minimum volumes of conversion data, and are not a traffic projection. GA4's anomaly detection does use expected ranges to flag unusual days, which helps you spot when actuals leave the forecast band. See Looker Studio for SEO for the reporting setup.

BigQuery ML. If you use the Search Console bulk data export to BigQuery, you can forecast in SQL with CREATE MODEL ... OPTIONS(model_type='ARIMA_PLUS') and ML.FORECAST, which returns a forecast plus lower and upper prediction-interval bounds. It handles seasonality and holiday effects and runs on the full daily history without exporting anything. See BigQuery and SQL for SEO for the export setup.

Python and R libraries. Prophet (open-sourced by Meta) fits trend, yearly and weekly seasonality and holidays, and handles missing days and trend changes without much tuning. statsmodels gives you classical models: ExponentialSmoothing (Holt-Winters) and SARIMAX. In R, the forecast and fable packages cover the same ground, and Google's CausalImpact package is widely used to estimate whether a change caused a lift by comparing actuals with a modeled counterfactual. See Python for SEO and R for SEO.

Built-in estimates in SEO suites. Ahrefs, Semrush and similar platforms show estimated traffic per keyword or per page, and some add a "traffic potential" figure for what a page could get if it ranked at the top. These are keyword-opportunity estimates built on the vendor's own volume data and CTR model. They are quick for comparing opportunities, but they describe the vendor's model of the market rather than your site's measured traffic, and they rarely show uncertainty.

Dedicated forecasting platforms. A smaller group of tools, SEOmonitor being the best-known example, are built around keyword-level forecasting: you pick keywords and target positions, and the tool combines volume, seasonality, current rankings and a CTR model into a projection, usually with scenarios aimed at agency proposals. Before relying on one, read how the vendor documents its CTR assumptions and whether it uses your Search Console data or only third-party data.

Search Console reporting tools with a forecast view. Some Search Console dashboards add a short forecast next to the reporting. GetCited's Search Console module is one; it is described in its own section below so you can judge it on the same terms as the rest.

Comparison table

Only properties that are part of how each tool works are listed. Pricing changes often, so check current plans with each vendor.

ToolMethodHandles seasonalityUncertainty rangeSkill neededBest for
Google Sheets (FORECAST.LINEAR, TREND)Linear / exponential fitOnly if you add a seasonal indexNo, build scenarios yourselfLowTransparent keyword-opportunity models
Excel (FORECAST.ETS, Forecast Sheet)Exponential smoothingYes, detected automaticallyYes, confidence boundsLowQuick baseline from monthly or daily clicks
BigQuery ML (ARIMA_PLUS)ARIMA with seasonal and holiday componentsYesYes, prediction intervalsSQLLarge sites already exporting GSC to BigQuery
Python ProphetAdditive trend + seasonality + holidaysYes (yearly, weekly)Yes (80% interval by default)Python basicsDaily GSC clicks with clear seasonality
Python statsmodelsHolt-Winters, SARIMAXYesYesPython + some statisticsAnalysts who want to choose and test the model
R CausalImpactBayesian structural time seriesYesYesR basicsMeasuring whether a change caused a lift
SEO suite traffic estimatesKeyword volume × vendor CTR modelPartly, via monthly volumesRarely shownLowComparing keyword opportunities fast
Dedicated forecasting platforms (e.g. SEOmonitor)Keyword opportunity + seasonality + scenariosYesUsually as scenariosLowAgency proposals and keyword-level targets
GetCited Traffic Forecast tabSame weeks last year × this year's year-on-year growthYes, from last year's weeksYes, from weakest and strongest weekly ratiosNoneAn 8-week outlook next to Search Console reporting

What tool do SEOs use for forecasting, by job

QuestionPractical choice
What will organic traffic be next quarter if we change nothing?Excel Forecast Sheet or Prophet on 16 months of Search Console clicks
Are we on track for the next couple of months?A year-on-year seasonal ratio on weekly clicks, in a sheet or a Search Console tool that does it for you
What is ranking for this keyword cluster worth?A spreadsheet opportunity model with your own CTR curve, or a suite estimate as a cross-check
We need a 12-month plan with scenarios for a budgetTime-series baseline plus a spreadsheet opportunity model with three scenarios
Did our change cause the lift?CausalImpact, or a test/control comparison of changed vs unchanged pages
We have years of daily data for hundreds of sectionsBigQuery ML ARIMA_PLUS, one model per section

Free SEO forecasting options

You do not need a paid tool to forecast well. Search Console gives you 16 months of click data at no cost, and these free options cover most needs:

Spreadsheet. Google Sheets or Excel with a seasonal index, a CTR-by-position table and three scenarios. It is the most transparent option and the easiest to hand to a client. Excel's Forecast Sheet adds automatic seasonality and confidence bounds in a few clicks.
Looker Studio. Not a forecasting engine, but the free way to show a forecast band against actuals every month. Keep the forecast in a Google Sheet and connect it as a second data source next to Search Console.
Python. Prophet and statsmodels are free and run on a laptop. They take more setup than a sheet but give you prediction intervals and repeatable backtests, as in the script below.

A short Python Prophet example on GSC daily clicks

Export daily data from Search Console (Performance → Search results, last 16 months, Export, then use the Dates table, which has Date and Clicks columns). Install with pip install prophet pandas. The script first backtests on the last 90 days so you know how far to trust it, then refits on everything and forecasts six months.

import pandas as pd
from prophet import Prophet

df = pd.read_csv("Dates.csv")[["Date", "Clicks"]]
df.columns = ["ds", "y"]
df["ds"] = pd.to_datetime(df["ds"])
df = df.sort_values("ds")

def make_model():
    m = Prophet(yearly_seasonality=True, weekly_seasonality=True,
                interval_width=0.8)               # 80% interval
    m.add_country_holidays(country_name="US")     # change to your main market
    return m

# 1. Backtest: train on everything except the last 90 days
cutoff = df["ds"].max() - pd.Timedelta(days=90)
train, test = df[df["ds"] <= cutoff], df[df["ds"] > cutoff]
m = make_model().fit(train)
pred = m.predict(test[["ds"]])

actual, fc = test["y"].to_numpy(), pred["yhat"].to_numpy()
mape = (abs(actual - fc) / actual.clip(min=1)).mean()
inside = ((actual >= pred["yhat_lower"].to_numpy()) &
          (actual <= pred["yhat_upper"].to_numpy())).mean()
print(f"Backtest MAPE: {mape:.1%}  |  share of days inside 80% band: {inside:.0%}")

# 2. Refit on all data and forecast 180 days ahead
m = make_model().fit(df)
future = m.make_future_dataframe(periods=180)
fcst = m.predict(future)

monthly = (fcst.set_index("ds")[["yhat", "yhat_lower", "yhat_upper"]]
           .resample("MS").sum().round())
print(monthly.tail(6))

Read the two backtest numbers before the forecast. MAPE (mean absolute percentage error) tells you how far off a typical day was. The share of days inside the band tells you whether the interval is well calibrated: if you asked for 80% and only half the days fall inside, the model is overconfident and your range should be wider. Summing daily lower and upper bounds into months, as above, gives a rough monthly band that is wider than a true monthly interval; use it as a cautious range, not an exact one.

Three adjustments matter more than tuning. Remove or flag known one-off events (a tracking outage, a viral day) before fitting. If a core update or migration changed the level of traffic, add it as a changepoint or train only on data after it. And forecast non-brand clicks separately if you can export them, because brand demand follows marketing, not SEO. For repeated backtests over several cutoffs, Prophet includes cross_validation and performance_metrics in prophet.diagnostics.

How accurate is a typical SEO forecasting tool?

No one can give you a fair general figure, and claims of a fixed accuracy percentage should be treated with suspicion. Accuracy depends on the site, the horizon and the method, not the brand of tool. What can be said with confidence:

Time-series tools are most accurate on stable sites over short horizons. A site with years of steady, seasonal traffic is far easier to project three months out than a young site, a site mid-migration, or any site twelve months out.
Keyword-opportunity tools are least accurate on the parts that matter most. Whether you reach the target position, how fast, and what CTR you get there are assumptions, not data.
Third-party traffic estimates do not match Search Console. Suites estimate from their own keyword panels and CTR models, and differences from your measured clicks can be large in either direction. Compare a suite's estimate for your own site against your Search Console clicks before trusting its estimates for anything else.

How to back-test any tool. The same test works for a spreadsheet, a library or a paid platform:

1. Hide the recent past. Pick a cutoff two or three months back and give the tool only the data before it.
2. Forecast the hidden period. Use the same settings you would use for a real forecast.
3. Score the error. Compare forecast with actual week by week. Mean absolute percentage error is easy to explain; also note whether the tool ran consistently high or low.
4. Score the range. Count how many actual weeks fell inside the tool's low-to-high band. A band that misses most weeks is overconfident.
5. Repeat with two or three cutoffs. One lucky quarter proves little. If the results hold across cutoffs, you have a number you can quote.

A measured error on your own site is worth more than any vendor claim. After that, track forecast against actual every month, so the next forecast starts from better inputs.

SEO forecasting is difficult because…

The short answer: search results are controlled by a third party that changes the rules without notice, and most of the inputs are estimates. In detail:

1. Algorithm updates are unpredictable. Google runs several core updates a year plus many smaller changes. They can move rankings sharply, and no historical pattern predicts the next one.
2. The results page keeps changing shape. AI Overviews, ads, shopping and video packs and People Also Ask can cut clicks at a given position even when your ranking does not move. Several industry studies have reported lower organic CTR where AI Overviews appear.
3. Search volume data is an estimate. Keyword tools round and average volumes, and different tools disagree.
4. CTR by position is not a constant. Published CTR curves differ by study, industry, device and intent.
5. Competitors act too. Your forecast assumes the other pages stay where they are; they do not.
6. Rankings take an uncertain time to arrive. Indexing and ranking new content can take weeks or many months.
7. Measurement is imperfect. Search Console omits some rare queries for privacy, Analytics depends on consent and tagging, and Google counts AI Overview and AI Mode activity inside normal Search Console totals, so you cannot cleanly separate it.
8. Execution is uncertain. A forecast assumes the planned pages and fixes ship on time.

None of this makes forecasting useless. It means a tool's output should be read as a range with named assumptions and re-run regularly, whichever tool produced it.

Choosing an SEO forecasting tool for an agency pitch

A pitch forecast has a different job from an internal one. It has to win trust from someone who does not know your methods yet, and it will be remembered when the results come in. That changes what you want from a tool:

Use the prospect's own data if you can get it. Ask for read access to Search Console before the pitch. A forecast built on their real clicks and CTR beats any third-party estimate, and asking for it signals that you measure rather than guess.
Pick a tool whose assumptions you can show on one slide. If you cannot say which CTR curve, volume source and ramp the tool used, you cannot answer the first challenge from a finance lead. Spreadsheets and dedicated platforms with documented assumptions do well here; black-box traffic estimates do not.
Show scenarios, not a single target. Conservative, expected and aggressive cases, each with a sentence explaining what has to happen. Tools that only output one number need a spreadsheet around them.
Separate the baseline from your contribution. Seasonal growth that would have happened anyway is not your result. A tool that shows last year's seasonal pattern next to the forecast makes this easy to explain.
Plan to re-forecast. Tell the prospect the forecast will be checked against actuals monthly and refreshed quarterly. That is easier with a tool that stores past forecasts or a sheet with a frozen, dated copy.

In practice many agencies use a dedicated platform or a suite for the keyword list, then rebuild the numbers in a spreadsheet they control before they present.

Limitations and risks of relying on an SEO forecasting tool

Hidden assumptions. If you cannot see the CTR curve, volume source and ramp the tool used, you cannot defend the number when someone challenges it.
False precision. A tool that outputs "14,382 visits in March" implies an accuracy no SEO forecast has. Round it and attach a range.
Third-party data presented as your data. Suite estimates describe a model of the market. Basing a budget on them without reconciling with Search Console builds the error into the plan.
Extrapolating the past into a changed SERP. A time-series model trained before AI Overviews appeared for your queries will keep projecting the old click pattern.
Turning a forecast into a commitment. Tool output pasted into a proposal reads as a promise. When it misses, the cost is trust, not just a number.
Forecasting the wrong metric. Clicks are not revenue. A tool that forecasts traffic says nothing about conversion rate or value; add those yourself, as in calculating SEO ROI.
No feedback loop. Most tools do not compare their own past forecasts with what happened. You have to do that, or you never learn whether the tool is any good for your site.

GetCited's Traffic Forecast tab

GetCited's Search Console module includes a Traffic Forecast tab. It forecasts Google clicks for the next 8 weeks using a year-on-year seasonal ratio: it takes the same weeks last year and multiplies them by this year's growth, where growth is clicks in the last 8 complete weeks divided by clicks in the same weeks a year earlier. The shaded range uses the weakest and strongest of those 8 weekly year-on-year ratios, so a choppy recent run gives you a wider band. It needs a year of Search Console history; without the same weeks last year, the tab says there is not enough data instead of drawing a line through a few points.

You can get the dashboard and Traffic Forecast free by requesting access with your work email.

It is a short-horizon check on whether you are on track, not a 12-month plan or a keyword-opportunity model, so pair it with a spreadsheet when you need scenarios. Plans are on the pricing page.

One thing no click forecast covers is AI answers. None of the tools above measures whether ChatGPT, Perplexity, Gemini or Google's AI Mode name your brand when people ask about your category, and clicks can fall while AI visibility rises, or the reverse. Track it as a separate metric next to the forecast; the AI visibility tracker records how often each engine mentions and cites you for a fixed set of prompts. For the Google side, see Google AI Overviews.

Mistakes to avoid

Picking a tool before the question. Baseline questions need time-series or seasonal tools; "what is this keyword worth" questions need opportunity models.
Skipping the backtest. Ten minutes of holding out the last 90 days tells you more about a tool's accuracy than any vendor claim.
Feeding the model polluted history. Outages, migrations and tracking changes in the training data get projected into the future.
Forecasting brand and non-brand together. Brand demand is driven by marketing, not SEO.
Reporting the point forecast alone. Always show yhat_lower and yhat_upper, or their equivalent, next to the central number.

Questions people ask

What tool do SEOs use for forecasting?
Most SEOs forecast in a spreadsheet, because every assumption stays visible and editable. For the traffic baseline they use Excel's Forecast Sheet (exponential smoothing), Python's Prophet or statsmodels, or BigQuery ML's ARIMA_PLUS. For keyword-level opportunity they use their own spreadsheet model, traffic estimates from suites such as Ahrefs or Semrush, or a dedicated forecasting platform such as SEOmonitor.
What is the best SEO forecasting tool?
There is no single best tool, because forecasting covers two different questions. For projecting your own traffic, a time-series tool fed with your Search Console clicks (Excel ETS, Prophet or BigQuery ML) is the strongest choice. For valuing keyword opportunities in an agency proposal, a dedicated platform or a transparent spreadsheet model works better. Pick the one you can backtest on your own data and explain to a client.
Are there free SEO forecasting tools?
Yes. Google Sheets and Excel both have forecast functions, and Excel's Forecast Sheet adds seasonality and confidence bounds at no extra cost. Looker Studio is free for charting a forecast against actuals, and Prophet, statsmodels and R's forecast package are free, open-source libraries. Search Console supplies 16 months of click data for all of them.
How accurate is a typical SEO forecasting tool?
There is no reliable general figure, and a vendor's headline accuracy claim tells you little about your site. Accuracy depends on how stable the site is, how far ahead you forecast and whether the tool uses your Search Console data or third-party estimates. Measure it by holding back the last few months of data, forecasting them, and checking both the error and how many actual weeks fall inside the predicted range.
Why is SEO forecasting difficult?
SEO forecasting is difficult because Google changes its algorithm and results pages without notice, AI Overviews and other features change click-through rates at a given position, search volume and CTR data are estimates, competitors keep publishing, and the time it takes to rank is uncertain. That is why a tool's output should be read as a range with named assumptions and re-run regularly.
Can I do SEO forecasting in Python?
Yes. Export daily clicks from Search Console, load them into pandas, and fit Prophet or a statsmodels Holt-Winters or SARIMAX model. Backtest on the last 90 days before trusting the forecast, and report the lower and upper bounds next to the central number.
Does SEOmonitor do SEO forecasting?
Yes. SEOmonitor is a rank tracking and SEO platform built for agencies, and keyword-level forecasting for proposals is one of its core features. As with any keyword-opportunity tool, check which CTR and search volume assumptions it uses and how they compare with your own Search Console data.
What are the risks of relying on an SEO forecasting tool?
The main risks are hidden assumptions about CTR and search volume, false precision from single-number outputs, third-party estimates that differ from your real traffic, models trained on a results page that has since changed, and forecasts being read as promises. Most tools also forecast clicks rather than revenue, and few compare their past forecasts with actual results.

Related from GetCited

AI Visibility Tracker

Monitor how AI engines cite your brand across ChatGPT, Perplexity, Gemini, and more.

Explore AI Visibility Tracker

Technical SEO & AEO Audit

Run 417+ checks on schema, crawlability, and AI-readiness in one scan.

Explore Technical SEO & AEO Audit

Content Engine

Create content purpose-built for AI citation, from brief to published page.

Explore Content Engine

Next step

AI visibility is half the journey. Let us show you the other half.