CRM bookings and billing disagree because the CRM records what sales believes was sold and billing records what was invoiced, and nothing forces the two to match. The fix is a process, not a report: closed won set by signature, amounts taken from the signed quote, the CRM feeding billing automatically, and a monthly reconciliation where every difference gets a cause.
What this covers
- Why don't CRM bookings match billing and ARR?
- How do we fix a slow, error-prone quote to cash?
- Should commission be paid on bookings or on cash collected?
- What goes into a SaaS sales compensation plan?
- How do we control discounting without slowing deals?
- How do we connect Stripe, QuickBooks or NetSuite to the CRM?
- Who owns the revenue data between sales and finance?
Why don't CRM bookings match billing and ARR?
Because the CRM records what sales believes was sold, billing records what was invoiced, and in most companies nothing forces them to agree. The differences come from a short list of causes, and each one is a process gap rather than a reporting error. Find them with a monthly reconciliation: every closed won deal in the CRM against every new contract in billing, with a cause written next to each difference.
The CRM says $1.42M of new ARR, billing says $1.08M. Five causes explain the $340K gap: two deals closed won before signature (−$90K), a three-year contract booked at total value (−$160K), renewals booked as new (−$110K), a missing discount (−$20K), and a deal invoiced with no CRM record (+$40K).
An illustration with made-up numbers, not a client's.
The usual causes, and the fix for each:
| Cause | What you see | The process fix |
|---|---|---|
| Closed won before signature | Bookings in the CRM with no contract in billing | Closed won set by the e-signature event |
| Total contract value as ARR | Multi-year deals inflate new ARR | Separate fields for ARR, term and total contract value |
| Renewals booked as new | New business overstated, NRR understated | A deal type field, required, with renewal and expansion options |
| Amount differs from the paper | Discounts or products changed after the quote | CRM amount and products copied from the signed quote |
| Deals invoiced outside the CRM | Revenue in billing with no CRM record | Billing customers created only from closed won deals |
| Dates | Booked in one month, starting in another | Close date and contract start date as separate fields |
How do we fix a slow, error-prone quote to cash?
Make each step generate the next from the same data, so nothing is typed twice. Errors enter quote to cash wherever someone re-keys a number: a price copied from an old quote, a contract edited away from the approved terms, a deal re-entered into billing. Remove the re-keying and most of the errors and delays go with it.
- Where it breaks
- Prices and products typed by hand or copied from an old quote
- The fix
- One product catalog and price book in the CRM, quotes generated from it
- Where it breaks
- Discounts go out with no approval, or wait days for one
- The fix
- An approval matrix by discount band, routed automatically
- Where it breaks
- Terms edited in Word, so the contract drifts from the quote
- The fix
- Contract generated from the approved quote, with a clause library
- Where it breaks
- Deal marked closed won before signature to make the quarter
- The fix
- Closed won set by the e-signature event, not by hand
- Where it breaks
- CRM amount, dates and products differ from the signed paper
- The fix
- Amount, start date and term copied from the signed quote
- Where it breaks
- Finance re-keys the deal into billing
- The fix
- Closed won creates the customer and subscription in billing
- Where it breaks
- Overdue invoices invisible to the account owner
- The fix
- Invoice and payment status synced back to the CRM account
- Where it breaks
- Revenue schedules built in a spreadsheet
- The fix
- Start date and term from the contract drive the schedule
Not every company needs a CPQ tool to get there. Many growth-stage teams need a clean product catalog, quote templates and an approval workflow in the CRM they already have. Approvals for non-standard deals are covered under deal desk.
Should commission be paid on bookings or on cash collected?
We usually recommend paying on bookings, with a clawback if the customer does not pay, because paying on cash delays reps' pay for reasons outside their control and turns them into collectors. Paying on cash makes sense where payment risk is high or deals are paid over long, uncertain schedules. A split is a common middle path.
| Pay on | Good for | Watch out for |
|---|---|---|
| Bookings | Rewards closing; simple to calculate from the CRM | Paying on deals that never pay; needs a written clawback rule |
| Cash collected | Matches commission to cash; no clawbacks | Delayed pay, reps chasing invoices, harder to calculate |
| Split | Part on signature, the rest on first payment | Two payment events to track per deal |
Whichever you choose, write down how multi-year deals, prepayments, renewals and cancellations are treated before the year starts. Commission disputes usually come from a case the plan did not mention.
What goes into a SaaS sales compensation plan?
On-target earnings split into base and variable pay, a quota the team has the pipeline to reach, a commission rate, accelerators above quota, and written rules for the edge cases. The plan should pay most where the business gains most, which is why accelerators matter more than the base rate.
At 120% of quota the rep earns $104K. Above quota each dollar pays 1.5 times the base rate, so the plan pays most where the business gains most.
An illustration with made-up numbers, not a client's.
- The variable share depends on how much the rep controls the outcome: higher for new business AEs, lower for account managers and CSMs.
- Quota should be set from capacity and pipeline, not from the board number divided by headcount. See how many reps you need.
- Accelerators above quota reward overperformance; decelerators below a floor stop paying full rate for very low attainment.
- Edge cases in writing: multi-year deals, ramp periods for new hires, territory changes mid-year, split deals and clawbacks.
How do we control discounting without slowing deals?
Set discount bands with an approver for each, route approvals automatically in the CRM, and report discount by rep and segment every month. Reps keep authority for small discounts, so most deals never wait, and the large ones get a second look from someone accountable for margin.
| Discount band (example) | Approver | Target turnaround |
|---|---|---|
| Up to 10% | The rep | None needed |
| 10% to 20% | Sales manager | Same business day |
| 20% to 30% | VP Sales or deal desk | One business day |
| Over 30%, or non-standard terms | CFO | Two business days |
The bands are an illustration; yours come from your pricing and margins. The report matters as much as the rule: discount that creeps up quarter by quarter, or clusters at the end of the quarter, is a pricing or pipeline problem showing up in the deal desk.
How do we connect Stripe, QuickBooks or NetSuite to the CRM?
Decide which way each piece of data flows before choosing a tool. Closed won deals should create customers and subscriptions in billing. Invoices, payments and the current recurring revenue should flow back to the CRM account, so sales and customer success can see who is overdue or about to renew.
- One shared customer ID across the CRM, billing and accounting, set when the customer is created.
- Product mapping between the CRM product catalog and billing plans, maintained in one place.
- The right connector: a native integration where one exists and covers your fields; an automation platform such as Zapier or n8n for the gaps; custom code only when neither can.
- Error alerts, so a failed sync is noticed the same day rather than at month end.
Integration builds start from $9,000; the detail is under GTM engineering and integrations.
Who owns the revenue data between sales and finance?
Finance owns the definitions: what counts as ARR, a booking, a renewal and revenue. Revenue operations owns the systems that make the CRM follow those definitions: fields, validation, the quote to cash flow and the integrations. Sales owns entering deals correctly. Problems start when the middle part belongs to nobody, so finance cleans up the CRM in a spreadsheet every month.
It is bigger than a quick fix if the CRM and billing disagree by more than you can explain each month, if commission is calculated in a spreadsheet nobody else can follow, or if board revenue numbers are rebuilt by hand. That is the work behind our deal desk, forecasting and revenue analytics and integration projects, and our GTM diligence for investors checks the same things before close.
Want the CRM and billing to agree?
Book a free 30-minute review. We will look at how a deal gets from quote to cash in your systems and name the three fixes worth doing first.
Take the RevOps Health Check Book a free 30-minute reviewFrequently asked questions
Why don't CRM bookings match billing?
Because the CRM records what sales believes was sold and billing records what was invoiced, and nothing forces them to agree. Common causes are deals marked closed won before signature, multi-year contracts booked at total value, renewals booked as new business, amounts that differ from the signed quote, and deals invoiced with no CRM record. A monthly reconciliation finds each cause.
Should sales commission be paid on bookings or cash collected?
We usually recommend paying on bookings with a written clawback if the customer does not pay, because paying on cash delays reps' pay for reasons outside their control. Paying on cash suits high payment risk or long, uncertain payment schedules. A split, part on signature and part on first payment, is a common middle path.
How do you fix quote to cash?
Make each step generate the next from the same data so nothing is typed twice: quotes from one product catalog, approvals routed by discount band, contracts generated from the approved quote, closed won set by signature, and closed won creating the customer and subscription in billing, with payments synced back to the CRM.
How do you control sales discounting?
Set discount bands with an approver for each, let reps approve small discounts themselves, route larger ones automatically in the CRM, and report discount by rep and segment monthly. Watch for discount creeping up over time or clustering at the end of the quarter.
How do you connect billing systems like Stripe or NetSuite to a CRM?
Decide the data flow first: closed won deals create customers and subscriptions in billing, and invoices, payments and recurring revenue flow back to the CRM account. Use one shared customer ID, map products in one place, choose a native integration or an automation platform such as Zapier or n8n, and alert on sync errors.
Keep reading: the GTM metrics guide for finance (bookings vs billings vs revenue, CAC payback, burn multiple) and the pipeline and forecast guide.