Push-метрики: что считается и как читать
Как работают push-уведомления в Adset.Pro
Push-уведомления — это бесплатный ретаргетинг на твою базу подписчиков.
Механика:
-
Пользователь установил PWA и разрешил пуши → он в базе подписчиков (FCM-токен + click_id + страна + флаги поведения)
-
Ты создаёшь push-уведомление с заголовком, текстом, картинкой и ссылкой
-
Adset.Pro отправляет его через Firebase Cloud Messaging (FCM) — индивидуально на FCM-токен
-
Пользователь видит уведомление на экране телефона → кликает → попадает на лендинг/оффер
-
Service Worker на клиенте фиксирует показ (
VIEW) и клик (CLICK)
Бизнес-ценность: Это бесплатный канал повторного касания. Один раз собрал базу подписчиков — дальше отправляй пуши по расписанию или триггерам (регистрация, депозит).
Типы push-событий
Каждое взаимодействие с пушем фиксируется отдельным событием в таблице events_push:
Серверные события (фиксируются трекером сразу)
Событие | Что означает |
|---|---|
| Пуш успешно отправлен через FCM (сервер получил подтверждение от Firebase) |
| Ошибка отправки: токен устарел, подписка невалидна, FCM вернул ошибку |
| Пуш не отправлен — подписчик не прошёл таргетинг (поведенческие фильтры: registered/deposited/redeposited) |
Клиентские события (фиксируются Service Worker на устройстве)
Событие | Что означает |
|---|---|
| Пуш отобразился на экране пользователя (событие |
| Пользователь кликнул по уведомлению (событие |
Ключевая разница:
SEND≠VIEW. Пуш может быть отправлен (SEND), но не отображён: пользователь в Do Not Disturb, устройство выключено, браузер закрыт, или уведомления заблокированы на уровне ОС.
События подписки (в основной таблице events)
Событие | Что означает |
|---|---|
| Показан запрос на пуш-уведомления |
| Пользователь согласился на пуши |
| Пользователь отказался |
| Пользователь отписался позже |
| Клик по пуш-уведомлению (дублирует PUSH_CLICK в основной статистике) |
Ключевые метрики push-кампаний
Все метрики доступны в статистике (таблица events_push):
Метрика | Формула | Что показывает |
|---|---|---|
|
| Количество успешно отправленных пушей |
|
| Количество ошибок отправки |
|
| Пропущенные (таргетинг не совпал) |
|
| Пуши, отобразившиеся на экране |
|
| Клики по уведомлениям |
|
| Кликабельность — сколько % увидевших кликнули |
|
| % успешной доставки от попыток |
|
| % ошибок при отправке |
|
| % доставленных пушей, которые реально отобразились |
Пост-клик атрибуция (таблица events_push_attributed)
Метрика | Формула | Что показывает |
|---|---|---|
|
| Регистрации после клика по пушу |
|
| FTD (депозиты) после клика по пушу |
|
| Редепозиты после клика по пушу |
Интерпретация метрик
-
push_ctr: 2-5% — типичный для gambling/betting. Выше 5% — отличный креатив. Ниже 1% — проверь заголовок, картинку, релевантность
-
push_delivery_rate: 60-80% — норма для свежей базы. Ниже 50% — база «состарилась», много мёртвых токенов
-
push_fail_rate: Обратная сторона delivery_rate. Если > 40% — пора «чистить» базу или обновлять подписчиков
-
push_view_rate: Обычно 50-70% от SEND. Остальные — Do Not Disturb, выключенные устройства
Статистика пушей в интерфейсе
Основная аналитика (раздел Статистика)
В статистике можно группировать данные по пушам:
Group Key | Описание |
|---|---|
| Разбивка по конкретному пушу |
| Разбивка по слоту времени (для регулярных пушей по расписанию) |
Как выбрать push-данные:
-
Используй метрики из группы Push:
push_sends,push_views,push_clicks,push_ctrи т.д. -
Добавь group by
event_push_idчтобы увидеть какой пуш сработал лучше -
Метрики push работают с таблицей
events_push— она подключается автоматически при запросе push-метрик
Post-Click Attribution (раздел Push Аналитика)
Post-Click Attribution отслеживает конверсии, которые произошли после клика по пушу, в течение заданного окна атрибуции.
Параметр | Значение |
|---|---|
Окно атрибуции | Максимальное время между кликом по пушу и конверсией |
По умолчанию | 72 часа |
Как работает:
-
Пользователь кликает по пушу → фиксируется
event_click_idпуш-клика -
В течение N часов пользователь регистрируется или делает депозит
-
Конверсия атрибутируется этому пуш-клику через JOIN
events_push_attributed
Важные нюансы:
-
Атрибуция к пушу не заменяет атрибуцию к рекламному клику — один депозит может быть атрибутирован обоим (рекламному клику в основной статистике + пушу в Post-Click Attribution)
-
Рекомендуемое окно атрибуции для gambling: 48-72 часа. Короче — теряешь отложенные конверсии. Длиннее — слишком много «шума»
-
Post-Click Attribution показывает вклад пушей в общую конверсионную картину, а не заменяет основную статистику
Типы push-уведомлений
Регулярные пуши (REGULAR / ONE_TIME)
Отправляются по расписанию через PushPlannerService:
-
Календарь пушей (PushGroup) определяет дни и время отправки
-
Поддерживается часовое расписание по timezone пользователя (
tz_GMTp3и т.д.) -
FCM condition:
'team_X' in topics AND 'country_UA' in topics [AND 'tz_GMTp3' in topics]
Применение: Акции, бонусы, контент, регулярные напоминания.
Событийные пуши (EVENT)
Отправляются при наступлении события через PushEventScheduler:
-
Триггеры:
REGISTRATION,DEPOSITи другие -
Поддерживается отложенная отправка с настраиваемой задержкой (через
eventSchedule) -
Ожидание подписки: если подписки ещё нет, scheduler ждёт до 2 часов с backoff (5s → 15s → 1m → 5m → 10m)
Применение:
-
Приветственный пуш после регистрации (через N минут/часов)
-
Пуш-напоминание при отсутствии депозита
-
Реактивация при редепозите
Таргетинг подписчиков
Перед отправкой настраивается таргетинг по поведенческим флагам и параметрам подписки:
Поведенческие фильтры (push.targets)
Параметр | Значения | Описание |
|---|---|---|
|
| Фильтр по факту регистрации |
|
| Фильтр по факту первого депозита |
|
| Фильтр по факту редепозита |
Поведение по умолчанию: Для большинства пресетов
redeposit=not_redeposited(не слать пуши тем, кто уже редепозитил). Пресет «Reg+ Dep+ Redep+» — единственный, гдеredeposit = redeposited.
Фильтры по подписке
Параметр | Описание |
|---|---|
Страна ( | Отправить только пользователям из определённых GEO |
Timezone ( | Отправка в локальное время пользователя |
Кампания ( | Подписчики конкретных кампаний (через PushGroup) |
Статус подписки | Только |
Практические кейсы
Кейс 1: «Бонус для зарегистрированных, но не задепозивших из UA»
targets:
registrations: registered
deposit: not_deposited
redeposit: all
Фильтр: campaign ∈ [UA-кампании]
Кейс 2: «Триггерный пуш после регистрации (через 1 час)»
Тип: EVENT
Триггер: REGISTRATION
Задержка: 1 час
Содержимое: "Твой бонус ждёт! Забери прямо сейчас"
Кейс 3: «Реактивация — не задепозившие за 3 дня»
Тип: EVENT
Триггер: REGISTRATION
Задержка: 72 часа
targets:
deposit: not_deposited
Содержимое: "Не упусти свой бонус — он сгорает через 24 часа!"
Макросы в тексте пуша
В заголовке и теле уведомления можно использовать макросы для персонализации:
Макрос | Что подставляет |
|---|---|
| Значение оффера из настроек PWA (например, размер бонуса) |
| Случайный выбор из списка вариантов |
Примеры:
Заголовок:
Бонус {offer.value} только сегодня!
Тело:
{random: Успей забрать бонус!, Твой бонус ждёт!, Специальное предложение для тебя!}
Совет: Рандомизация через
{random}снижает «баннерную слепоту» — когда пользователь видит один и тот же текст каждый день и перестаёт кликать. Меняй текст каждый раз чтобы поддерживать CTR.
Причины низкой доставки
Delivery Rate низкий (< 60%)
Причина | Что делать |
|---|---|
Устаревшие FCM-токены | База «стареет» со временем — это нормально. FCM автоматически возвращает FAIL для невалидных токенов |
Пользователь удалил PWA | Подписка становится невалидной. Решение: регулярно привлекать новых подписчиков |
Пользователь заблокировал уведомления | Токен удаляется из базы при |
FCM недоступен (редко) | Повторная отправка не предусмотрена. Обычно восстанавливается само |
FAIL vs SKIP — в чём разница
Событие | Причина | Что означает |
|---|---|---|
| Ошибка FCM | Токен невалиден, подписка устарела. Техническая проблема |
| Таргетинг не совпал | Подписчик не подходит под условия (уже задепозил, не зарегистрирован и т.д.). Логическое решение |
Если push_fail_rate > 40% — база сильно устарела. Решение:
-
Запускать новые кампании для сбора свежих подписчиков
-
Фокусироваться на push-метриках свежих когорт (последние 30 дней)
Push-группы и кампании
Кампании привязываются к Push-группам (PushGroup). Это определяет:
-
Какие подписчики получают пуши из этой группы кампаний
-
Календарь отправки регулярных пушей
-
Общие настройки для всех пушей группы
FCM Topics: Подписчики автоматически подписываются на FCM-топики:
-
team_{teamId}— для фильтрации по команде -
country_{ISO2}— для фильтрации по стране (UA, KZ, UZ и т.д.) -
tz_GMTp{N}— для фильтрации по часовому поясу
Частые вопросы
Q: Отправил 10 000 пушей, а VIEW только 3 000 — куда делись остальные?
Сумма: SEND + FAIL + SKIP = общее количество обработанных подписчиков.
-
FAIL— устаревшие токены, FCM-ошибки (обычно 10-30% для базы старше месяца) -
SKIP— таргетинг не совпал (пользователь уже задепозил и т.д.) -
Из оставшихся SEND: не все стали VIEW — Do Not Disturb, выключенные устройства, заблокированные уведомления
Q: push_ctr низкий (< 2%) — что делать?
-
A/B тест заголовков — создай два пуша с разным текстом, сравни CTR
-
Проверь время отправки — пуш в 3 часа ночи по часовому поясу пользователя = низкий CTR
-
Персонализируй через макросы —
{offer.value}и{random}повышают релевантность -
Добавь/смени картинку — пуши с изображениями обычно имеют более высокий CTR
-
Проверь сегментацию — пуш «для всех» всегда менее релевантен, чем целевой
Q: Как отследить какой именно пуш привёл к депозиту?
-
Открой Push Аналитику → Post-Click Attribution
-
Выбери метрики:
push_postclick_accepts,push_postclick_redeps -
Group by:
event_push_id(илиevent_push_id_name) -
Увидишь сколько FTD и редепозитов атрибутировано каждому пушу
В основной статистике: добавь метрики push_clicks и group by event_push_id — увидишь сколько кликов получил каждый пуш. Соотношение кликов и конверсий = эффективность.
Q: Можно ли отправлять пуши пользователям, которые установили PWA но не подписались на уведомления?
Нет. Пуши отправляются только подписчикам (FCM-токен в базе). Установка PWA ≠ подписка на пуши:
-
PWA_INSTALL— PWA установлено -
NOTIFICATION_SUBSCRIBE— пользователь согласился на пуши (это отдельное событие) -
NOTIFICATION_DECLINE— пользователь отказался
Обычно 40-70% установивших PWA подписываются на пуши. Для повышения подписок: оптимизируй дизайн запроса, показывай в правильный момент (не сразу при открытии).
Q: Как работает отправка пушей по FCM condition vs по токенам?
Adset.Pro поддерживает два режима:
-
Condition (массовая): FCM condition вида
'team_X' in topics AND 'country_UA' in topics— отправляется одним запросом на все подходящие устройства. Быстро, масштабируемо -
Token (индивидуальная): Отправка на конкретный FCM-токен — используется для событийных пушей (EVENT) где нужна персонализация
