Why Forecasting is important for SEO - Part 2

by Jack Reid on Tuesday 11 September 2018

Find Part 1 of our guide to forecasting for SEO here.

Firstly it’s best to see the available past data as a graph.

  Figure 1.1 - Organic sessions graph over a 3 year period for a US fashion client

Figure 1.1 - Organic sessions graph over a 3 year period for a US fashion client

As this data is from a US fashion client, it can be noted there is a clear season pattern with peaks in December for the Christmas period.

Now that we’ve established there is seasonality to factor into our model, the seasonal index can be calculated. First set up a table with the data segmented by month (or whichever granular date range desired) and take averages across the 3 years. The table will look similar to this:

jackreid2.png

A seasonal factor can then be calculated by dividing the monthly average (seasonal average) by the grand average of the whole dataset:

jackreid3.png

The seasonal factor provides a factor for how much above or below the average the seasonal data points will be, rising and falling with high or low sales periods in relation to the overall season.

 

By dividing all known plot points across the previous 3 years by its corresponding seasonal factor our data becomes deseasonalised, which smooths out the time series (factors out the seasonality).

  Figure 1.2 - 1.1 with additional deseasonalised line graph (grey)

Figure 1.2 - 1.1 with additional deseasonalised line graph (grey)


A linear regression line can then be fitted to this series. This is essentially a straight line plot based on the deseasonalised values. It gives a framework for estimating future plot points on the series (which can then have seasonality factored back in).

Linear regression lines can easily be done by right-clicking on an existing trendline in Excel – its recommended to change the x-axis’ month names to numerical values. The deseasonalised linear regression equation calculated in Excel is as follows:

y = -3624x + 300156

  Figure 1.3 - 1.2 with additional linear regression line for the deseasonalised series (red, dotted)

Figure 1.3 - 1.2 with additional linear regression line for the deseasonalised series (red, dotted)

A forecast for the next year is calculated by using the deseasonalised linear regression line and adding in (multiplying the values) by the seasonal index.

jackreid6.png
  Figure 1.4 - 1.3 with a forecast for the next 12 months (red)

Figure 1.4 - 1.3 with a forecast for the next 12 months (red)

Based on the past 3 years’ worth of data the forecast looks to be a fairly accurate fit taking into account seasonal trends (in this case monthly) as well as a year-on-year downward trend. To criticise this model the expected downturn will probably not be as drastic as forecasted (with the drop in the first half of 2016 skewing the data). To make a more accurate model it may be more prudent to only take the last couple of years’ worth of data where the trend is flatter and forecast over a shorter period.

Here is what this forecast would look like in practice using 2 years’ worth of data (for seasonality) over 6 months:

  Figure 1.5 - 1.4 Forecast only using past 2 years data

Figure 1.5 - 1.4 Forecast only using past 2 years data

This forecast is more positive than the last and what would be more prudent to expect than the initial forecast.

 

Of course forecasts are meant to be predictors of the future and should be built as accurately as possible. However as time changes, so do other business factors and this is why re-forecasting is another important part of the process moving forwards.

 

It can be seen that forecasting is important for SEO from a planning and budgeting perspective. There are a number of different assumptions to consider as well as methods for how to forecast. The method used above is possibly the most legitimate but simple method, taking into account seasonality built on top of a linear trend. This gives a good platform to further build in more assumptions to build more complex forecasts.