By Marius Murariu, Revenue Operations Leader with 20+ years building revenue operating systems at Microsoft, HP/HPE, and Philips. Founder of MxM Revenue Engineering.

What a Revenue Leakage Evaluation Actually Measures

A revenue leakage evaluation connects three operating data systems into one figure: the gap between what a company closed and what it collected. The three systems are the CRM (what sales recorded as closed-won), the contract and billing record (what was invoiced and at what rate), and the cash collection record (what payments were received against those invoices).

Most B2B SaaS companies cannot produce this figure on demand. Not because the data does not exist, but because no one has run the four-step protocol that connects those systems. The evaluation has four steps: (1) establish the revenue baseline from CRM closed-won records, (2) map CRM close dates to contract execution dates, (3) map contract value to invoiced amounts, (4) map invoiced amounts to collected cash. Each step produces a gap, and each gap is a leakage category with a dollar value.

Industry benchmarks from billing infrastructure providers place the range at 1% to 5% of ARR lost annually to leakage[1]. At $20M ARR, that is $200K to $1M sitting between a closed deal and a collected payment. This protocol finds it and assigns a cause to each dollar.

Why Most Evaluations Do Not Start

The most common reason a leakage evaluation never begins is definitional. Finance and Sales cannot agree on whether a specific gap counts as leakage or as normal variance. When that dispute is not resolved upfront, the evaluation collapses into a blame review rather than a diagnostic one.

Set the boundary first: revenue leakage is any amount that appears as closed-won in the CRM but does not reach the company's bank account within the expected billing cycle. Under that definition, a voluntary discount authorized before contract close is not leakage. A billing delay after contract signature is. A pricing error that invoices below the contracted rate is. An uncollected invoice past terms is.

With the boundary set, the evaluation can begin. Without it, every finding becomes a negotiation about whether the gap really counts.

The Four-Step Evaluation Protocol

Step 1: Establish the revenue baseline

Pull all closed-won opportunities from the CRM for a defined cohort period, typically one quarter. For each record, capture: close date, contract value, expected billing start date, billing frequency, and account owner. This becomes the baseline number. Every subsequent step measures how much of this baseline reached collection.

Start with the CRM, not the billing system. The CRM holds what the company believes it sold. The downstream systems reveal what actually happened to that expectation.

Step 2: Map CRM close dates to contract execution dates

For each closed-won record, find the date the contract was executed by both parties. Calculate the gap between the CRM close date and the signature date.

This gap typically runs 5 to 30 days at companies without a contract evidence requirement on the close stage. Deals marked closed before a contract is signed inflate the period's pipeline view, shift billing timelines, and create a recurring discrepancy between what the forecast said would invoice and what actually billed. This is a timing leakage category. The amount is usually recoverable: the revenue is real, it just landed in the wrong period. The control is an evidence gate on the close stage requiring a signed contract before the deal can move. The stage-exit controls article covers how to install that gate without disrupting the rep's workflow.

Step 3: Map contract value to invoiced amount

For each executed contract, find the invoices issued during the cohort period. Compare the total invoiced amount to the contracted rate and term.

This step surfaces billing gaps. Common causes: promotional rates not expired after the agreed term, seat counts not updated after an expansion, manual entry errors moving deal terms from CRM to the billing system, and pricing configuration mismatches on multi-year contracts where year-two rates were not staged correctly.

In one evaluation run for a Series A company before its Series B raise, the billing gap came to $340K annualized. Twenty-three contracts had drifted below their contracted rates over four quarters. None had been flagged because Finance was reconciling invoice totals, not invoice rates against contract terms. The contract-to-invoice comparison is where that pattern gets caught. The CRM-to-bank reconciliation process describes how to build this comparison into an ongoing control rather than a one-time review.

Contract-to-invoice mismatches are among the most common and most underdetected leakage categories in SaaS billing[2]. The mismatches persist because billing teams reconcile payment totals, not payment rates against contract terms.

Step 4: Map invoiced amounts to collected cash

For each invoice issued during the cohort period, find the corresponding payment receipt. Calculate the gap between total invoiced and total collected within the billing cycle. This includes: invoices outstanding beyond terms, partial payments without a dispute record, disputed invoices with no resolution path, and invoices that have aged beyond the expected collection window.

The collection gap is the most visible leakage category because it shows up in cash flow. It is also the most actionable in the short term: most of it sits in current or recently aged invoices that have not been actively followed up. A structured dunning cadence and a weekly collections review resolve the majority within 30 days.

The full path from CRM close to cash receipt, and the controls that keep it clean, is covered in the revenue leakage overview.

Quantifying Each Leakage Category

The four steps produce dollar gaps across the cohort. The evaluation assigns each gap to one of three sub-buckets:

  1. Recoverable with a process fix. Revenue that is not permanently lost but will recur until the upstream control is corrected. Timing leakage from unsigned deals marked closed belongs here.
  2. Recoverable with customer outreach. Invoiced amounts not yet collected, billing errors correctable with a new invoice, or pricing mismatches the customer will accept if raised within a reasonable time window.
  3. Permanent loss. Invoices aged beyond collection, disputed amounts that will not resolve in the company's favor, or billing errors too old to re-invoice. These go to the write-off schedule, not the recovery list.

Assign a dollar figure to each sub-bucket. The total across all three is the leakage figure for the cohort. The recovery plan addresses sub-buckets 1 and 2.

Analysis of SaaS billing patterns shows that 38% of identified leakage traces back to pricing and billing configuration errors[3]. That makes the contract-to-invoice step the highest-yield review in most evaluations, and the structural fix backlog the highest-leverage place to stop the recurrence.

What to Do With the Output

The evaluation produces two types of decisions, and they should not share a single workstream.

Structural fixes address the process that allowed the gap to form. A billing-to-CRM mismatch that recurs quarterly is not a billing error. It is a process failure. The fix requires a reconciliation checkpoint at billing setup, a field validation on contract entry, or a review cadence that catches mismatches before they age. These belong on the RevOps backlog with a fix owner and a target date. The full revenue leakage audit documents how to structure that backlog and assign fix owners by leakage type.

Transactional recovery addresses specific gaps that can be closed with customer outreach in the next 30 days. An uncollected invoice past terms is a collection task. A pricing error that undercharged the customer over three billing cycles requires a corrected invoice and a customer conversation. These belong on a recovery list with amounts, owners, and a follow-up deadline.

Combining structural and transactional work in one queue creates the illusion of progress while the underlying process continues generating new gaps. The evaluation output goes to two places: the CFO for cash forecasting and write-off scheduling, and RevOps for the structural fix backlog.

If the leakage figure is above 3% of ARR, it warrants a board-level conversation, not just a process improvement. At that level, the forecast accuracy implications are also material: recurring timing and billing gaps will surface as consistent unexplained variance in the revenue forecast, even when the pipeline itself is healthy.

Sources

  1. Revenue Leakage in SaaS: How Billing Gaps Cost 1-5% of ARRLagogetlago.com — Source for: 1-5% of ARR lost annually to billing-related leakage; billing errors as the leading cause category.
  2. What Is Revenue Leakage and How To Prevent It?Maxiomaxio.com — Source for: contract-to-invoice mismatches as a common and underdetected leakage category in SaaS billing.
  3. Revenue Leakage Statistics 2026: 47 Data Points for CFOsLeaksShieldleaksshield.com — Source for: 38% of identified leakage traces to pricing and billing configuration errors.