Revenue Forecasting: Methods, Inputs, Accuracy and the Bookings-to-Revenue Bridge
Revenue forecasting explained: the three methods and the inputs each needs, where each fails, how accuracy is judged, and the bridge from bookings to revenue.
Paul Maxwell, PhD
AUTHOR
GET WEEKLY REVOPS INSIGHTS
No spam. Unsubscribe anytime.
A forecast built from the weighted pipeline comes in short on the first day of a quarter and climbs toward the actual as the weeks pass. Leadership discounts the early figure by feel and trusts the late one, which arrives after the hiring and spending decisions it was meant to inform. Finance builds a second figure from run-rate and the contract schedule. The two disagree by an amount nobody can break into parts, and the forecast meeting spends its hour choosing a number rather than the deals and renewals that need attention.
This article explains revenue forecasting as a set of methods, each suited to one component of the number. It starts with the three method families, then the limit on what a pipeline forecast can count, and builds four day-one forecasts for a sample quarter. Accuracy, the bridge from the sales forecast to the finance forecast, a HubSpot procedure, costs and symptoms follow, and it closes with the limits of the evidence and the first measurement to take.
A revenue forecast is an estimate of a named quantity for a named future period. The quantity has to be named first: bookings are signed contract value dated by close date, billings are invoiced amounts dated by invoice, and recognised revenue is the amount earned in the period under the firm's accounting policy. A forecasting method is the rule that turns recorded inputs into the estimate. The create-and-close share is the portion of a period's closed-won amount from deals created inside that same period.
Revenue Forecasting Methods and Their Inputs
A pipeline-weighted forecast multiplies each open deal's amount by a probability of closing, sums the results across deals whose close date falls in the period, and adds what has already closed. It is HubSpot's default: the forecast tool uses deal stages to forecast revenue by each deal's likelihood to close, and its forecast deal amount defaults to Weighted amount, the Amount multiplied by the Deal probability. The default Sales Pipeline ships with probabilities of 20, 40, 60, 80 and 90 per cent on its five open stages, which are a template rather than a measurement of any portal. Calibration is covered under weighted pipeline, and the tool's settings under configuring the HubSpot forecast tool.
A historical run-rate forecast projects the period from past actuals: last period's figure, the same period a year earlier, a trailing average or a fitted trend. HubSpot's Breeze forecast belongs to this family. Its documented input is closed-won deal data from the past three months, meaning the date each deal moved to Closed won and its amount; the documentation describes those inputs and the output range, not the model.
A cohort or driver-based forecast builds the number from the quantities behind it. A cohort model groups customers or contracts by start period and applies each group's observed retention, expansion and churn to the revenue base. A driver model computes bookings as deals created × win rate × average deal size, or as ramped sellers × productivity. HubSpot's recurring revenue properties, on Sales Hub or Service Hub Enterprise, record each deal as New business, Renewal, Upgrade or Downgrade, with the date and reason its recurring revenue stops. SaaS revenue forecasting treats the recurring base in detail.
| Method | Required inputs | Where it fails |
|---|---|---|
| MethodPipeline-weighted | Required inputsAmount, close date and stage on every open deal; a win probability per stage measured from the portal's own closed deals | Where it failsDeals created and closed inside the period; stale or defaulted close dates; probabilities never calibrated; a period carried by a few large deals |
| MethodHistorical run-rate | Required inputsClosed-won or recognised amounts by period, under definitions unchanged for at least one seasonal cycle | Where it failsAny change the history does not contain: a new product, a price change, a new territory, a hiring ramp |
| MethodCohort or driver-based | Required inputsContract start, end and renewal dates with a stable customer identity, or volumes and conversion rates by period | Where it failsHistories shorter than the forecast horizon; retention or conversion rates that drift; errors compounding across chained drivers |
A weighted amount is an expected value: a $500,000 deal at 60 per cent contributes $300,000, though the deal closes for $500,000 or nothing. A period carried by a few such deals therefore has a far wider range of outcomes than its forecast suggests. Chained drivers multiply their errors: three drivers each 10 per cent high give a forecast 33 per cent high, because 1.1 × 1.1 × 1.1 is 1.331.
The Limit of a Pipeline Forecast: Deals Not Yet Created
A weighted pipeline is a sum over deal records, so on any date it can account for no more than the closed-won value of deals that exist on that date. A deal created on the tenth day of a quarter and closed on the fortieth is absent from the day-one forecast at every probability, and no calibration recovers it, because there is no record to weight.
A quarter's closed-won amount has three sources: deals dated to the quarter on its first day, deals dated elsewhere and pulled in when someone moves their close date, and deals created inside the quarter. HubSpot's deal pipeline waterfall report separates the last two flows, counting deals moved in from another close-date period as Pulled and newly created deals as Created. With stage probabilities calibrated to winning inside the dated period, the expected day-one shortfall is the create-and-close amount plus the pulled-in amount. Eventual win rates, the probabilities the procedure below measures, also count deals that win only after slipping to a later period, and those slipped wins offset part of the shortfall. The create-and-close part shrinks to zero as the period runs.
Every closed deal carries the two dates that measure the share: HubSpot sets Create date automatically and, unless the automation is turned off in the pipeline settings, sets Close date when a deal moves into a closed-won stage. One deal report filtered on both dates therefore gives the share for any completed period. Create date is editable, so imported deals carry whatever date the import wrote, and the share is meaningful only for periods after the portal began creating deals.
The three methods are therefore not rival answers to one question. Each forecasts the component of the number its inputs record, so the day-one revenue forecasting model is the weighted pipeline for deals that exist, plus a run-rate estimate for deals not yet created, plus a cohort model for any recurring base.
Four Day-One Forecasts of a Sample Quarter
The figures in this section are sample data and describe no client. The sample business sells annual subscriptions, records each deal's Amount as twelve months of contract value, forecasts by quarter, and leaves HubSpot's default stage probabilities unchanged. Each deal is forecast in exactly one component: the sample's pipeline holds new business and expansion, and renewals sit in a pipeline of their own, forecast with the contracted base by the cohort method.
In the four quarters before the sample quarter, which opens on 1 July, the business closed $1,020,000, $1,260,000, $960,000 and $1,140,000. Of those amounts, $310,000, $380,000, $290,000 and $340,000 came from deals created inside the same quarter: $1,320,000 of $4,380,000, a create-and-close share of 30.1 per cent and a mean of $330,000 a quarter.
| Stage and default probability | Open amount | Weighted amount |
|---|---|---|
| Stage and default probabilityAppointment scheduled, 20% | Open amount$500,000 | Weighted amount$100,000 |
| Stage and default probabilityQualified to buy, 40% | Open amount$450,000 | Weighted amount$180,000 |
| Stage and default probabilityPresentation scheduled, 60% | Open amount$350,000 | Weighted amount$210,000 |
| Stage and default probabilityDecision maker bought-in, 80% | Open amount$250,000 | Weighted amount$200,000 |
| Stage and default probabilityContract sent, 90% | Open amount$150,000 | Weighted amount$135,000 |
| Stage and default probabilityTotal | Open amount$1,700,000 | Weighted amount$825,000 |
Against a goal of $1,250,000, the forecast tool would show open pipeline coverage of 1.36 that day, coverage being open pipeline divided by the gap to goal. Coverage measures whether enough pipeline exists, not how much will close, and is treated under pipeline coverage ratio.
The quarter closed $1,200,000: $780,000 from deals dated to it on 1 July and $420,000 from deals created during the quarter. That is a create-and-close share of 35 per cent, against 30.1 per cent over the previous four quarters. The sample assumes no deal was pulled in from another period, so the $780,000 is the realised value of the pipeline weighted at $825,000.
Four forecasts were available on 1 July: the weighted pipeline alone; the naive forecast, last quarter's actual; the seasonal naive forecast, the same quarter a year earlier; and a component forecast of $1,155,000, the weighted pipeline plus the $330,000 mean create-and-close amount.
Forecast Accuracy: Horizon, Direction and Benchmark
Accuracy belongs to a forecast frozen at a stated horizon and compared with the actual after the period closes. The day-one figure is the one decisions rested on; a figure revised weekly to the last day is graded against a total that has largely closed, and looks accurate whatever method produced it. Errors below are forecast minus actual, so a negative error is a forecast that came in low.
| Forecast made on 1 July | Amount | Error against actual |
|---|---|---|
| Forecast made on 1 JulyWeighted pipeline only | Amount$825,000 | Error against actual−$375,000 (−31.3%) |
| Forecast made on 1 JulyNaive: last quarter's actual | Amount$1,140,000 | Error against actual−$60,000 (−5.0%) |
| Forecast made on 1 JulySeasonal naive: same quarter last year | Amount$1,020,000 | Error against actual−$180,000 (−15.0%) |
| Forecast made on 1 JulyWeighted pipeline plus create-and-close run-rate | Amount$1,155,000 | Error against actual−$45,000 (−3.8%) |
A method earns its cost only by beating forecasts that need no model. A standard textbook, Hyndman and Athanasopoulos's Forecasting: Principles and Practice, uses the naive and seasonal naive methods as benchmarks for exactly this purpose and treats a method that cannot beat them as not worth considering. On day one the weighted pipeline alone loses to both benchmarks, because it omits the 35 per cent of the quarter that did not yet exist; the component forecast beats both.
Error has a direction, and an accuracy percentage discards it. HubSpot scores its AI projections as one minus the absolute error as a share of the actual, floored at zero, which would score the weighted pipeline at 68.8 per cent without recording that it was low. A forecast 10 per cent low every quarter can be corrected; one alternating between 10 per cent high and 10 per cent low cannot, and both earn the same score. Percentage errors also have documented defects: they are undefined when the actual is zero and penalise over-forecasts more heavily than under-forecasts.
Horizon matters as much as direction. HubSpot issues an AI projection on days 1, 7, 14, 21 and 28 of each month, and its monthly accuracy averages all five: one made before any of the month had closed and four made while it was closing. The day-1 figure is the one to read on its own. The Forecast Accuracy Over Time table that shows it requires the AI Forecasting public beta and a monthly forecast period, so a portal forecasting by quarter, like the sample, has no day-1 figure to read.
Each component is graded against its own realised amount, because a total can be right for the wrong reasons. The component forecast's $45,000 miss is the net of two larger errors in opposite directions: the pipeline component forecast $825,000 against $780,000 realised, $45,000 high, and the create-and-close component forecast $330,000 against $420,000, $90,000 low. In the total, optimistic default probabilities and underestimated in-quarter creation cancel, and a quarter in which the share returns to 30 per cent will expose the probabilities. Measuring forecast accuracy covers the measures and the choice among them.
The Bridge from Bookings to Recognised Revenue
The sales forecast predicts bookings, the finance forecast predicts recognised revenue, and the two share one component; the difference between bookings, billings and revenue has its own treatment.
In the sample, service starts at signature and each annual contract is recognised evenly over twelve months. With signatures spread evenly, a contract signed in the quarter has on average 1.5 months in service by quarter end, so the quarter's bookings contribute 1.5 of their 12 months, or 12.5 per cent: about $150,000 of recognised revenue from $1,200,000 closed. The rest comes from the contracted base, contracts signed earlier, scheduled from contract terms and adjusted for the renewals, contraction and churn the cohort method forecasts.
HubSpot holds bookings and, where contracts are used, a schedule of contracted revenue. Its contract revenue reports cover booked, contracted or committed, billed and collected revenue: the MRR waterfall reports revenue when it becomes effective, and the Contract Revenue (Scheduled) data source holds one record per line item per billing month. Contracts need a Revenue Hub subscription unless the account is in the Direct Create, Edit, and Renew HubSpot Contracts beta, and Super Admins can opt into a Revenue Reporting from Contracts beta. Without contracts, the Enterprise revenue analytics report starts each deal's recurring revenue on its close date and projects only from known closed-won deals. The documentation does not describe revenue recognition, so the recognised revenue forecast is computed in the accounting system from contract terms. Aligning the sales and finance forecasts sets out the standing reconciliation, with named lines and owners.
Assembling a Component Forecast in HubSpot
- Fix the quantity and the period first. Under Settings > Objects > Forecast, set the forecast deal amount to Weighted amount and the forecast period to monthly or quarterly. Changing the period later resets the revenue goals and forecast submissions for all pipelines, which then have to be created again.
- Measure the create-and-close share. Under Reporting > Reports, click Create report, choose Single-object report and select Deals. Filter to Is Closed Won is true with Close date in one completed quarter and sum Amount; add a filter placing Create date in the same quarter and sum again. Divide the second total by the first, for each of the last four quarters.
- Calibrate the stage probabilities. On Professional and Enterprise, each stage has a Date entered property. For each open stage, filter to deals with a Deal Status of Won or Lost on which that date is known, and divide the Amount won by the Amount closed. Enter each result as the stage's Deal probability under Settings > Data Management > Objects > Deals > Pipelines.
- Carry the new probabilities onto open deals. The documentation does not say whether editing a stage's probability rewrites deals already in it, and a value written by record edit, bulk edit, import, integration or API stops following the stage until the deal closes. Build a deal-based workflow that re-enrolls whenever Deal stage changes and, with a branch per open stage, uses the Edit record action to set Deal probability (
hs_deal_stage_probability) to the calibrated value. The documentation is also silent on whether a workflow write detaches the value, and re-enrollment keeps it current either way. Open several deals in each recalibrated stage and confirm the new value. - Freeze the day-one forecast. On the period's first day, under Sales > Forecast, click Submit in the Forecast Submission column, enter the weighted pipeline plus the mean create-and-close amount, and record both components in the note. Past submissions stay viewable under the History tab for up to a year.
- Grade the forecast when the period closes. Take the signed error of the total against the closed-won actual, of the pipeline component against closed-won deals created before the period, and of the run-rate component against those created inside it. Compute the same total error for the naive and seasonal naive benchmarks.
- Verify that the grading compares like with like. Confirm the submission appears under History with its amount and note, and that the forecast tool's Closed Won matches the deal report's closed-won total for the same pipeline and dates. The tool reports revenue for users with an assigned Sales or Service seat, so a deal owned by a user without one can explain a gap.
Costs and Returns of Each Method
The pipeline-weighted method buys a forecast tied to named deals, which a sales manager can act on because every dollar in it belongs to a record somebody owns. It costs stage and close-date discipline maintained as process, and recalibration whenever the sales motion changes. Its case is strongest where cycles are long and the create-and-close share is small, and weakest in high-velocity selling, where much of each period is created and closed inside it.
The historical run-rate costs little beyond a clean history and buys two things the pipeline cannot supply: a benchmark every other method must beat, and an estimate of business not yet in the pipeline. It is strongest in a stable business and weakest at a change point, where it forecasts the business as it used to be.
The cohort or driver method buys a forecast of the base, the revenue a subscription business has already contracted. It costs contract-level data, a customer identity that survives renewal, and analyst time. In HubSpot the base lives in Revenue Hub contracts or in recurring revenue properties, which are updated by hand rather than calculated from products or quotes. It is weakest where history is shorter than the horizon: a twelve-month retention rate cannot be measured from eight months of cohorts.
Assembling the forecast from components costs one more report and one more line in each submission. Where the measured create-and-close share is near zero, the weighted pipeline alone suffices and the recommendation here does not apply. The forecast tool needs Sales Hub or Service Hub Professional or Enterprise and an assigned Sales or Service seat for each user other than Super Admins. Single-object reports, stage-calculated properties and workflows need a Professional subscription or above, and recurring revenue tracking needs Sales Hub or Service Hub Enterprise.
Forecast Symptoms and Their Mechanisms
The forecast is low early in every period and converges late. A pipeline method cannot weight deals created inside the period until they exist, so the early shortfall is the method working as defined. A run-rate component sized from the measured share supplies the missing amount; pipeline hygiene cannot, having no records to clean.
The weighted pipeline stays flat while deals advance. Deal probability stops following the stage once set manually, and HubSpot counts record edits, bulk edits, imports, API writes and integration syncs as manual, so a migrated portal can carry frozen probabilities on every open deal. Rewriting them by any of those routes freezes them again. A deal report with stage and Deal probability side by side lists the affected deals, and the stage-change workflow from step 4 rewrites them and keeps them current.
The current month's weighted pipeline jumps when deals are created. A deal created in an open stage without a close date gets the last day of the current month by default, so every undated deal lands in the current period. A custom default close date in the deal settings changes that, but only for deals created in the desktop app.
The forecast hits the total while its components miss. Optimistic probabilities and an underestimated create-and-close component cancel, as in the sample quarter, and grading each component against its own realised amount shows which one drifted.
Sales and finance report different figures for one quarter. They forecast different quantities, bookings dated by signature and revenue by delivery, and HubSpot's reports add two more datings: recurring revenue analytics starts revenue at close, and the contract MRR waterfall at the date it becomes effective. A reconciliation bridge with named lines accounts for each difference; a mandate for one number does not.
Accuracy reads high while decisions taken on the forecast go wrong. An average across horizons includes projections made late in the period, and an absolute percentage hides bias; the signed day-one error beside the naive benchmark shows both.
Scope and Limits of the Evidence
This article covers choosing and assembling forecasting methods for bookings and recognised revenue at the level of a period. It does not cover time-series modelling beyond the simple benchmarks, demand or capacity planning, or the accounting treatment of any contract, which the firm's accountants set. Product behaviour, tiers and navigation paths are as documented in October 2026, and the linked documentation is authoritative as the product changes.
One quarter of sample data shows the arithmetic and proves nothing about which method is more accurate. The create-and-close share differs by business and by year, so the component approach is justified in a portal only by measuring the share there and grading frozen forecasts against actuals over many periods. A ranking of methods holds only for the business that produced it.
In Summary
Revenue forecasting has three method families: pipeline-weighted, historical run-rate, and cohort or driver-based. The pipeline fails on deals that do not yet exist and on uncalibrated probabilities, the run-rate at any change its history lacks, and cohort or driver models on short histories and drifting rates.
A weighted pipeline counts only deals that exist and are dated to the period. With probabilities calibrated to winning inside the period, its expected day-one shortfall is the create-and-close amount plus the pulled-in amount; eventual win rates also count wins that slip to a later period, which offset part of it. The create-and-close share is measurable from the Create date and Close date on every closed HubSpot deal. In the sample quarter it was 35 per cent, the weighted pipeline alone forecast 31 per cent low, and a component forecast adding a run-rate for the not-yet-created share came within 4 per cent.
Accuracy is judged on a frozen day-one forecast, with its sign kept, component by component and against the naive and seasonal naive benchmarks. The finance forecast differs from the sales forecast by construction: it counts recognised revenue, takes only the in-service share of the quarter's bookings, and draws the rest from the contracted base. The first measurement to take is the create-and-close share for each of the last four quarters, since it decides how much of the forecast the pipeline can carry and how much the run-rate must supply.