← Назад к вопросам

Что такое CAC (Customer Acquisition Cost) и как его оптимизировать?

2.0 Middle🔥 231 комментариев
#Атрибуция и маркетинг#Метрики продукта

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

CAC (Customer Acquisition Cost) и оптимизация

CAC — один из самых важных показателей в бизнесе. Неправильно рассчитанный или неоптимизированный CAC может уничтожить стартап. Расскажу про расчёт и практическую оптимизацию.

Что такое CAC

CAC (Customer Acquisition Cost) — это сумма денег, которую нужно потратить на маркетинг и продажи, чтобы привлечь одного нового клиента.

Формула:

CAC = (Все расходы на маркетинг + продажи за период) / (Количество новых клиентов за период)

Пример:
Потратили $100,000 на маркетинг
Привлекли 1,000 новых клиентов
CAC = $100,000 / 1,000 = $100 за клиента

Как рассчитать CAC правильно

Что включать в расходы на маркетинг

Прямые расходы:

  • Реклама (Google Ads, Facebook, Yandex)
  • Зарплата маркетолога
  • Email-маркетинг софт
  • Content маркетинг (написание статей, видео)

Косвенные расходы:

  • Зарплата sales manager
  • CRM систему
  • Analytics tools
  • Web hosting (если сайт — часть acquisition)

На что часто забывают:

  • Affiliate commission
  • Referral программу
  • Event marketing
  • PR агентства

Как считать новых клиентов

Прямой метод:

SELECT 
  signup_month,
  COUNT(DISTINCT user_id) as new_users
FROM users
WHERE signup_date >= DATE_TRUNC('month', signup_date)
GROUP BY signup_month

Когортный метод (более точный): Отслеживаешь, когда пользователь впервые совершил платёж:

SELECT 
  DATE_TRUNC('month', first_payment_date) as cohort_month,
  COUNT(DISTINCT user_id) as paying_customers
FROM users
WHERE first_payment_date IS NOT NULL
GROUP BY cohort_month

Второй метод лучше, потому что учитывает только реальных платящих клиентов.

Виды CAC

CAC по каналам

Рассчитываешь CAC отдельно для каждого маркетинг-канала:

SELECT 
  signup_source,
  SUM(marketing_spend) as total_spend,
  COUNT(DISTINCT user_id) as new_users,
  SUM(marketing_spend) / COUNT(DISTINCT user_id) as cac
FROM users
FULL OUTER JOIN marketing_spend ON users.source = marketing_spend.channel
WHERE signup_date >= '2024-01-01'
GROUP BY signup_source
ORDER BY cac ASC

Результат:

  • Facebook ads: $45 CAC
  • Google Search: $120 CAC
  • Referral Program: $10 CAC
  • Content (organic): $0 CAC (уже потрачено на создание)

Вывод: Referral и Organic лучше! Нужно инвестировать в них.

CAC по типу клиента

CAC разный для разных сегментов:

SELECT 
  user_segment,
  SUM(marketing_spend) as spend,
  COUNT(*) as new_users,
  SUM(marketing_spend) / COUNT(*) as cac
FROM users u
JOIN marketing_data m ON u.id = m.user_id
GROUP BY user_segment
  • Enterprise: $5,000 CAC (дорого, но LTV выше)
  • SMB: $500 CAC
  • Self-serve: $50 CAC

Blended CAC

Средний CAC по всем каналам:

Blended CAC = $100,000 / 1,000 = $100

Но это скрывает различия между каналами. Лучше считать по каналам.

CAC Payback Period

Важный метрик: за сколько месяцев окупится затрата на привлечение?

CAC Payback Period = CAC / (ARPU * Gross Margin %)

Где:
- CAC = $100
- ARPU = Average Revenue Per User = $50/месяц
- Gross Margin = 70% (затраты на сервис)

Payback = $100 / ($50 * 0.7) = $100 / $35 = 2.9 месяца

Бенчмарки:

  • SaaS: <12 месяцев (желательно <6)
  • E-commerce: <1 месяца (быстро окупается)
  • Enterprise: <24 месяцев (долго окупается, но высокий LTV)

Если payback >12 месяцев, модель неприбыльна.

Как оптимизировать CAC

1. Снизить затраты на маркетинг

Тактика: Shift to organic channels

SELECT 
  DATE_TRUNC('month', signup_date) as month,
  signup_source,
  COUNT(*) as users,
  ROUND(100.0 * COUNT(*) / SUM(COUNT(*)) OVER (PARTITION BY DATE_TRUNC('month', signup_date)), 2) as percentage
FROM users
WHERE signup_date >= '2023-01-01'
GROUP BY month, signup_source

Цель: увеличить % organic трафика (он бесплатен).

Тактика: Double-down on high-ROI channels

Если Facebook ads дают CAC $45, a Google Ads $120, увеличь бюджет Facebook.

SELECT 
  channel,
  spend,
  new_users,
  roi = (new_users * ltv - spend) / spend * 100
FROM marketing_channels
ORDER BY roi DESC

Инвестируй в top channels.

Тактика: Optimizе ad creative и landing pages

Маленькие улучшения в конверсии сильно снижают CAC:

Было: 2% conversion, $10,000 spend, 200 users, CAC = $50
Стало: 2.5% conversion (на 25% выше), $10,000 spend, 250 users, CAC = $40 (-20% CAC!)

2. Увеличить количество клиентов без увеличения расходов

Тактика: Referral программа

Дай пользователям стимул приводить друзей:

SELECT 
  referrer_id,
  COUNT(DISTINCT referred_user_id) as referred_count,
  SUM(CASE WHEN referred_user.status = 'paying' THEN 1 ELSE 0 END) as paying_referred,
  AVG(referred_user.ltv) as avg_referred_ltv
FROM referrals
GROUP BY referrer_id
HAVING COUNT(DISTINCT referred_user_id) > 0

CAC для referral программы: Cost = (referral_bonus * conversion_rate). Если бонус $10 и 20% конвертятся, CAC = $50 (дешевле чем paid ads).

Тактика: Content Marketing

Написание статей, блога, SEO — долгосрочно снижает CAC (organic трафик).

Month 1: Написал 10 статей, 0 трафика
Month 3: 1,000 organic visits из статей, рост
Month 6: 10,000 organic visits, CAC для этих пользователей ~$0

3. Улучшить quality рассчёта

Тактика: Count only paying customers

-- Неправильно: считаешь все signups
SELECT COUNT(*) FROM users WHERE signup_date = TODAY()

-- Правильно: считаешь только платящих
SELECT COUNT(DISTINCT user_id) 
FROM payments 
WHERE payment_date <= signup_date + INTERVAL 30 DAYS

Первый способ завышает CAC (много free trial, которые не платят).

Практический пример: Оптимизация CAC для SaaS

Исходная ситуация:

  • Blended CAC: $500
  • ARPU: $100/месяц
  • Gross Margin: 70%
  • Payback Period: $500 / ($100 * 0.7) = 7.1 месяца ✓ (нормально)
  • Churn: 5% в месяц

LTV = $100 / 0.05 = $2,000 LTV/CAC = $2,000 / $500 = 4 (здоровый бизнес)

Но есть проблема: 70% трафика из paid ads (дорого).

План оптимизации:

  1. Увеличить organic до 40% (месяц 1-3)

    • Инвестировать в SEO и content
    • Новый CAC: 40% * $0 + 60% * $500 = $300 (на 40% ниже!)
  2. Запустить referral (месяц 2)

    • Бонус $50 за реферала (если приведённый платит)
    • Expected conversion: 25%
    • CAC for referral: $50 / 0.25 = $200 (дешевле!)
    • Если 10% новых пользователей из referral: CAC = 10% * $200 + 90% * $300 = $290
  3. Улучшить paid ads (месяц 1)

    • A/B тестировать landing pages
    • Целевое увеличение конверсии на 20%
    • CAC paid ads: $500 * (1 / 1.2) = $417 (на 17% ниже)

Результат через 3 месяца:

  • CAC: ~$250 (было $500, 50% улучшение!)
  • Payback Period: 3.6 месяца (было 7.1)
  • LTV/CAC: 8 (было 4, бизнес более здоровый)

Мониторинг CAC дашборд

SELECT 
  DATE_TRUNC('week', signup_date) as week,
  signup_source,
  COUNT(DISTINCT user_id) as new_users,
  SUM(marketing_spend) as spend,
  ROUND(SUM(marketing_spend) / COUNT(DISTINCT user_id), 2) as cac,
  ROUND(SUM(marketing_spend) / COUNT(DISTINCT user_id) / COALESCE(avg_ltv, 0), 2) as cac_ltv_ratio
FROM users u
LEFT JOIN marketing_spend m ON u.source = m.channel AND DATE_TRUNC('week', u.signup_date) = DATE_TRUNC('week', m.date)
LEFT JOIN (SELECT AVG(ltv) as avg_ltv FROM users) ltv_calc ON TRUE
WHERE signup_date >= NOW() - INTERVAL 12 WEEKS
GROUP BY week, signup_source
ORDER BY week DESC, cac ASC

Отслеживай:

  • CAC по каналам (какие дешевле?)
  • Тренд CAC (растёт ли?)
  • CAC vs LTV ratio (здоровый бизнес?)

Частые ошибки в расчёте CAC

Ошибка 1: Забыли included зарплаты

CAC = Ad spend / users (неправильно)
CAC = (Ad spend + Salaries + Tools) / users (правильно)

Ошибка 2: Считают фарм-пользователей Если у тебя много ботов или фарм-аккаунтов, CAC будет занижен.

Ошибка 3: Attribution confusion Сложно атрибьютировать, какой канал привлёк пользователя (он может зайти через разные каналы).

Решение: используй multi-touch attribution или первый клик.

Итог

CAC это:

  • Ключевой метрик для здоровья бизнеса
  • Нужно рассчитывать по каналам, не только blended
  • CAC Payback <12 месяцев = жизнеспособный бизнес
  • LTV/CAC > 3 = здоровый бизнес
  • Оптимизация: organic, referral, улучшение конверсии
  • Мониторь еженедельно