ooligo
ENTRY TYPE · definition

Revenue leakage

Last updated 2026-05-02 RevOps

Revenue leakage is the gap between the revenue a company should be earning under its current contracts and pricing, and what it’s actually collecting. It’s the sum of all the small mistakes that erode top-line — uncharged usage, expired discounts that auto-renewed, unattributed expansion, churn that should have been retained.

For most B2B SaaS companies, revenue leakage is 1-5% of ARR. At $50M ARR that’s $500K-$2.5M sitting on the table.

Where it leaks

The recurring sources, ranked by frequency:

  1. Uncharged usage. Customer exceeds their plan’s usage cap; the system doesn’t trigger an upsell or charge. Usage-based and hybrid pricing models are most exposed.
  2. Expired promotional discounts. A 30% intro discount was supposed to expire after year one; nobody flipped the toggle; the discount auto-renewed. Common in HubSpot/Salesforce billing setups without strong controls.
  3. Expansion that didn’t get billed. AE upsold a 10-seat add-on; finance never received the order form; the seats were provisioned anyway.
  4. Churn that wasn’t fought. Customer indicated they’re leaving; CSM didn’t escalate to a save motion; the renewal lapsed.
  5. Multi-product entitlements. Customer is on Product A; team rolls out Product B; the integration auto-grants Product B access without recording it as expansion.
  6. Wrong contract terms applied. Annual contract priced at month-to-month rate, or vice versa, due to a CPQ misconfiguration.

How to find it

  • Audit the renewal cohort quarterly. Pull every renewal from the last 90 days; check the discount rates, terms, and seat counts against what was contractually agreed.
  • Compare usage to entitlements. If your product has metered features, build a daily report of accounts where usage exceeds entitlement. Trigger the AE/CSM motion before the customer notices.
  • Reconcile bookings vs invoiced. Salesforce shows a deal closed for $100K; finance invoiced $90K. Where’s the $10K? Reconciliation report should run monthly.
  • Track CSM escalations on at-risk renewals. Customers signaling churn should hit a save motion within 7 days. If they didn’t, the leak is operational.

How to plug it

The high-leverage moves:

  1. Wire entitlement enforcement to billing. When usage crosses a plan cap, the system flags for upsell automatically. n8n + the billing system + Slack alert is the minimum viable build.
  2. Eliminate manual discount admin. Codify discount rules in CPQ. Promotional discounts auto-expire by design, not by admin diligence.
  3. CSM playbook for at-risk renewals. Defined motion, owner, SLA. If a customer signals churn and the playbook doesn’t fire in 48 hours, that’s an operational miss.
  4. Quarterly leak audit. Treat it like a financial audit — independent owner, formal report to the CRO + CFO, action items tracked to closure.