Related articles

DevelopersAPI guides

Forecasting program line earnings

The Forecasting module is an optional module that allows users to view the forecasted earnings for their program lines. There are a number of different mechanisms that can be used to calculate the forecasted earnings. Please watch our videos to learn more.

Enable forecasts the total spend of the program line and then calculates the forecast earnings based on that forecasted spend. To view a program line's forecast, navigate to the program line you want and click View Forecast. You can also view a program line's forecast by viewing a program line and then clicking on the Forecasting tab.

Forecasts are always in a program line context. A typical program line might be configured with a forecasting period (the reporting period) of a year and monthly phasing periods. This would allow the seasonality to be modeled monthly and the program line to be forecasted yearly.

Enable will initially forecast based on the default phasing, which is a default seasonality profile that can be uploaded to the system for each trading partner or client division. To set default phasing values you must be a Client Admin user. To learn how to upload default phasing values, please see our article in the Admin guide.


Key Terminology

  • Forecasting period - the period over which you would like to report your forecasts. You are able to run forecast earnings reports over the forecasting period;
  • Phasing period - the time period granularity that will be used to represent seasonality in forecasts;
  • Subset of forecasting period - a granularity setting, which allows you to set what level you want to manage your seasonality, e.g. forecasting period may be a year and the phasing period is monthly. Therefore, you manage seasonality monthly but forecast and report yearly;
  • Phasing - the relative magnitude of expected transactions in each phasing period;
  • Default phasing - a phasing profile that is managed per trading partner or per client division that acts as the default, until it is overridden by a user;
  • Maximum phasing periods - the number of recent phasing periods that should be used as the basis for forecasting.

Types of forecasts

For each program line there are three types of forecasts:

  • Initial – The baseline transactions for the program line, spread according to the default phasing for that program line;
  • Current – The current forecast;
  • Previous – The forecast that was calculated immediately before the most recent phasing period ended.


This forecast looks at what the baseline transaction is for the program line and takes that as the total transaction you will spend in the program line. It will then spread the transaction across the program line according to the default phasing for that program line.

  • If you set default phasing at the trading partner level, then it will be the default phasing for that trading partner.
  • If you do default phasing at client division level, as a program line may be made up of a blend of client divisions, the default phasing for a program line will be a weighted average of the default phasing values for the relevant client divisions. This is worked out by looking at the baseline transaction for a program line and seeing what the blend of client divisions looks like.


This forecast is the one currently being used if you are using the manual forecast method. If you are using automatic forecasting, then the current forecast is the latest automatic forecast.


At the end of every phasing period, the phasing period is locked, and the actuals get populated. A snapshot is taken immediately before the locking of the phasing period and this becomes the previous forecast. This allows you to see how the forecast has changed by comparing the current and previous forecasts.

Ways to calculate forecasts

There are 3 different ways a forecast can be calculated. Enable will calculate a forecast either by:

  • Automatic forecasting;
  • Preserve total;
  • Preserve phase spending.

Enable can be configured to default to the forecasting method that most commonly fits your needs.


Automatic Forecasting

When automatic forecasting is selected, the forecast cannot be edited. As with all forecast methods, the initial forecasts are calculated using the baseline transactions apportioned over the default phasing values uploaded for the trading partner. When using automatic forecasting, you are able to either use all of the available locked phasing periods to generate the forecast, or you can restrict the scaling factor to a certain number of previous phasing periods (between 1 and 120) by selecting the maximum phasing period. The maximum phasing period is globally set to your needs but you can change this on a per program line basis.

At month end, Enable calculates a spend per phasing unit, using either the maximum phasing period or all available locked phasing periods, and uses that to calculate the program line total spend. The program line total minus the actual spends is apportioned over the future months according to their phasing values. So, if October came in lower than expected, e.g. the total actuals for the program line are 1% lower than previously forecasted and we are using all available locked phasing periods, then November and December forecasts will be adjusted down by 1%.


Preserve phase spending

This calculation method allows the user to directly edit the forecast spend for a future month. It then calculates the total spend as the sum of the actual and future months.

The user should not try to change the total forecast spend as this won’t have any effect.

At the end of the month, this calculation method keeps the future months the same but adjusts the total spend based on the actual transactions which have been realized. E.g. if October transactions were lower than the forecasted amount, the forecasted total would be reduced accordingly but future months forecasts would be unchanged.

Preserve total

When the preserve total method is selected, the user can change the total spend for the program line. The difference between the new total spend and the previous total spend is then apportioned over the future months based on the phasing for those months.

The user can also change the phasing for the future months by entering values for these months. Enable then apportions the total spend over these inputted values.

When a month is finished, this calculation method keeps the total spend the same and adjusts the future months to account for the actuals which have now been realized. E.g. if October transaction was higher than the forecasted amount then November and December will be scaled down to preserve the forecasted total.

Preserving the total forecasted spend is most useful when you are confident of your spending predictions. Enable will automatically adjust its forecasts based on the actual spends that have been realized so that your total is met.

Forecasting displays

The forecasting page will also display the forecasting data on various graphs to allow you to get the most out of your forecasting data. The various displays which Enable will show you is:

  • Expected spend in {Currency};
  • Cumulative expected spend in {Currency};
  • Expected spend in units;
  • Cumulative expected spend in units.

These example graphs are shown below.

Expected spend in GBP


Cumulative expected spend in GBP


Expected spend in units


Cumulative expected spend in units


Forecast Report

Under Reports, there is a forecast earnings report.


It is possible to run a report to see forecast earnings at a higher level. However, the earnings can be broken down in a number of ways including per Trading Partner, Trading Program, or Program Line. It is also possible to report by the forecasting period or the phasing period. You can also download this report as a CSV.


If you are interested in obtaining the Forecasting module, please speak to your Customer Success Manager.

Not useful
Very useful
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Still have questions?
Raise a ticket or contact our support team.