Что такое Retention N Days (Retention)?
Доля когорты, вернувшаяся в окно после N дней. Пример расчёта для 7 дней.
Формула
Retention N Days = Вернувшиеся в окно Dn / Размер когорты (пример: D7).Как считать
Берём когорту по дате начала периода, считаем долю активных в окне [D7, D7+1). Для другого N меняем окно.
Зачем нужна
Отвечает, становится ли продукт привычкой. Для LTV и прогнозов окупаемости важны разные горизонты.
SQL-запрос
WITH cohort AS (
SELECT
user_id,
created_at AS signup_ts,
created_at::date AS signup_date
FROM users
WHERE created_at >= CURRENT_DATE - INTERVAL '60 day'
),
d7_returns AS (
SELECT DISTINCT c.user_id
FROM cohort c
JOIN events e ON e.user_id = c.user_id
WHERE e.event_name IN ('app_open','session_start','feature_use') -- same activity definition!
AND e.event_timestamp >= c.signup_ts + INTERVAL '7 day'
AND e.event_timestamp < c.signup_ts + INTERVAL '8 day'
)
SELECT
c.signup_date,
COUNT(DISTINCT c.user_id) AS cohort_size,
COUNT(DISTINCT r.user_id) AS returned,
ROUND(COUNT(DISTINCT r.user_id)::decimal / NULLIF(COUNT(DISTINCT c.user_id), 0), 3) AS retention_d7
FROM cohort c
LEFT JOIN d7_returns r ON r.user_id = c.user_id
GROUP BY 1
ORDER BY 1 DESC;Частые вопросы
Что такое Retention D7 простыми словами?
Retention D7 — доля пользователей, вернувшихся в продукт на 7-й день после первого визита. Считается по когорте: из пришедших в понедельник — сколько вернулись в следующий понедельник.
Какой Retention D7 считается хорошим?
Сильно зависит от категории: у мобильных игр 10-20% — норма, у соцсетей и мессенджеров 40%+, у утилитарных сервисов «раз в месяц» D7 вообще не показателен — там смотрят D30 или недельные когорты.