SEO forecasting estimates how much organic traffic a set of pages or keywords will earn over a future period. Mechanically it is a search volume multiplied by an expected click-through rate at an expected position, spread across a ramp. This guide is for the growth lead or in-house SEO manager who has to put an organic number in front of a board next quarter, and would rather not be held to a figure they cannot defend. The structural problem: almost every forecast template multiplies by a click-through rate curve, and that curve moved. What follows is the structure, the adjustment for AI features, and how to present a range instead of a promise.
The short version
- The load-bearing number in most forecasts has an expiry date, and nobody writes it down. Ahrefs ran the same comparison twice: on data through March 2025 it reported a 34.5% lower click-through rate for the top-ranking page when an AI Overview was present, and on December 2025 data the same comparison returned 58%.
- An SEO forecast is search volume multiplied by an expected click-through rate at an expected position, ramped over time. Both inputs are less stable than the spreadsheets assume.
- Google publishes no official click-through rate curve. Every benchmark in every template is a third-party aggregation with a collection window, and most templates omit the window.
- The fix is not a better constant. It is a low, base and high estimate with the single assumption that separates them written down.
- Forecast traffic. Hand revenue to a separate model. Never present the join between them as one number.
What is SEO forecasting?
Arithmetic on assumptions, not prediction. An SEO forecast takes a set of keywords or pages, assumes a position each will reach, multiplies the monthly search volume by the click-through rate you expect at that position, and spreads the result over the months you think it will take to get there.
That framing matters more than it sounds. A prediction is a claim about the future; arithmetic on assumptions is a claim about your inputs. The output is only ever as defensible as the weakest number feeding it, so the job is not "produce a number" but "produce a number whose assumptions someone can argue with."
The three inputs, in descending order of how much trouble they cause:
- Expected click-through rate: the input almost nobody dates, and the one that has changed most since 2024. This is where the rest of this guide spends its time.
- Expected position: a judgment about competitiveness, authority and content quality. Uncertain, but visibly so, which is why it tends to get discussed.
- Search volume: a seasonal tool estimate with its own error bars, and usually the input people trust most despite being modeled rather than measured.
How do you forecast SEO traffic, step by step?
Start from measured reality, then layer assumptions on top of it in an order you can unwind. The sequence below produces a forecast you can hand to a skeptical reader without a live walkthrough.
Step 1. Pull the baseline from Search Console, not from a tool estimate: export impressions, clicks, average position and click-through rate for the last full twelve months, split into branded and non-brand queries. Third-party traffic estimates are modeled from rank data and are the right tool for competitors, where you have no alternative. In our implementation work the baseline always comes from the property itself, because a forecast built on someone else's estimate of your current traffic inherits their error before it adds any of its own.
Step 2. Choose one cluster, not the whole site: pick a coherent group of ten to forty keywords that a specific set of pages could plausibly win. Site-wide forecasts hide their own arithmetic. Cluster-level forecasts can be checked.
Step 3. Set the position assumption per keyword, with a reason: current position, target position, and one line on why the move is achievable. "Top three" for a term where the incumbents have hundreds of referring domains and you have none is not an assumption, it is a wish.
Step 4. Set the click-through rate assumption, and record where it came from: your own Search Console curve where you have enough data, a named external study where you do not. The source and the collection year belong in the same row as the number.
Step 5. Flag the SERP features on each target query: check whether the query currently returns an AI Overview, a featured snippet, a video carousel, shopping results or a large People Also Ask block. Position one is not the top of the page any more, and the flag is what stops you pretending otherwise.
Step 6. Ramp it, do not switch it on: traffic does not arrive the month a page ranks. Spread the gain across the months you expect the position to improve, and be honest that the ramp is the softest part of the model.
Step 7. Produce three numbers, not one: a low, a base and a high, each differing by exactly one named assumption.
When not to bother: if the site has no indexed pages in the target cluster and no measurable non-brand impressions, a forecast is theater. Present a stage and a set of leading indicators instead, which is covered further down.
Where do SEO forecasts get their CTR numbers, and are those numbers still true?
From third-party studies, and less true than they were.
Google publishes no official click-through rate curve. It never has. Every position-by-position benchmark you have ever pasted into a spreadsheet is an aggregation built by a tool vendor, an agency or a publisher, from a sample they chose, over a window they picked. That is not a criticism of those studies. It is the reason the collection window belongs next to the number.
The reference points worth knowing, each with its window attached:
| Study and data window | What it measured | Reported figure |
|---|---|---|
| Ahrefs, data through March 2025, published April 2025 | Average desktop CTR for the top-ranking page, AI Overview present versus absent, across 300,000 keywords split evenly between the two groups, using aggregated Search Console data | 34.5% lower with an AI Overview present |
| Ahrefs, December 2025 data, published February 2026 | The same comparison, same sample design, roughly nine months of additional AI Overview rollout later | 58% lower with an AI Overview present |
| GrowthSRC, 2024 compared with 2025 | Position 1 average CTR year over year, from roughly 74,000 top-ten keywords drawn from a 200,000-keyword set across 30-plus sites in ecommerce, SaaS, B2B and EdTech | 28% falling to 19% |
| GrowthSRC, same study and window | Average CTR for positions 6 to 10, year over year | Up 30.63% |
The Ahrefs pair is the most useful thing on that table, and not because of either number. It is useful because it is the same organization running the same comparison twice and getting a materially different answer. Ahrefs' own update to its AI Overviews click-through study reports the December 2025 figure. If a curve built in 2022 is still sitting in your model, that is the size of the error you are carrying.
Three caveats belong with those figures, because citing them without the caveats repeats the mistake they are meant to fix:
- Correlation, not causation: Ahrefs describes the relationship as a correlation. Queries that trigger AI Overviews skew informational, and informational queries may have been trending toward lower click-through for reasons unrelated to the feature.
- The two runs are not a clean delta: the baselines the two studies compare against are not identical, so the move from 34.5% to 58% is direction and rough magnitude, not a precise measurement of how much worse things got.
- Desktop, and position one: these are desktop rates for the top-ranking page. Applying them unmodified to a position-seven mobile-heavy query is not what the study measured.
The mechanism is documented rather than inferred. Google's guidance on AI features and your website states that AI Overviews and AI Mode may use a query fan-out technique, issuing multiple related searches across subtopics, and that this lets Google "display a wider and more diverse set of helpful links associated with the response than with a classic web search." That is the polite description of a page where your position-one link competes with more things than it used to. Our guide to Google AI Overviews covers how those answers get assembled and cited.
The GrowthSRC finding that positions 6 to 10 gained click-through rate points the same way from the other end. It comes from a study of roughly 74,000 top-ten keywords, one dataset from one set of sites, so treat it as a signal rather than a law. It fits the mechanism: when the top of the page is crowded, the relationship between position and clicks flattens.
How should you adjust an SEO forecast for AI Overviews?
Apply a reduction you can name, to the queries that actually trigger the feature, and record both facts in the spreadsheet. The adjustment is a decision, not a constant, and the difference is the whole point.
The wrong version is a blanket "reduce everything by half," applied to every row including queries that return no AI Overview at all. That is not conservatism, it is noise. The right version has three parts:
- Check, per query, whether an AI Overview currently appears: a manual or tool-assisted SERP check on your target list. Feature presence varies enormously by query type, and this step turns the adjustment from a mood into data.
- Apply a stated reduction only to the flagged rows: anchor it to something citable. The two runs of the Ahrefs study bracket the range you will see quoted elsewhere, from roughly a third to nearly six tenths depending on collection date. Scale it down for lower target positions and for commercial rather than informational intent, since that is not what the study measured.
- Write the reduction and its source into the row: "For example, 45%, from the Ahrefs December 2025 study, scaled down for a position-five target" is auditable. A formula with
*0.55buried in it is not.
The honest limitation: nobody has published a validated, position-by-position, intent-by-intent AI Overview haircut, and anyone claiming a precise multiplier is selling confidence rather than measurement. The reduction you pick is a judgment. Making it visible, sourced and arguable is the best available outcome, and far better than the invisible judgment most models already contain.
What belongs in an SEO forecast template?
Eleven columns, two of which almost no public template includes. The demand for a downloadable forecast spreadsheet is real, but the file is not the useful part. The column structure is, because it decides whether anyone can check your work.
| Column | What it holds | Why it earns a column |
|---|---|---|
| Keyword or cluster | The target term, or the cluster name | Defines the unit you can check later |
| Current position | Average position from Search Console | The measured starting point |
| Target position | Where you expect to land, plus a one-line reason | Forces the competitiveness judgment into the open |
| Monthly search volume | The tool estimate, with the tool named | Volume estimates differ widely between tools |
| CTR source and its date | Which study or property the rate came from, and when it was collected | The column that makes the forecast auditable: an undated rate is an unsourced claim |
| SERP feature flags | AI Overview, featured snippet, PAA, video, shopping: present or absent | Stops you treating position one as the top of the page |
| Adjusted CTR | The rate after any feature reduction | Separates the benchmark from your judgment about it |
| Low / base / high | Three traffic estimates, not one | The output a finance stakeholder can work with |
| Ramp month | When you expect the gain to start landing | Makes an annual total checkable monthly |
| Assumption note | One line, plain language, per row | The row's argument, where it cannot be lost |
| Actual | Empty at forecast time, filled monthly | A forecast nobody scores teaches nothing |
The two bolded columns are the ones worth adding to whatever template you already use. Every public forecast spreadsheet has volume, position and a click-through rate. Almost none records where the rate came from or which SERP features were on the page when the assumption was made, which is why so many forecasts quietly rot.
Should you forecast traffic, leads, or revenue?
Traffic here, revenue in a separate model, and label the join between them. A traffic forecast carries two uncertain inputs. Leads sit between the two, and forecasting them is defensible only if you own the conversion rate as a measured number rather than an assumed one. A revenue forecast adds conversion rate, sales cycle length, close rate and average customer value on top, and in B2B it adds a lag that can run two or three quarters.
Multiplying all six into one headline figure does not produce a better forecast. It produces a number whose error is impossible to locate, which is the opposite of what a CFO wants. When the figure misses, nobody can say whether the traffic assumption or the conversion assumption was wrong.
Keep them as two artifacts with a visible seam. Our guide to SEO ROI and the lag-adjusted model owns the revenue side, including the delay between the click and the closed deal. This guide stops at sessions, deliberately.
How accurate is SEO forecasting?
Useful for one to two quarters, decreasingly so after that, and close to worthless past a year. Accuracy decays for a compounding reason: the error in each input multiplies against the error in every other input, and the click-through rate input is now visibly moving year over year.
In my experience, the most effective approach is to present three scenarios that differ by exactly one named assumption each, rather than one number with a confidence caveat attached. A single figure with "give or take" next to it gets read as the figure. Three scenarios with the assumption written on each get read as a model, and the conversation moves to whether the assumptions are right. That is the conversation where you are useful rather than exposed.
A workable structure:
- Low: current click-through rate curve, target positions slipping one to two places, ramp arriving a quarter late.
- Base: current curve, target positions as planned, ramp as planned.
- High: positions as planned, plus one named upside, such as a featured snippet capture on the two highest-volume terms.
This is the same position this studio takes on timelines. Our guide to a realistic SEO timeline argues that what you can honestly give a stakeholder is a range with its assumptions attached, not a date. A traffic forecast is the same object with a different unit on the axis.
What are the four ways an SEO forecast fails?
Four, and each has a tell you can spot in someone else's spreadsheet in about a minute.
| Failure | The tell | The fix |
|---|---|---|
| Stale CTR curve | No date anywhere near the click-through rate. Ask where it came from and the answer is a shrug or a blog post with no methodology | Date it or refuse to use it. Prefer your own Search Console curve where the data supports one |
| Ignored SERP features | Position one is treated as the top of the page. No column records whether an AI Overview or snippet is present | Add feature flags per query and apply the reduction only to the flagged rows |
| A single number instead of a range | One figure in the deck, usually rounded, usually the base case with the label removed | Low, base and high, each differing by one named assumption |
| Forecasting the wrong thing | A traffic model presented as a revenue commitment, with conversion rate quietly hardcoded | Forecast traffic, hand revenue to the ROI model, and label the join |
The first two are errors of omission, and the common ones. The third is usually pressure rather than error: someone asked for one number and got one. The fourth is the expensive one, because it turns a modeling exercise into a broken promise.
What do you present when you cannot forecast honestly?
A stage, a set of leading indicators with expected direction, and a review window. This is the most useful section for anyone whose site is genuinely too young to model, which is more people than admit it.
A curve-based forecast needs a curve, and a curve needs enough clicks at enough positions to be anything other than noise. On a young property with a few thousand monthly impressions at an average position in the sixties, the measured click-through rate in most position bands is effectively zero. Multiply a search volume by zero and the forecast returns nothing, which is arithmetically correct and commercially useless.
What to hand over instead:
- The stage: indexation, early impressions, position improvement, or click growth. Each has a different next milestone and a different honest expectation.
- Leading indicators with a direction, not a value: indexed pages in the target cluster, non-brand impressions, queries ranking in the top twenty, average position on the target set. Commit to the direction and the review date, not the magnitude.
- The review window: the date you will return with either a real forecast or a revised stage assessment. A forecast declined with a date attached reads as discipline. Declined with no date, it reads as evasion.
Say the refusal out loud: "I can give you a defensible traffic forecast for this cluster once we have a quarter of non-brand impression data, and here is what I will be watching until then." Most stakeholders take that better than practitioners expect. The ones who do not were going to hold you to a fabricated number anyway.
How do you track a forecast against actuals?
Monthly, in Search Console, on exactly the keyword set you forecast. Not a site-wide traffic chart, which moves for a dozen reasons unrelated to your model, and not a rank tracker, which measures a different thing from the metric you forecast.
Two mechanics worth getting right, both documented by Google:
- AI feature traffic is already in your numbers: Google's documentation on AI features and your website states that sites appearing in AI features such as AI Overviews and AI Mode are included in the overall search traffic in Search Console, and are reported in the Performance report within the Web search type. There is no separate bucket to add, and it sits in your baseline whether you accounted for it or not.
- Average position is the topmost result: the Search Console Performance report documentation defines average position as the position of the topmost result from your site. If two of your pages compete on a query, the metric reports the better one, so a "position improvement" can be a cannibalization artifact rather than a gain. The same distortion runs through any aggregate visibility metric built on the same average-position data, which is why our guide to specifying a share-of-voice denominator before you calculate treats the query set as the first fixed decision rather than an afterthought.
When impressions climb and clicks stay flat, work through the causes in order. The first checks are the ones in our guide to measuring organic performance in GA4 and in the metrics that belong in an SEO report: title and snippet relevance, intent match, and whether impressions are arriving at positions too low to earn a click. Those remain the most common explanations and the cheapest to fix.
There is now a further cause to add to that list, and it is the one this article exists to name: the click may be absorbed by a feature above your result. The SERP feature flag you recorded at forecast time is what tells them apart. If impressions rose on queries flagged as AI Overview present and average position held steady, the snippet is probably not your problem. If the flat clicks sit on unflagged queries at improving positions, it very likely is. And on a young site, flat clicks alongside rising impressions can simply be normal early-stage progress, with position improving from a base too low to convert yet.
Where to start this week
Pick one cluster, not the site. Pull twelve months of Search Console data for it, split branded from non-brand. Check the current SERP for your ten highest-volume target queries and write down which return an AI Overview today. Then build three scenarios in eleven columns, with a source and a year sitting next to every click-through rate.
The habit worth building is smaller than the model: date every assumption at the moment you make it. A forecast is not made wrong by being uncertain. It is made indefensible by being unable to explain where its numbers came from, and that failure is avoidable with one extra column. If you want a second pair of eyes on the baseline or the model, that sits inside our SEO reporting and analytics work.
Need an Organic Growth Strategy?
Work directly with GrowthHasten to build a long-term SEO and content roadmap tailored to your business goals.
Schedule a Strategy CallFrequently Asked Questions
What is SEO forecasting?
SEO forecasting estimates how much organic traffic a set of pages or keywords will earn over a future period. Mechanically it is a search volume multiplied by an expected click-through rate at an expected position, spread across a ramp. It is arithmetic on assumptions rather than a prediction, which is why the assumptions matter more than the output.
How accurate is SEO forecasting?
Reasonably useful for one to two quarters and unreliable beyond that. Both inputs move: search volume shifts seasonally and by category, and click-through rates at a given position have changed materially as AI Overviews and other SERP features displaced the blue links. A forecast presented as a low, base and high range with its assumptions written down survives contact with reality. A single number does not.
What CTR should you use in an SEO forecast?
Whichever one you can date and cite, and preferably your own. Google publishes no official click-through rate curve, so every public benchmark is a third-party aggregation with a collection window. Pull your own click-through rate by position from Search Console where you have enough data, and where you do not, name the external source and the year it was measured.
How do AI Overviews change an SEO forecast?
They break the assumption that a given position earns a given share of clicks. Ahrefs, using December 2025 data, reported that the presence of an AI Overview correlated with a 58% lower average desktop click-through rate for the top-ranking page, up from 34.5% on data through March 2025. The practical response is to flag which target queries trigger an AI Overview, apply a stated reduction to those rows, and record the reduction as an assumption rather than burying it in a formula.
What should an SEO forecast template contain?
At minimum: the keyword or cluster, current and target position, monthly search volume, the click-through rate you applied with its source and date, flags for which SERP features are present, the adjusted rate after any reduction, a low, base and high estimate, the ramp month, and a one-line assumption note per row. The source-and-date column and the SERP-feature flags are the two most templates omit, and they are the two that make the forecast auditable.
Should you forecast traffic or revenue?
Forecast traffic, then hand it to a separate revenue model, and label the join. Traffic forecasting has two uncertain inputs; revenue adds conversion rate, sales cycle length, close rate and customer value on top. Combining them into one figure hides where the uncertainty lives, which is exactly what a finance stakeholder will want to interrogate.

Anshuman Sinha
AI SEO Specialist, GrowthHasten
Anshuman Sinha is an AI SEO Specialist and Computer Science Engineer with over three years of experience in SEO and five years in web development. He specializes in Technical SEO, AI Search Optimization (AEO and GEO), SaaS SEO, and building high-performance websites with modern technologies.
View profile



