How do you build a reliable revenue forecast?
A step-by-step plan for a revenue forecast that holds: build it in layers, calibrate on your own history, give an honest range and measure it afterwards.
You build a reliable revenue forecast by splitting revenue into layers (running contracts, recurring customers, pipeline and new revenue not yet known), forecasting each layer with the method that suits it, weighting the pipeline with win rates from your own history instead of default percentages, and giving a range instead of a single number. The most important part comes afterwards: recording every month what you predicted and comparing it with what happened. A forecast does not become reliable through a cleverer model, but through a process that measures its own errors.
What does a reliable forecast mean?
Reliable is not the same as precise. A forecast that is right to the euro in one quarter and twenty percent off in the next is not reliable. A forecast that lands within a known margin every quarter is.
A reliable forecast has three properties:
- No systematic bias. It is not always too high or always too low. If it is, there is an error in the method that you can find.
- An honest range. Actual revenue usually falls within the margin the forecast gives. A margin that is too narrow gives false certainty. One that is too wide helps nobody.
- Explainable. When the forecast changes, you can say why: a large deal won, a customer cancelled, a project delayed.
Step 1: build the forecast in layers
Split expected revenue into four layers, each with its own source and its own level of certainty.
| Layer | Source | Method |
|---|---|---|
| Contracted | Contract register, recurring invoicing | Sum per contract per period |
| Recurring without contract | Customer history in the accounts | Trend and seasonal pattern per customer or segment |
| Pipeline | CRM | Weighted by measured win rate and expected timing |
| Not yet known | History | Average revenue from deals that did not exist at the start of the period |
This split is the most important decision in your entire forecast. A forecast that lumps everything together cannot explain where the uncertainty sits. A layered forecast shows, for example, that seventy percent is all but certain and that the discussion should be about the remaining thirty.
Step 2: make the contract layer reliable
The contract layer is the foundation. If it is wrong, nothing above it is right. Check three things:
- Is every running contract recorded with amount, term, billing frequency, indexation and notice period?
- Does invoicing match the contracts? A forecast that counts on an indexed amount while invoicing sends the old amount is structurally too high.
- Are end dates and cancellations up to date? A cancelled contract still in the forecast is a hole you only see once it is there.
For companies with a lot of recurring revenue, this is often the step with the largest gain. Not because the forecast gets better, but because along the way you find revenue that was not being invoiced.
Step 3: forecast recurring revenue from history
Customers without a fixed contract who still buy regularly are forecast from their own history. Look per customer or per segment at the past 24 to 36 months: average volume, trend, seasonal pattern. Pay particular attention to customers whose volume is falling. A customer who buys ten percent less every quarter is not a stable base in the forecast but a risk.
The article forecasting from historical revenue explains how to handle seasonality, trends and one-off outliers.
Step 4: calibrate the pipeline
This is the step most forecasts skip. Instead of the default probabilities in your CRM, you use what your history shows.
- Take all deals from the past 12 to 24 months that were closed, won or lost.
- Determine per stage what share of the deals that ever reached that stage was eventually won.
- Determine per stage how long it took on average from that stage to closing.
- Determine the difference between CRM value and signed value for won deals.
- Split where the difference is large, for example by product, deal size or new versus existing customers.
Apply these figures to your current pipeline. Add two corrections: deals with no activity for longer than your normal cycle get a lower probability, and so do deals whose close date has moved several times.
Then check whether your pipeline is large enough for what you need. The article pipeline coverage explained shows how to calculate that from your own win rate.
Step 5: add the unknown revenue
Part of the revenue in the forecast period will come from deals that do not exist yet. Calculate from your history how much that was on average: what share of a quarter's revenue came from deals that were not in the CRM at the start of that quarter? For short horizons this is small, for an annual forecast it can be substantial.
Step 6: give a range
Each layer has its own uncertainty. Set a floor and a ceiling for each layer:
- Contracted: narrow. The floor accounts for known risks such as cancellations and customers with payment problems.
- Recurring: medium. Based on the spread in your history.
- Pipeline: wide. Driven mainly by the largest deals. If three deals make up half of your weighted pipeline, the range depends on those three.
- Unknown: wide, but usually small in amount.
Present the forecast as an expectation with a floor and a ceiling, and name the few factors that make the difference. How to determine and communicate the confidence of a forecast is covered in forecast confidence explained. If a few events dominate the outcome, work with scenarios, as described in scenario forecasting for B2B.
Step 7: measure your forecast afterwards
At the start of every period, record the forecast, per layer. At the end, compare it with actual revenue, per layer. Keep track of:
- How large was the deviation per layer?
- Did the deviation keep falling in the same direction?
- Did actual revenue fall within the range?
- Which deals or customers explain most of the deviation?
After four to six periods you will see patterns. A pipeline layer that is always too high has a weighting that is too optimistic. A contract layer that is always too high points to a problem in invoicing. That last one is not a forecasting problem, but revenue leakage.
Step 8: change how the meeting works
A forecast meeting where each salesperson runs through their deals is a status meeting. A better meeting discusses three things:
- What has changed since the previous forecast, and why?
- Where does the sales view differ from the calibrated weighting? If a salesperson puts a deal at 90 percent and the model at 30, the conversation about that deal is worth having.
- What do we do about last period's deviation?
Worked example
Worked example: suppose a technical services company has built a forecast for the past four quarters from the weighted pipeline plus an estimate of recurring revenue. Actual revenue came in 6 to 9 percent below the forecast every time.
After splitting into layers, the pipeline layer turns out to be 15 percent too high on average, because of unmeasured probabilities. The contract layer is 3 percent too high on average, and that turns out to come from maintenance contracts whose indexation is not being invoiced. The pipeline weighting is adjusted to history. The indexation is corrected in invoicing. In the two quarters that follow, actual revenue falls within the range, without the deviation always falling in the same direction.
This example shows the mechanism, not an average result. How large the deviations are in your business only becomes clear from your own measurement.
The full framework, with all methods and pitfalls, is in what is revenue forecasting.
Frequently asked questions
How much history do I need?
For calibrating the pipeline, at least twelve months of closed deals, preferably twenty-four. For seasonal patterns in recurring revenue, at least two full years. If you have less, start with what you have and update the figures every quarter.
Do I need to buy a forecasting tool?
Not to start with. Every step can be done in Excel with an export from the CRM and the accounting system. A tool becomes useful when the monthly update takes too much time, or when you want to monitor the link between contracts, pipeline and invoicing continuously.
How often do I update the forecast?
Monthly as a fixed rhythm, and in between when there are major changes: a large deal won or lost, an important customer cancelling, a project running late.
What if sales disagrees with the calibrated weighting?
Then that is a good conversation to have. Sometimes the salesperson has information the model lacks. Put their estimate next to the calibrated weighting and measure afterwards who was closer. After a few quarters you know how much weight to give each source.
More in this cluster
- What is revenue forecasting?Start here
- Why are sales forecasts so often wrong?
- CRM forecast vs actual revenue
- Forecasting from CRM data
- Forecasting from historical revenue
- AI revenue forecasting explained
- AI forecasting vs traditional forecasting
- Forecasting with incomplete CRM data