What should a subscription business measure instead of ROAS?
Measure how many months of gross margin it takes to recover what you paid to acquire a customer. First-purchase ROAS undercounts subscriptions, because most of the value arrives in later billing cycles, and it overcounts free trials, because many trials never pay.
Five numbers do most of the work. Define them once, in writing, and compute them from your billing system, not from the ad platform:
| Metric | Formula | Note |
|---|---|---|
| Cost per trial | Ad spend / trial starts | Early signal; available within days |
| Trial-to-paid rate | First paid charges from a trial cohort / trial starts in that cohort | Read only after the trial and a retry period have ended |
| CAC | Acquisition spend / new paying customers | Decide whether spend includes creative and fees, then keep it fixed |
| Monthly gross margin per customer | Monthly revenue per customer x gross margin % | Gross margin after payment fees, hosting, fulfillment |
| CAC payback (months) | CAC / monthly gross margin per customer | Simple version; the cohort version below is more honest |
Two related numbers: cohort ROAS is cumulative revenue from a cohort at a fixed age (day 30, day 90) divided by the spend that acquired it, and a simple LTV is monthly gross margin per customer divided by monthly churn. Both are covered with examples below.
How do you calculate CAC payback? A worked example
Start with the simple formula, then correct it for churn. All numbers here are hypothetical round numbers chosen to show the arithmetic.
- Plan price: $30 per month. Gross margin: 80%. Monthly gross margin per customer: $24.
- Cost per trial from ads: $40. Trial-to-paid rate: 40%.
- CAC per paying customer: $40 / 0.40 = $100.
- Simple payback: $100 / $24 = about 4.2 months.
The simple formula assumes nobody cancels. Now apply the cohort’s observed retention (the share of paying customers still paying in each month):
| Month | Still paying | Margin per acquired customer | Cumulative margin |
|---|---|---|---|
| 1 | 100% | $24.00 | $24.00 |
| 2 | 80% | $19.20 | $43.20 |
| 3 | 70% | $16.80 | $60.00 |
| 4 | 64% | $15.36 | $75.36 |
| 5 | 60% | $14.40 | $89.76 |
| 6 | 57% | $13.68 | $103.44 |
Cumulative margin passes the $100 CAC in month 6, not month 4. That gap is why cohort payback beats the simple formula: it reports what actually happened, and it gets more reliable each month the cohort ages.
What is cohort ROAS, and how is it different from platform ROAS?
Cohort ROAS ties revenue back to the spend that acquired a specific group of customers, measured at the same age for every cohort. Using the example above, revenue per acquired paying customer through month 3 is $30 + $24 + $21 = $75 (the price times the share still paying). Against a $100 CAC, day-90 cohort ROAS is 0.75. On a margin basis it is $60 / $100 = 0.60.
Platform ROAS is different in three ways. It counts conversions the platform attributes within its own window (Google Ads’ default click-through window is 30 days, per its conversion windows article). It usually counts the first transaction value, not renewals. And two platforms can claim the same customer. Use platform ROAS to steer within a platform; use cohort ROAS and payback to decide budgets. For whether the ads caused the subscriptions at all, run a holdout; see incrementality testing.
How should you read LTV?
Treat simple LTV as an upper-bound estimate and make decisions on observed payback. With constant churn, LTV = monthly gross margin / monthly churn. At $24 margin and 5% monthly churn, that is $480. The catch: the example cohort lost 20% of its customers going into month 2, then between 5% and 13% of those remaining each month after that. Real churn is rarely constant, and a new product has no long cohorts to check against. A sensible rule is to set your CAC ceiling from a payback period you can fund, and let LTV inform how far you can stretch it.
Which event should ads optimize toward?
Optimize toward the deepest event that happens often enough for the delivery system to learn. Meta says ad sets usually exit the learning phase after about 50 results in the week after the last significant edit. In the example, a $5,000 weekly budget at $40 per trial yields 125 trials and about 50 paid conversions, which is borderline for optimizing on paid. At half that budget, optimize on trial starts and judge the campaign on downstream trial-to-paid.
Whatever you optimize on, send the downstream events back:
- Meta: send
StartTrialandSubscribestandard events. Per Meta’s standard events reference, both acceptvalue,currencyandpredicted_ltv. Send the first paid charge from your server through the Conversions API, since it often happens days after the browser session ends; see our Conversions API guide. - Google Ads: record trial-to-paid against the original click. Google’s offline conversion imports article recommends enhanced conversions for leads over the older GCLID import, and notes that, starting June 15, 2026, these uploads move to the Data Manager API.
- Refunds: use Google’s conversion adjustments to retract or restate conversions (within 54 days, per that page), so bidding stops rewarding customers who refunded.
- New versus returning: Google’s customer lifecycle goals can bid higher for new customers (New Customer Value, which requires a Purchase conversion goal and value-based bidding) or only for new customers (New Customer Only). Both are available on Search, Performance Max, Shopping and Demand Gen as of October 2026.
How do annual plans, discounts and refunds change the math?
They change cash timing and they change who you acquire. Track each separately:
- Annual prepay: cash payback is immediate; margin payback is still spread across the year, and non-renewal at month 12 is the real test.
- First-month discounts: they raise trial-to-paid and lower month-one margin. Compute payback on the discounted price, then watch month-two retention closely.
- Refunds and chargebacks: subtract them from cohort revenue. A rising refund rate usually means the ad or the page set the wrong expectation about price, trial length or renewal.
What should you review each week, and what each month?
Read fast signals weekly and economic signals monthly, so you don’t cut a campaign on numbers that haven’t matured.
- Weekly: spend, cost per trial, trial volume by campaign and creative concept, and whether each ad set is still in learning.
- Monthly: trial-to-paid by acquisition cohort, CAC per paying customer, month-by-month retention, refunds, and cumulative margin against CAC.
- Each quarter or before a large budget change: a holdout test, so the cohorts you are paying for are ones the ads actually created.
How MSG approaches this
We define conversions before we scale: what counts as a trial, a paying customer and a refund, and where each number comes from. Campaigns optimize toward the deepest reliable signal the volume allows, and we read results on cohort revenue and payback rather than front-end CPA alone. Every test has a written hypothesis, a budget and a decision date, and ends in keep, change, scale or stop. We work inside your own ad accounts and report the business, not the platform. See our measurement service.
Sources
- Meta for Developers: Meta Pixel standard events reference
- Meta Business Help Center: About the learning phase
- Google Ads Help: About offline conversion imports
- Google Ads Help: Conversion adjustments (retractions and restatements)
- Google Ads Help: About customer lifecycle goals
- Google Ads Help: About conversion windows
Platform features and policies change. This guide reflects the sources above as of October 7, 2026.