Unit economics · RevOps playbook

CAC Payback Period: Why Growth Can Be a Liability (And How to Fix It)

Your CAC payback period tells you how many months it takes to earn back what you spent to win a customer. Past 18 months, every new logo is a cash hole. Here's how to calculate it correctly, what good looks like in 2026, and how to build it in HubSpot or Salesforce so you can see it by channel.

By Joe LaGrutta, Founder of JayOh · Growth engineering for B2B SaaS and PE-backed teams

Your CAC is cooked: CAC payback period graphic by JayOh showing a 38-month payback
The LinkedIn post this playbook expands on.
01 · The original post

The post that started this

The short version: you don't fix a long payback by growing faster. You fix it with price, win rate, and cutting spend that never converts.

"CAC payback is the number that decides whether your growth is an asset or a liability."Read the full post

CAC payback is the number that decides whether your growth is an asset or a liability.

You can post great top-line growth and still be quietly going broke. If it takes 30+ months to earn back what you spent acquiring a customer, every new logo is a cash hole you won't climb out of for years. You're not scaling — you're financing.

Efficient B2B recovers CAC in roughly 12 months. Past 18 and you're borrowing against a future that has to stay perfect to pay you back.

And you don't fix a long payback by growing faster. That just digs the hole quicker. You fix it by raising ACV, improving win rate, or cutting the acquisition spend that never converts in the first place.

Growth you can't fund isn't growth. It's a countdown with a nice-looking chart.

— Joe LaGrutta, Founder, JayOh. Originally posted on LinkedIn.

02 · Why this breaks

Five reasons your payback number is wrong or hidden

Most teams don't have a payback problem they can see. They have a measurement problem that hides the payback problem.

The formula
CAC payback (months) = new-logo S&M spend, lagged one quarter ÷ (new-logo ARR × subscription gross margin % ÷ 12) Spend from the period that bought the deals, divided by the monthly gross profit those deals produce.
CAUSE 01

Blended CAC hides underwater channels

Organic, referral and founder-led deals cost almost nothing, so they pull the average down. One analysis found a 14-month blended payback hiding paid search at 26 months and paid social at 34 (Fiscallion).

← the one that burns budgets
CAUSE 02

Revenue in the denominator, not gross margin

You pay back CAC with gross profit, not revenue. At a 70% margin, a revenue-based calculation understates payback by about 43%.

CAUSE 03

Spend isn't lagged

This quarter's closed deals were bought with last quarter's spend. Dividing current spend by current bookings makes a ramping budget look worse and a shrinking one look better.

CAUSE 04

Spend lives in finance, outcomes live in the CRM

Salesforce's native Campaign Actual Cost is a single manual lump sum. HubSpot only pulls spend from connected ad accounts. Events, agencies, tools and SDR salaries never meet the deals they produced.

CAUSE 05

"Grow faster" gets prescribed as the cure

Pouring money into a channel with 30-month payback digs the hole faster. The real levers are price (ACV), win rate, and cutting non-converting spend.

03 · What good looks like

CAC payback benchmarks for 2026

Under 12 months is strong. 12–18 is acceptable. Past 18 needs an NRR story to justify it, and the bar moves with ACV.

Metric / segmentWeakAcceptableStrongSource
CAC payback, rating scale> 18 months12–18 months< 12 (best: 0–6)Bessemer, State of the Cloud 2023
CAC payback, private B2B SaaS distribution≥ 24 mo (bottom quartile)16 mo (median)≤ 10 mo (25th pct); ≤ 6 top quartileAleph × Benchmarkit 2026 (FY2025 actuals, n=198)
SMB / self-serve (ACV < $15K)> 18 mo8–12 mo< 8 moOptifai Sales Ops Benchmark, 939 cos, Q2 2025–Q1 2026
Mid-market (ACV $15K–$100K)> 24 mo14–18 mo< 14 moOptifai Sales Ops Benchmark, 2025–26
Enterprise (ACV > $100K)> 30 mo18–24 mo< 18 moOptifai Sales Ops Benchmark, 2025–26
Subscription gross margin< 70%~75% (median)78%+2025 KeyBanc SaaS Survey (FY2024)
Efficiency score (net new ARR ÷ net burn)< 0.5x0.5–1.5x> 1.5xBessemer, State of the Cloud 2023

Sources: Bessemer Venture Partners, State of the Cloud 2023; Aleph × Benchmarkit, 2026 SaaS & AI Performance Benchmarks (published June 2026, CY2025 data); Optifai Sales Ops Benchmark (self-reported, Q2 2025–Q1 2026); 2025 KeyBanc Capital Markets SaaS Survey. Ranges are guides, not targets. Segment by ACV before you compare. For the full funnel, see our State of GTM Benchmarks Report 2026.

04 · The step-by-step playbook

How to build CAC payback you can actually manage

The calculation is easy. The data plumbing is the work: spend by channel in the CRM, every new customer stamped with a channel and cohort, and one definition finance signs off on.

  1. Lock one definition, then publish two versions

    What
    Write the formula into your metric dictionary: new-logo S&M spend (prior quarter) ÷ (new-logo ARR × subscription GM% ÷ 12).
    Why
    If finance and GTM compute it differently, the board meeting turns into an argument about whose spreadsheet is right.
    How
    Report a fully loaded version (all S&M, for capital efficiency) and a new-logo version (S&M allocated to acquisition, for GTM decisions). Label both, and never switch definitions between quarters. Add the term to a shared glossary; ours is the RevOps Glossary.
  2. Get spend into the CRM monthly, by channel

    What
    A record of every acquisition dollar per month per channel: ads, events, agencies, tools, content and SDR salaries.
    Why
    You can't compute payback by channel if spend lives in a GL export nobody joins to deals.
    How
    HubSpot: connect Google, LinkedIn and Meta under Marketing → Ads, which pulls Amount Spent automatically. For everything else, create a custom object Channel Spend with properties month, channel (same dropdown values as your deal channel), amount and cost_type (media / program / people / tooling). Salesforce: don't rely on the single Campaign Actual Cost field. Create Channel_Spend__c with Month__c, Channel__c (picklist), Amount__c and Cost_Type__c, and load it monthly from finance's close with Data Import Wizard or Data Loader.
  3. Stamp every new customer with a channel and a cohort

    What
    An immutable Acquisition Channel and Cohort Quarter on every closed-won new-business deal.
    Why
    Source fields drift as contacts re-convert. Payback needs the channel that bought the deal, frozen.
    How
    HubSpot: a deal-based workflow, triggered when a deal is created, copies the associated contact's Original Traffic Source (or your custom lead source) into a deal dropdown Acquisition Channel. A second workflow sets Cohort Quarter when the stage becomes Closed Won. Salesforce: a record-triggered Flow on Opportunity create maps Lead Source / Primary Campaign Source into Acquisition_Channel__c, plus a validation rule that blocks edits after IsWon = TRUE. Attribution depth beyond this lives in our Complete Guide to Attribution.
  4. Split new logo from expansion

    What
    Deal / Opportunity Type = New Business, Expansion or Renewal, required at Closed Won.
    Why
    Expansion is cheaper to win. Mixing it in makes new-logo CAC look healthier than it is.
    How
    HubSpot: make Deal Type a required property on the Closed Won stage (Pipeline settings → stage properties). Salesforce: a validation rule AND(IsWon, ISBLANK(TEXT(Type))). Report gross payback (new logo only) and net payback (with expansion) side by side.
  5. Pull subscription gross margin from finance, once

    What
    One quarterly Subscription GM% value from the P&L, excluding services revenue.
    Why
    Using blended margin (with high-margin services or a stale number) shortens payback on paper. Fiscallion puts the distortion at 20–40%.
    How
    Store it where your report reads it: a HubSpot custom object record or a Salesforce Custom Metadata Type Finance_Assumption__mdt. Better still, store it in the warehouse table finance already owns.
  6. Allocate sales cost to channels

    What
    The fully loaded AE, SDR and sales-leadership cost assigned to the channels they worked.
    Why
    Leaving SDRs out makes outbound look free. Leaving AEs out makes every channel look cheaper than it is.
    How
    Start simple: allocate by share of new customers or opportunities per channel. Upgrade to pod-based allocation (outbound SDR pod cost goes to outbound) once you have six months of data. Write the rule down. It matters less than using it every quarter.
  7. Build the payback-by-channel report

    What
    One table: channel × cohort quarter → spend (lagged), new customers, new ARR, CAC and payback months.
    Why
    This is the view that tells you where the next dollar goes. The blended number can't.
    How
    HubSpot: custom report builder with Deals plus the Channel Spend custom object, grouped by Acquisition Channel. Add a calculated property or report formula for CAC. Salesforce: a joined report (Opportunities with Products filtered to New Business Closed Won, plus Channel_Spend__c), or CRM Analytics if you need the one-quarter lag. Above $20M ARR, model it in the warehouse and push the result back with reverse ETL.
  8. Add cohort (churn-adjusted) payback

    What
    Cumulative gross profit per cohort vs. cumulative CAC, month by month.
    Why
    The standard formula ignores churn. A 16-month nominal payback can land around 18–19 months once real logo churn hits.
    How
    Join CRM cohorts to billing (Stripe, Chargebee or your ERP) on account ID. Plot the curve per cohort, and flag any cohort still below 100% recovery at month 24.
  9. Run a monthly channel review with a payback ceiling

    What
    A ceiling per channel (for example 18 months mid-market) and a rule for what happens when a channel breaks it.
    Why
    A metric without a decision rule is just a chart.
    How
    Two consecutive quarters over the ceiling freezes incremental budget for that channel until a fix (price, conversion, targeting) is in flight. Use AI to draft the variance narrative and flag deals missing a channel. A human owns the budget call. Pair it with the marketing attribution calculator when channels overlap.
05 · Best practices and common mistakes

What operators do differently

The teams with healthy payback aren't spending less. They know which dollars pay back and they move money every month.

10 best practices

  • Segment payback by ACV band before comparing to any benchmark.
  • Lag spend one quarter, or by your actual median sales cycle.
  • Use subscription gross margin, never revenue.
  • Report gross (new logo) and net (with expansion) payback separately.
  • Include SDR, AE and sales-leadership cost in CAC.
  • Freeze acquisition channel and cohort at Closed Won.
  • Set a payback ceiling per channel and attach a budget rule to it.
  • Review the latest cohort, not just the trailing average.
  • Pair long payback with NRR. Enterprise at 18–24 months needs NRR well above 110%.
  • Push qualified lifecycle stages back to ad platforms so bidding optimizes for pipeline, not form fills.

7 mistakes and what they cost

Managing to blended CACYou scale the channel that's underwater, often with 25–35 month payback hidden inside a "healthy" average.
Revenue instead of gross marginPayback understated by about 43% at a 70% margin. The board finds out in diligence.
ARPA of the whole base instead of new-cohort ARRThe denominator reflects years of expansion, not what new deals actually pay.
Excluding SDR costOutbound looks like your cheapest channel right up until you hire five more SDRs.
Ignoring churnCustomers who churn before month 16 never pay back. Effective payback runs longer than the slide says.
Applying SMB benchmarks to enterpriseYou kill a healthy 20-month enterprise motion, or excuse a broken 20-month SMB one.
"Grow out of it"More spend at a 30-month payback means more cash burned before anything comes back. In a PE hold, that compresses the multiple. See PE value creation.
06 · Interactive tool

CAC payback-by-channel calculator

Enter last quarter's spend and this quarter's new logos by channel. Watch the blended number look fine while one channel quietly runs underwater.

Scenario: your acquisition engine, by channel

Defaults are an illustrative $1.2M new-ARR quarter. Replace them with your own numbers. Everything recalculates as you type.

Swipe the table to see CAC, payback and grade →

ChannelProgram spend (prior qtr, $)New customersAvg new ARR / customer ($)CACPaybackGrade
Organic & referral–––
Paid search–––
Paid social–––
Outbound (SDR)–––

Pull the levers from the post

Blended payback–What the board deck shows
Worst channel–What the blend hides
Blended CAC–Total cost ÷ new customers
Calculating…

Math: channel CAC = (program spend × (1 − cut %) + allocated sales cost) ÷ customers × (1 + win-rate lift). Payback = CAC ÷ (ARR per customer × (1 + ACV lift) × GM% ÷ 12). "Cut" assumes the removed spend produced no customers. Grades: strong ≤ 12 months, acceptable up to your ceiling, weak above it. Illustrative model, not financial advice.

07 · Template

Copyable CAC payback metric spec and monthly review checklist

Paste this into your metric dictionary or RevOps wiki. If finance and GTM both sign it, the argument is over.

CAC Payback: Metric Spec + Monthly Review
METRIC: CAC Payback Period (months)
OWNER: RevOps (calculation) + Finance (spend and gross margin inputs)
CADENCE: Monthly by channel; quarterly cohort review; board view quarterly

DEFINITION
  New-logo CAC payback = New-logo S&M spend (prior quarter)
                         / (New-logo ARR closed this quarter x Subscription GM% / 12)
  Fully loaded payback = All S&M spend (prior quarter) / (Net new ARR x Subscription GM% / 12)

INPUTS AND SYSTEM OF RECORD
  [ ] Program spend by channel by month      -> HubSpot "Channel Spend" object / SFDC Channel_Spend__c
  [ ] Ad spend (Google, LinkedIn, Meta)      -> Ads integration, reconciled to finance close
  [ ] Sales cost (AE, SDR, leadership, fully loaded) -> Finance, allocated by: ____________
  [ ] New-logo ARR + customer count          -> Deals/Opps where Type = New Business AND Closed Won
  [ ] Acquisition Channel (frozen at Closed Won) -> Deal/Opp field, set by workflow/Flow
  [ ] Cohort Quarter                          -> Deal/Opp field, set at Closed Won
  [ ] Subscription gross margin %             -> Finance, quarterly (excl. services)

TARGETS (set by ACV band)
  SMB (<$15K ACV):        strong <8   | acceptable 8-12  | weak >18
  Mid-market ($15-100K):  strong <14  | acceptable 14-18 | weak >24
  Enterprise (>$100K):    strong <18  | acceptable 18-24 | weak >30
  Channel ceiling: ____ months

MONTHLY REVIEW CHECKLIST
  [ ] Spend loaded for last month, reconciled to the GL (variance < 5%)
  [ ] 0 Closed Won New Business deals missing Acquisition Channel
  [ ] Payback by channel calculated with a 1-quarter spend lag
  [ ] Any channel over ceiling 2 quarters running? -> freeze incremental budget
  [ ] Latest cohort vs trailing 4-quarter average: improving / flat / worse
  [ ] Gross (new logo) vs net (with expansion) payback both reported
  [ ] One action per weak channel: price, conversion, targeting, or cut
  [ ] Decisions logged with owner + due date
08 · FAQ

CAC payback period: common questions

Direct answers to what CFOs, CROs and operating partners ask most.

What is a good CAC payback period for B2B SaaS?

Under 12 months is strong, 12–18 months is acceptable, and over 18 months needs strong net revenue retention to justify it (Bessemer, 2023). The 2026 Aleph and Benchmarkit report puts the private B2B SaaS median at 16 months on FY2025 data. Enterprise motions with ACV over $100K can defend 18–24 months.

How do you calculate CAC payback period?

Divide new-logo sales and marketing spend from the prior quarter by the monthly gross profit of the new customers it produced: new-logo ARR times subscription gross margin, divided by 12. The result is the number of months to earn back acquisition cost.

Should CAC payback use gross margin or revenue?

Gross margin. You recover acquisition cost from gross profit, not revenue. At a 70% gross margin, a revenue-based calculation understates payback by about 43%.

Why is blended CAC misleading?

Blended CAC averages near-free channels like organic, referral and founder-led deals with paid channels. A healthy blend can hide a paid channel with a 25–35 month payback, which then gets more budget because the average looks fine. Measure CAC and payback by channel.

What is the difference between CAC payback and LTV:CAC?

CAC payback measures time: how many months until a customer's gross profit covers what you spent to acquire them. LTV:CAC measures total return over the customer's lifetime. Payback tells you about cash and risk. LTV:CAC tells you about long-term value, and it depends heavily on churn assumptions.

How do you shorten CAC payback without slowing growth?

Raise ACV through pricing and packaging, improve win rate so the same spend produces more customers, and cut acquisition spend that never converts. Shortening the sales cycle also helps because it lowers the sales cost per deal. Spending faster on a long-payback channel makes the problem bigger.

How do you track CAC payback in HubSpot or Salesforce?

Load spend by channel and month into the CRM (a HubSpot custom object or a Salesforce custom object such as Channel_Spend__c), stamp each closed-won new-business deal with a frozen acquisition channel and cohort quarter, then build a report by channel that divides lagged spend by new ARR times gross margin divided by 12.

The JayOh POV

Growth you can't fund isn't growth

Payback is where marketing, sales and finance finally have to agree on one number. Most teams can't produce it by channel because the plumbing isn't there: spend outside the CRM, channels that drift, margin nobody owns. We build that system so the next budget decision is a calculation, not a debate.

Want to see your real payback by channel, and which lever fixes it fastest?

Book a payback teardown
20%lower CAC on JayOh engagements
68%CPL reduction
35%shorter sales cycles
100+GTM engagements delivered