Каноническая формула
Для стандартного static SaaS-определения CAC payback period считается так:
PaybackMonths = CAC / ContributionMarginPerMonth
Где contribution margin в месяц равна:
ContributionMarginPerMonth = ARPA × GrossMargin
Итоговая форма:
PaybackMonths = CAC / (ARPA × GrossMargin)
Это строгая baseline-формула. Если использовать revenue вместо contribution margin, payback будет систематически занижена.
Определения переменных
- CAC: customer acquisition cost по стабильной policy атрибуции и состава spend.
- ARPA: average recurring revenue per account для релевантного клиентского сегмента.
- GrossMargin: recurring gross margin ratio в виде десятичной дроби, а не текстового процента.
- ContributionMarginPerMonth: monthly gross profit contribution, доступная для возврата CAC.
Все входы должны относиться к одному и тому же сегменту, одной временной базе и одной pricing policy. Blended CAC вместе с segment ARPA — это сломанный input contract.
Варианты payback
Стандартная static-формула не единственная допустимая, но каждый вариант отвечает на свой вопрос:
- Static payback:
CAC / (ARPA × GrossMargin). Лучший простой operating baseline. - NRR-adjusted payback:
CAC / (ARPA × GrossMargin × NRR). Только приближение, полезное там, где expansion заметно ускоряет монетизацию. - Cohort payback: первый месяц, в котором cumulative cohort gross profit contribution становится больше или равна CAC.
- Cash payback: использует cash collections и cash costs вместо логики revenue recognition.
Эти варианты нельзя сливать в одну цифру без явного naming policy. Static payback и cash payback — не взаимозаменяемые метрики.
Правила включения и исключения
Включайте:
- Sales и marketing costs, входящие в acquisition policy, по которой считается CAC.
- Recurring gross profit contribution, а не headline recurring revenue.
Исключайте из стандартной static-формулы:
- One-time implementation revenue, services revenue, taxes и pass-through charges.
- Cash timing effects, если вы не считаете именно cash payback.
- Expansion assumptions, если результат не маркируется как adjusted или cohort-based payback.
- Расходы или выручку другого сегмента, чем тот, что использовался в CAC.
Если gross margin игнорируется, результат уже не является strict CAC payback period. Это shortcut по revenue recovery, а не корректный расчёт.
Edge cases
- Zero or negative contribution margin: payback не определена или в текущей экономике недостижима.
- Very low gross margin: небольшие изменения маржи могут резко менять payback, поэтому важен sensitivity analysis.
- Ramp-up onboarding: если клиент не выходит на полный ARPA сразу, static payback будет выглядеть слишком оптимистично.
- Annual prepayment: cash payback может быть гораздо короче revenue-based payback; смешивать их нельзя.
- High churn before break-even: cohort payback может показать, что клиент вообще не успевает вернуть CAC, даже если static formula выглядит приемлемо.
Числовой пример
Предположим, что у компании:
CAC = 4,500ARPA = 350GrossMargin = 0.72
Тогда:
ContributionMarginPerMonth = 350 × 0.72 = 252
PaybackMonths = 4,500 / 252 = 17.86
С operational rounding payback составляет около 17.9 months.
Если ошибочно использовать Payback = CAC / ARPA, получится 12.86 months, что materially завышает capital efficiency.
Обратные формулы
Эта формула полезна и в обратную сторону:
ARPA_min = CAC / (TargetPayback × GrossMargin)
CAC_max = TargetPayback × ARPA × GrossMargin
Эти reverse-формы корректны только если сохраняются те же допущения static payback.
Строгий вывод
CAC payback period измеряет, сколько месяцев gross profit contribution нужно, чтобы вернуть acquisition cost. Строгая baseline-версия использует contribution margin, а не revenue.
Если gross margin опущена, если cash timing смешан с revenue-formula или если склеены разные segment policies, результат уже не является strict CAC payback period.
Связанные материалы
Базовые страницы: