Sign in

Blog · Forecast and pipeline · Software

SaaS revenue forecasting: retention and new sales

Build a customer-month SaaS revenue forecast from retention, contraction, expansion and new sales. Separate recurring run rate from recognized revenue and reconcile the plan with actuals.

The short answerSaaS revenue forecasting estimates future subscription revenue by customer and month. Start with the existing customer base, subtract churn and contraction, add expansion and new business, then apply finance-approved service dates and recognition assumptions. Reconcile the resulting revenue schedule to the customer ledger; monthly recurring revenue alone does not establish recognized revenue.

SaaS revenue forecasting starts with existing customer revenue, separates retention from contraction and expansion, and adds new sales using their expected service dates. Build the recurring run-rate bridge first, then a monthly revenue schedule using finance-approved accounting assumptions. Compare that schedule with actual revenue at the same customer and month level.

Set the revenue definition before the forecast

Bookings record signed commercial commitments under the company's definition. Billings record invoices. Recurring run rate describes the active subscription base at a point in time. Recognized revenue belongs to the period in which the relevant service obligations are satisfied.

Those measures answer different questions. A contract can be signed before service begins and invoiced before its revenue appears in the income statement. Do not fill a revenue column with whichever sales measure is easiest to export.

FASB's original Topic 606 amendments establish the transfer-of-services principle and distinguish advance consideration from revenue. Finance must approve how current accounting requirements apply to the actual contracts. The forecast carries those approved assumptions; it does not choose an accounting policy.

For recurring-base definitions and retention denominators, use the customer base KPIs for SaaS sales teams. Here the job is turning the customer movements into monthly revenue.

Assemble a customer-month file

Start with the subscription register, renewal schedule and revenue ledger. Use a stable customer ID, contract ID, cohort, forecast month, forecast version, service start and end dates, currency, recurring amount and recognized revenue. Keep the forecast snapshot unchanged when actuals arrive.

Assign each recurring movement once. Churn removes the customer's entire opening recurring amount. Contraction removes part of a surviving customer's amount. Expansion increases an existing customer's amount. New business belongs to customers outside the opening base.

Closing monthly recurring revenue = Opening recurring revenue - Churn - Contraction + Expansion + New business

Use positive amounts in the movement columns and subtract the reductions in the formula. A renewal without a price or volume change carries the opening amount forward; it does not become new revenue.

The broader sales projection method covers the sales outlook feeding these assumptions. Bring its approved customer timing into this schedule rather than rebuilding the sales forecast inside the accounting review.

Work the recurring bridge and service timing

A US subscription company prepares its January 2027 forecast. All amounts below are USD. Existing-customer changes take effect January 1. The new customer's service starts January 16, leaving 16 service days in a 31-day month.

For this example only, finance has approved recognition at the recurring monthly amount for a full month and calendar-day proration for the new customer's first month. There are no usage fees, separate implementation obligations or other adjustments.

Customer Opening MRR (USD) Churn (USD) Contraction (USD) Expansion (USD) New MRR (USD) Closing MRR (USD) Service days Cohort January revenue (USD)
Alder 60,000 0 0 0 0 60,000 31 Existing 60,000.00
Beacon 25,000 0 0 5,000 0 30,000 31 Existing 30,000.00
Cedar 10,000 0 2,000 0 0 8,000 31 Existing 8,000.00
Delta 5,000 5,000 0 0 0 0 0 Existing 0.00
Elm, new 0 0 0 0 12,000 12,000 16 New 6,193.55
Total 100,000 5,000 2,000 5,000 12,000 110,000 104,193.55

Put these columns in A:J, starting the customer rows at row 2. The Excel formulas for closing MRR in G2 and the simplified January revenue in J2 are:

=B2-C2-D2+E2+F2
=G2*H2/31

Column I records the cohort, either Existing or New. Fill the formulas down. For January revenue from the existing cohort, use:

=SUMIFS(J2:J6,I2:I6,"Existing")

Microsoft documents SUMIFS as summing amounts that meet specified criteria. Covirage is not affiliated with Microsoft.

The new customer's calculation is 12,000 × 16 / 31 = $6,193.55. Compute with unrounded values and display cents. The closing run rate is $110,000; January revenue is $104,193.55 because the new subscription contributes only part of the month.

Prove the total, then compare actuals

The recurring bridge must balance: 100,000 - 5,000 - 2,000 + 5,000 + 12,000 = $110,000. The revenue schedule must separately total the customer rows. Do both checks before looking at growth.

After the January close, the ledger gives this cohort comparison:

Cohort Forecast revenue (USD) Actual revenue (USD) Actual minus forecast (USD)
Existing customers 98,000.00 97,000.00 -1,000.00
New customers 6,193.55 6,000.00 -193.55
Total 104,193.55 103,000.00 -1,193.55

With forecast in B and actual in C, the variance formula is:

=C2-B2

Tie actual revenue to the closed ledger, including approved credits and adjustments. Investigate the existing-customer shortfall separately from new-customer timing. A total miss can otherwise conceal a retention issue behind a change in start dates.

Keep explanations attached to the relevant customer rows. Use revenue forecasting automation for the repeatable review workflow, and project revenue forecasting when delivery progress rather than subscription access drives the schedule.

Where it goes wrong

  • Annual commitments treated as current revenue. A signed amount needs a service and recognition schedule.
  • Churn and contraction counted twice. A canceled customer cannot also lose the same opening amount through contraction.
  • New revenue included in retention. Freeze the opening cohort and follow it through the comparison.
  • Exit run rate used for the entire month. Midmonth starts and changes require the approved timing treatment.
  • Actuals overwrite the forecast. Preserve the original version so later knowledge does not erase the miss.

Review your customer forecast in Covirage

Bring a sample of your own customer-month forecast and revenue ledger to Covirage; it maps the columns, and its tools compute and check the recurring bridge and forecast-versus-actual totals. The external AI model explains the results with every figure traced to its rows. Create a free Covirage account, then set up your business and bring your file.

See Covirage for SaaS sales teams for the supporting business context.

Questions people ask

Can I use MRR as my monthly revenue forecast?

MRR is useful for planning the recurring customer base. It can differ from recognized revenue when contracts start during a month, include other obligations or have usage charges. Keep the recurring bridge and the accounting revenue schedule separate, then explain the difference.

How should I forecast customer churn?

Use customer-level renewal dates, account evidence and documented assumptions. Separate complete cancellations from partial reductions. Preserve the original customer cohort so retained revenue does not accidentally include newly acquired customers, and compare each assumption with the subsequent customer outcome.

Who owns a SaaS revenue forecast?

Finance owns the revenue definition, recognition assumptions and ledger reconciliation. Sales supplies expected new contracts and expansion timing. Customer success supplies renewal and contraction evidence. Each forecast version should identify who approved the assumptions and when the information was available.