Signal Sparrow
Platform — ROAS & CAC payback

True ROAS and CAC payback, by channel.

Blended ROAS hides your best and worst channels behind one flattering average. Signal Sparrow computes real CAC, payback in months and revenue-based ROAS for every channel and campaign — tied to Stripe MRR, not pixel estimates — so you scale what pays back and cut what doesn't.

Reconciled to StripePayback in monthsNo spreadsheetsLive in 30 minutes

CAC payback & ROAS, defined

The two numbers that decide if paid acquisition works.

CAC payback period is the number of months it takes to earn back what you spent to acquire a customer. ROAS (return on ad spend) is the revenue each dollar of spend produced. For subscription businesses, both only mean something when they're measured against real MRR — not a pixel's $0 trial event.

CAC
acquisition spend ÷ new customers
CAC payback (months)
CAC ÷ (monthly ARPA × gross margin)
ROAS
attributed revenue ÷ ad spend

Signal Sparrow calculates all three per channel from your ad spend and your Stripe revenue, so "true ROAS" reflects money in the bank. It builds on Stripe revenue sync and revenue attribution to make every number reconcile.

01
$187
Blended CAC
02
2.6 mo
CAC payback
03
4.1×
Revenue ROAS
04
3.8:1
LTV:CAC
Why your ROAS is lying to you

One blended number can't tell you where to spend.

Averages hide the truth, pixels can't see revenue, and spreadsheet payback is out of date the moment a customer upgrades or churns.

Blended ROAS4×
Brand searchCarrying the blend9×
ProspectingQuietly losing money1.2×
Scale on the blendFund the loser
Problem 01

Blended ROAS hides your losers

A healthy 4× blend can contain a 9× brand-search channel subsidizing a 1.2× prospecting channel. Scale on the blended number and you pour budget into the campaign quietly losing money.

Pixel ROASTrial starts and $0 eventsInflated
Revenue ROASStripe MRR ÷ ad spendReal
Optimize to the pixelScale cheap signups
Problem 02

Pixel ROAS isn't revenue ROAS

Ad platforms count trial starts and $0 events with their own attribution windows. Optimizing to pixel ROAS scales cheap signups, not paying customers — and inflates the number you report.

cac-payback.xlsxRefreshed once a quarterFrozen
ExpansionNot in sheet
ChurnNot in sheet
Problem 03

Spreadsheet payback goes stale

CAC payback done by hand ignores expansion, contraction and churn, and is wrong the day after you build it. You can't run acquisition off a number you only refresh once a quarter.

How it works

Spend in, payback out — automatically.

  1. Ad spend
    Stripe MRR
    Joined to the same customer
    Step 01

    Unify spend and revenue

    We pull ad spend from every connected platform and MRR from Stripe, then join both to the same customer through first-party attribution.

  2. Meta · ProspectingComputing
    CAC
    $233
    Payback
    3.1 mo
    ROAS
    3.2×
    Step 02

    Compute CAC, payback & ROAS

    For every channel, ad set and keyword we calculate CAC, payback in months and revenue-based ROAS — recomputed continuously as revenue changes.

  3. LinkedIn · ABMWatching
    Payback 4.2 moThreshold
    Alert sent
    Step 03

    Alert on blowouts

    Set a payback or CAC threshold and get notified the moment a campaign drifts past it, so you cut waste before it compounds.

Every channel, side by side

See exactly which channels pay back.

Instead of one blended average, you get a ranked view of spend, new MRR, CAC, payback and ROAS per channel — so budget decisions are obvious, defensible and tied to Stripe.

ChannelSpendNew MRRCACROASPaybackGoogle · Brand search$4,600$6,100$1416.5×1.4 moMeta · Prospecting$12,400$8,240$2333.2×3.1 moLinkedIn · ABM$6,800$3,900$3102.1×4.2 mo

Revenue-based ROAS, annualized and reconciled to Stripe MRR. Loss-making channels surface in red.

What real unit economics unlock

Cut payback, not guesswork.

Typical CAC payback, blended
2.6 mo
012 mo
Revenue-based ROAS, reconciled
4.1×
Ad spend
Revenue
Wasted ad spend cut in month one
30%
CutKept

Illustrative figures based on typical results when teams reallocate budget using revenue-based CAC payback instead of blended pixel ROAS.

Reconciled to Stripe

Payback you can take to the board.

ROAS and payback are only useful if finance and marketing trust the same number. Signal Sparrow reconciles every figure to Stripe: attributed revenue plus direct/unknown equals your net MRR for the period, to the cent. No black-box scoring, no inflated ROAS — the payback you present is the payback that's real.

Reconciled to Stripe91.4% match
Attributed
$42,180
Direct/Unknown
+$6,920

Net MRR in Stripe

=$49,100

Difference $0.00
Guardrails, not surprises

Catch CAC blowouts before they cost you.

Payback isn't a monthly report you read after the damage is done — it's a live guardrail. Set thresholds per channel and Signal Sparrow watches CAC and payback continuously, flagging drift the moment a campaign turns unprofitable so you can act the same day.

  • Per-channel thresholds

    Different limits for brand vs prospecting.

  • Real-time drift alerts

    Notified when payback crosses your line.

  • Revenue-aware

    Triggered by Stripe MRR, not pixel counts.

  • Slack & email

    Alerts where your team already works.

Payback alertsLive monitoring
  • Google · Brand — payback 1.4 moHealthy
  • Meta · Prospecting — payback 3.1 moOn target
  • LinkedIn · ABM — payback 4.2 moAbove threshold
30-minute setup

From spend and Stripe to payback in 30 minutes.

Connect Stripe and your ad accounts over OAuth, add the first-party snippet, and Signal Sparrow computes CAC, payback and ROAS per channel automatically — no data team, no spreadsheet modeling, no sales call. Your first reconciled payback view is ready in under half an hour.

Setup0 of 3
index.htmlPaste once
<script async
  src="https://data.yourdomain.com/sp.js">
</script>
2Stripe & ad accountsConnect
3CAC, payback & ROASComputing
First payback view, reconciled to Stripe

Questions, answered.

Everything teams ask before switching their attribution to Stripe truth. Still curious? Talk to us.

CAC payback period is the number of months it takes to recover the cost of acquiring a customer. The formula is CAC ÷ (monthly ARPA × gross margin). Signal Sparrow calculates it automatically per channel from your ad spend and Stripe revenue, so you never have to model it in a spreadsheet.

Many B2B SaaS teams target 12 months or less, with best-in-class often under 6. What matters more than a universal benchmark is payback by channel — some channels can pay back in weeks while others take a year, and only a per-channel view tells you where to spend.

Ad-platform ROAS is based on pixel conversions and each platform's own attribution window, and it often counts $0 trial events. True ROAS measures attributed revenue — real Stripe MRR — divided by spend, so it reflects money you actually earned.

A single blended number averages profitable and unprofitable channels together, hiding which ones lose money. Signal Sparrow breaks ROAS out by channel and campaign so a strong brand channel can't mask a failing prospecting one.

Yes. Payback and LTV:CAC are computed from full Stripe lifecycle data — trial conversions, upgrades, downgrades and churn — so your unit economics reflect durable revenue, not just the first sale.

Yes. Set payback or CAC thresholds per channel and get real-time Slack or email alerts when a campaign drifts past them, so you can cut waste before it compounds.

Ready to see which ads actually pay?

Start free, connect Stripe in 30 minutes, and get attribution that reconciles to the cent.

  • Free to start — no credit card
  • Live data in 30 minutes