A 3 Step Model For High Seasonality Forecasting

In many verticals, much of the year’s business gets done during a short period. For instance, tax software is mostly sold at the end of January in the US when the W2 forms are mailed and right before the last day of submission in mid April. This is seen clearly in the Google Trends chart for the query:

Impression Trends for “tax software”. Note the sharp peaks at the end of January when W2 forms arrive and the day before tax day (mid April

For a SEM campaign manager, this situation is a mixed blessing. On the positive side, one knows which times of the year are important and can plan well in advance for it. On the negative side, the high seasonality period is a critical one as the performance of every single day matters.

If one can forecast performance well ahead of high period, one can plan various elements of the search campaign such as daily budgeting, revenue and order goals,  creative roll out, etc. Further, accurate forecasting alleviates a lot of the stress for the search manager as the right expectations are set throughout the organization.

Although advanced econometric methods when used with sophisticated forecasting algorithms can give very accurate forecasts, these techniques can be complicated as several factors need to be considered – the growth of the business, the competitive landscape, macro economic conditions.

However, when constrained with time, I often use the following three step forecasting method that gives very good results.

The Three Step Forecast Model

Step 1:  Build a baseline Ad Budget to Revenue Elasticity curve

The first step is to build a curve that estimates the expected revenue for different levels of spend just before the season starts. If you do not have an algorithmic way of doing this, then you can build such a curve by calculating average revenue for different levels of spend in the month preceding the high season in the past year.

The baseline which represents the market conditions, just before your promotion starts should represent market conditions just before the high season. An example curve is shown below:

Step 2:  Adjust Elasticity Curves with a 4 Factor Model

When the high season kicks in, the elasticity curve shifts because there is more demand for the product. Let us capture this effect mathematically. Consider the following equations that capture spend and revenue:

Where RPC= Revenue per Click


Note that the above equations have only 4 terms ; CPC, RPC, Impressions and CTR. When market conditions change these 4 factors change and as a result each point on the curve shifts.

Consider a point on the baseline curve (Rbaseline,Cbaseline). If this point shifts to (Rnew,Cnew) then the new point can be expressed as:

Thus, if I know the change in impressions, CPC , RPC and CTR on a given day versus baseline, I can calculate the new elasticity curve for that given day.

Since you have data from the previous years and access to tools like Google trends (that captures impression volume), you can build a table of daily deltas of the 4 factors and use it to build the daily elasticity curves.

Note in the example below you can see that days 9,10,11 are the peak sale days. Also, CTRs are assumed to be constant during the high season, which is a fair assumption unless you are planning to do TV advertising during this period. If that’s the case, CTR deltas should also be estimated.


Step 3:  Building out the forecast

The hard part is now done as you have daily forecasted elasticity curves for the high season period. Now it’s a matter of selecting the daily budget during the forecast that meets your goal.

For instance, if your goal is to ensure an ROI of 300% per day then based on the above data you get a spending schedule that looks like this:

Final Notes

  1. The success of this method depends a lot on the elasticity curve. Hence, make sure you are confident that the curve is reasonably accurate. You can check the validity of the curve by checking if the curve predicts revenue well for different budget levels at times close to your coming high season.
  2. Always correct your forecasts during the high season by normalizing the forecasted versus actuals for the previous days.
  3. All calculations here have been done with Revenue as my KPI. However, this technique is not limited by the KPI. One can build the model with KPIs such as orders, margin or even a weighted combination of KPIs.
  4. In the above example, we have tried to ensure that the ROI is above a threshold every day. We note that if the goal is to maintain a certain ROI for the entire high season, then an optimization approach is more appropriate than the approach above where it often pays to garner more volume at a lower ROI during the peak days and make up for it by spending less at higher efficiency in the lower volume days. However, this opens up the whole new topic of budget pacing which I shall leave for a future post.

Opinions expressed in the article are those of the guest author and not necessarily Search Engine Land.

Related Topics: Channel: SEM | Enterprise SEM


About The Author: is Director, Business Analytics at Adobe. He leads a global team that manages the performance of over $2 BN dollars of ad spend on search, social and display media at Adobe.

Connect with the author via: Email | Twitter | Google+ | LinkedIn


Get all the top search stories emailed daily!  


Other ways to share:

Read before commenting! We welcome constructive comments and allow any that meet our common sense criteria. This means being respectful and polite to others. It means providing helpful information that contributes to a story or discussion. It means leaving links only that substantially add further to a discussion. Comments using foul language, being disrespectful to others or otherwise violating what we believe are common sense standards of discussion will be deleted. Comments may also be removed if they are posted from anonymous accounts. You can read more about our comments policy here.
  • Dan Lewis

    What method do you use to predict the change in revenue per click?

  • http://twitter.com/drsidshah Dr. Siddharth Shah

    Hi Dan: I use the previous years RPCs in the high period compared to the
    baseline in the previous year to estimate the RPCS. If you have more
    time and two years or more of daily data you can build a time series
    model to estimate daily RPCS. For instance : you can build a three
    parameter Holt Winters (exponential) model , one to capture multi year
    trends , one for seasonal trends and a third one to capture short term
    high seasonality trends


Get Our News, Everywhere!

Daily Email:

Follow Search Engine Land on Twitter @sengineland Like Search Engine Land on Facebook Follow Search Engine Land on Google+ Get the Search Engine Land Feed Connect with Search Engine Land on LinkedIn Check out our Tumblr! See us on Pinterest


Click to watch SMX conference video

Join us at one of our SMX or MarTech events:

United States


Australia & China

Learn more about: SMX | MarTech

Free Daily Search News Recap!

SearchCap is a once-per-day newsletter update - sign up below and get the news delivered to you!



Search Engine Land Periodic Table of SEO Success Factors

Get Your Copy
Read The Full SEO Guide