Доля оттока пользователей (Churn Rate)

Отток = 1 - retention. Доля прошлой активной базы, которая не вернулась в текущем периоде.

Что такое Доля оттока пользователей (Churn Rate)?

Отток = 1 - retention. Доля прошлой активной базы, которая не вернулась в текущем периоде.

Формула

Churn = 1 - Retention = Ушедшие / Активные в прошлом периоде

Как считать

Берём активных в прошлом периоде, смотрим, кто не активен в текущем, делим на прошлую базу.

Зачем нужна

Ключевой драйвер роста и LTV. Высокий Churn съедает весь приток.

SQL-запрос

WITH prev_period AS (
  SELECT DISTINCT user_id
  FROM events
  WHERE event_timestamp >= DATE_TRUNC('month', CURRENT_DATE - INTERVAL '1 month')
    AND event_timestamp < DATE_TRUNC('month', CURRENT_DATE)
),
curr_period AS (
  SELECT DISTINCT user_id
  FROM events
  WHERE event_timestamp >= DATE_TRUNC('month', CURRENT_DATE)
    AND event_timestamp < DATE_TRUNC('month', CURRENT_DATE + INTERVAL '1 month')
)
SELECT
  COUNT(DISTINCT prev.user_id) AS active_prev,
  COUNT(DISTINCT curr.user_id) AS active_curr,
  COUNT(DISTINCT prev.user_id) FILTER (WHERE curr.user_id IS NOT NULL) AS retained,
  COUNT(DISTINCT prev.user_id) - COUNT(DISTINCT prev.user_id) FILTER (WHERE curr.user_id IS NOT NULL) AS churned,
  ROUND(
    (COUNT(DISTINCT prev.user_id) - COUNT(DISTINCT prev.user_id) FILTER (WHERE curr.user_id IS NOT NULL))::decimal
      / NULLIF(COUNT(DISTINCT prev.user_id), 0),
    3
  ) AS churn_rate
FROM prev_period prev
LEFT JOIN curr_period curr ON curr.user_id = prev.user_id;

Частые вопросы

Что такое Churn Rate простыми словами?

Churn Rate — доля клиентов, которые перестали пользоваться продуктом или отменили подписку за период. Отток 5%/мес значит, что из 1000 клиентов за месяц ушли 50.

Чем customer churn отличается от revenue churn?

Customer churn считает ушедших клиентов по головам, revenue churn — потерянную выручку. Они расходятся, когда уходят в основном мелкие клиенты: customer churn высокий, а revenue churn маленький — и наоборот.

Обновлено:
Открыть каталог метрик