TGViewer
Симулейтив Симулейтив @simulative_official · 7.46K subscribers
Post #2778 1.18K
Как считать retention: от базовых формул до продвинутых метрик

Привет! На связи Илья Ковалев, ментор курса «Аналитик данных» 👋🏻

Retention или возвращаемость — одна из ключевых метрик в аналитике продукта. Она позволяет ответить на вопрос: сколько пользователей, зарегистрировавшихся в определенный день, вернулись на N-й день?

Привлечь нового пользователя гораздо дороже, чем удержать существующего, поэтому важно следить за этой метрикой. Если retention низкий — пользователи оттекают быстрее, чем успевают принести прибыль компании, и вы просто сжигаете бюджет на привлечение.

Формула простая:

Retention Day N = (Количество пользователей вернувшихся на N-й день / Общее количество пользователей в когорте) x 100%


Например, 1000 пользователей зарегистрировались 1 января. 300 из них вернулись 8 января (Day 7). Retention Day 7 = 300/1000 = 30%.

Очевидно, что каждый раз считать возвращаемость вручную — задача не для дата-аналитика, поэтому смоделируем запрос в SQL.

Допустим, у нас есть таблица events с событиями пользователей формата user_id | event_timestamp | event_name и мы хотим посчитать retention в окнах 1/7/14/30 дней.

Тогда, чтобы посчитать retention, нам необходимо:
1. Найти дату первой активности каждого пользователя (cohort_date);
2. Для каждой активности пользователя посчитать, на какой день после регистрации она произошла;
3. Посчитать, сколько уникальных пользователей было активно на каждый day_number;
4. Поделить на размер когорты.

SQL-запрос будет выглядеть так:

WITH first_activity AS (
SELECT
user_id,
MIN(DATE(event_timestamp)) AS cohort_date
FROM events
GROUP BY user_id
),

user_activity AS (
SELECT
e.user_id,
fa.cohort_date,
DATE(e.event_timestamp) AS activity_date,
DATE_DIFF(DATE(e.event_timestamp), fa.cohort_date, DAY) AS day_number
FROM events e
JOIN first_activity fa USING (user_id)
),

cohort_sizes AS (
SELECT
cohort_date,
COUNT(DISTINCT user_id) AS cohort_size
FROM first_activity
GROUP BY cohort_date
)

SELECT
ua.cohort_date,
ua.day_number,
COUNT(DISTINCT ua.user_id) AS returned_users,
COUNT(DISTINCT ua.user_id) * 100.0 / cs.cohort_size AS retention_rate
FROM user_activity ua
JOIN cohort_sizes cs USING (cohort_date)
WHERE ua.day_number IN (1, 7, 14, 30)
GROUP BY ua.cohort_date, ua.day_number, cs.cohort_size
ORDER BY ua.cohort_date, ua.day_number;


Какие окна retention смотреть, зависит от типа продукта и от частотности сервиса. Для частотных сервисов обычно смотрят на:

🟠 Retention Day 1 — критичный показатель для всех продуктов. Показывает качество онбординга. Если пользователь не вернулся на следующий день, он скорее всего не вернётся вообще.

🟠 Retention Day 7. Показывает, прошёл ли пользователь период «знакомства» с продуктом.

🟠 Retention Day 30 — долгосрочное удержание. Если пользователь активен через месяц, он с большой вероятностью останется надолго.

Для низкочастотных (B2B-сервисов, фудтеха) окно возвращаемости может быть выше.

Практические советы:

1️⃣ Всегда смотрите retention в разрезе когорт, а не общий по всей базе. Когорты могут сильно различаться.

2️⃣ Сегментируйте retention по источникам трафика. Часто оказывается, что дорогой канал приводит пользователей с низким retention.

3️⃣ Retention — это про продукт, а не про маркетинг. Если Retention Day 1 низкий — проблема в онбординге или в product-market fit.

4️⃣ Не путайте retention и churn. Churn = 1 - Retention. Если retention 30%, то churn 70%.

5️⃣ Сравнивайте retention до и после запуска фичей. Это один из лучших способов оценить их влияние на продукт.


Retention — базовая метрика для любого продукта. Научитесь считать её правильно, и вы сможете отвечать на главный вопрос: возвращаются ли пользователи в ваш продукт?

📊 Simulative
  • 🔥 16
  • ❤ 8
More from @simulative_official
  1. Oct 9, 2026💻💻💻💻💻 Как выбрать своё направление в аналитике? Решаешь войти в аналитику, открываешь…
  2. Oct 9, 2026🔍 Найдите пять проблем в этом выводе Привет! На связи Ева Панкратова, ментор курса «Анали…
  3. Oct 8, 2026📞 Ищем новых менторов в Симулейтив Мы ищем специалистов в DA/DE/BI/ML, которые будут сопр…
  4. Oct 7, 2026Post #3608
  5. Oct 7, 2026Уже сегодня! Вебинар о профессии дата-инженера На открытом вебинаре познакомимся с одной и…
  6. Oct 6, 2026Проекты наших студентов ❤️ Сегодня покажем вам несколько примеров, которые лучше любых сло…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →