Sign in

Blog · Board and management reporting · Software

SaaS sales dashboard: bookings, ARR and pipeline

Build a SaaS sales dashboard from CRM deals and subscription summaries. Separate signed bookings, recurring revenue movements and open pipeline, then check how each total connects to its source rows.

The short answerA SaaS sales dashboard compares signed bookings, recurring revenue movements and open sales pipeline on separate, defined bases. Build bookings from closed-won deals, ARR from the subscription schedule, and pipeline from open opportunities at a dated snapshot. Reconcile each total to its export before comparing them; signing dates, subscription start dates and renewals make the measures move differently.

A SaaS sales dashboard should show bookings, ARR and pipeline separately, with a reconciliation beside each measure. Bookings describe signed business, ARR describes an annualized recurring revenue balance, and pipeline describes open opportunities at a dated snapshot. Adding the three together produces a number with no useful business meaning.

Start with the exports and the dates

Use a closed-won CRM export for bookings, a subscription movement schedule for recurring revenue, and an open-opportunity export for pipeline. Keep the opportunity ID and subscription ID so that a signed deal can be traced to its eventual activation without counting the same record twice.

Write the definitions above the dashboard. For this example, bookings means signed recurring contract value, including renewals, before tax and excluding services. ARR means active monthly recurring revenue multiplied by the months in a year. The reporting month is October 2026, with pipeline captured at October 31.

The dashboard needs three different date fields: signing date, subscription effective date and expected closing date. One generic date filter cannot serve all three jobs. For broader interpretation, SaaS analytics covers the surrounding business questions; this page concentrates on the exports and checks behind these sales measures.

Build the bookings panel from signed deals

Consider a hypothetical US software company with these October closed-won records. The full recurring contract amount is the booking; the annualized amount helps compare different contract lengths.

Deal Type Signed Starts Term months Recurring contract value (USD) Annualized value (USD)
A New customer October 10 November 1 24 240,000 120,000
B Expansion October 15 October 16 12 120,000 120,000
C Renewal October 1 October 1 12 90,000 90,000
Total 450,000 330,000

In Google Sheets, use columns A:G in the order shown. Put real date values in the date columns. The annualized value in G2 is:

=F2/E2*12

Fill down through G4. The bookings panel should display both the amount basis and the contract term convention, because the full $450,000 is different from the $330,000 annualized amount.

For a longer closed-won export, the October booking total is:

=SUMIFS(F2:F1000,C2:C1000,">="&DATE(2026,10,1),C2:C1000,"<"&DATE(2026,11,1))

Google's SUMIFS reference documents summing rows that meet multiple criteria. The exclusive next-month boundary also includes records with a time on the final day. Filter the export to closed-won records first, or add an explicit status criterion.

Explain ARR with a movement bridge

Use the subscription schedule to measure what actually became active. Assume the schedule has these October movements, expressed as monthly recurring revenue, or MRR. Contraction and churn are negative amounts.

Movement MRR change or balance (USD) Supporting schedule rows
Opening MRR 100,000 Active subscriptions at September 30
New 5,000 Earlier signed contract activated in October
Expansion 10,000 Deal B incremental subscription value
Contraction -2,000 Effective downgrades
Churn -6,000 Effective cancellations
Closing MRR 107,000 Active subscriptions at October 31

Closing MRR = Opening MRR + New + Expansion + Contraction + Churn

ARR = MRR × 12

With labels in column A and signed amounts in B2:B6, closing MRR is:

=SUM(B2:B6)

The bridge gives $107,000. Opening ARR is $1,200,000 and closing ARR is $1,284,000, so net ARR growth is $84,000, or 7.0%. Dollar amounts are exact here; percentages are shown to one decimal place.

Deal A has no October activation because it starts in November. Deal C replaces an existing subscription on unchanged terms, so its renewal booking creates no incremental MRR. The new $5,000 of MRR comes from a contract signed before October. Those explanations reconcile the timing; they are not missing sales.

Check the bridge against an independently summed closing subscription schedule. The difference must be zero. Keep the underlying subscription IDs in the exception list if it is not. For billed and recognized amounts, use the separate SaaS sales revenue analysis workflow rather than inserting those amounts into the ARR bridge.

Keep pipeline on one comparable basis

For open opportunities, choose annualized recurring value so contract duration does not dominate the comparison. These records are open at October 31 and expected to close in the next reporting quarter.

Opportunity Annualized opportunity value (USD) Stated probability Weighted value (USD)
D 180,000 50% 90,000
E 120,000 25% 30,000
Total 300,000 120,000

With values in B2:B3 and probabilities in C2:C3, calculate each weighted value with =B2*C2. The total has an independent check:

=SUMPRODUCT(B2:B3,C2:C3)

Google's SUMPRODUCT reference describes multiplying corresponding entries and summing the products. It returns $120,000 here, the same as the weighted-value column. These stated probabilities are scenario assumptions, not measured conversion rates.

Keep a copy of each dated export. Today's edited opportunity list cannot reproduce last month's pipeline. If the main difficulty is organizing the sheet, the Google Sheets sales dashboard article covers that adjacent job. Use a sales account coverage dashboard to examine which accounts lack attention rather than adding activity counts to revenue totals.

Where it goes wrong

  • Renewals counted as growth. A renewal booking only changes ARR to the extent that the active recurring amount changes.
  • Contract value treated as annual value. A multiyear booking needs its term beside it before comparison with ARR or annualized pipeline.
  • Signing and activation mixed. A contract signed this month can start later; retain both dates and explain the gap.
  • Open and won deals counted together. Pipeline is a dated set of open opportunities. Remove closed records from that set.
  • One unexplained total. Regional filters, canceled subscriptions and excluded services must use the same documented rules on every refresh.

Covirage is not affiliated with Google.

Build this view from your own files in Covirage

Bring your closed-won deals, subscription movement schedule and dated open-opportunity export: Covirage maps the columns, and its tools compute and check the separate totals. The external AI model explains the differences with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data.

See Covirage for software businesses for the industry context.

Questions people ask

Should bookings and ARR match?

They do not have to match. Bookings can include the full value of a multiyear contract, while ARR annualizes recurring revenue active at a particular date. Renewals can also produce bookings without increasing ARR, and signed contracts may start later.

What belongs in a SaaS sales dashboard?

Include signed bookings, opening and closing recurring revenue, the movements between those balances, and dated open pipeline. Show the reporting period and definitions beside the figures. Add an exception list for missing start dates, duplicate opportunities and unexplained recurring revenue changes.

Is probability-weighted pipeline a revenue forecast?

It is a scenario calculation using the probabilities attached to open deals. It does not establish when a contract starts, how much revenue is recognized, or whether a deal will close. Review the assumptions and compare with actual outcomes before relying on it.