К содержимому
PWA·гид
  1. Главная
  2. Вопросы и ответы
  3. Трекер и PWA

Трекер и PWA: как считать установки и события

Проверено: 21.10.2026

Коротко

Трекер и PWA на практике: что считать установкой, как передать клик-id, настроить постбек, учесть пуши и сверить цифры с конструктором.

Установкой PWA считаем событие appinstalled, а не клик по кнопке «Установить». Клик-id хранится на стороне PWA и уходит в постбек с каждым событием, иначе в трекере не к чему привязать установку. Конкретных цифр здесь нет: они зависят от вашей связки, конструктора и трекера.

Что считать установкой PWA?

Установкой считаем событие appinstalled, а первый запуск из иконки в режиме standalone служит подтверждением. Показ промпта и событие beforeinstallprompt говорят только о намерении: человек мог закрыть окно или передумать. Если записать в «установки» все показы баннера, цифра завысится, а CR на следующих шагах будет выглядеть хуже, чем есть на деле.

Чем установка отличается от первого открытия и от регистрации?

Это три разных уровня, и у каждого должен быть свой статус в трекере: показ промпта, установка и первый запуск из иконки. Регистрация или депозит в самом продукте идут отдельными событиями выше по воронке. Если смешать уровни, непонятно, где теряется трафик. Подробнее о приложениях на странице про PWA, а термины собраны в словаре.

Как передать клик-id в PWA?

Заберите клик-id из GET-параметра на лендинге, сразу сохраните в localStorage или cookie и допишите в start_url манифеста. Тогда id переживёт установку: установленное приложение открывается по start_url, а не по исходной ссылке с метками. Без этого связка чаще всего теряется на переходе «браузер → иконка». Хранилище браузера и установленного приложения может не совпадать, поэтому дублировать id в start_url надёжнее, чем полагаться только на cookie.

Как настроить постбек из PWA?

Лучше слать постбек с сервера: PWA отправляет событие на ваш бэкенд, а тот вызывает трекер с клик-id и типом события. Клиентский запрос проще, но его режут блокировщики, а при плохой сети он теряется. Добавьте защиту от дублей: уникальный ключ события (клик-id плюс тип события) и проверку на повтор перед отправкой. Если приложение собрано в конструкторе, сначала проверьте, какие макросы и события он поддерживает «из коробки».

Какие события пушей писать в трекер?

Пишите четыре отдельных события: подписка на пуш, получение, открытие по пушу и отписка. Не смешивайте их с установкой: подписка возможна без установки, а открытие по пушу означает возврат уже существующего пользователя. Для открытия добавляйте метку источника, например id рассылки, чтобы отличать повторный трафик от нового. Про механику рассылок читайте в разделе Pushi.

Почему цифры трекера и конструктора не совпадают?

Расхождение почти всегда нормально, и обычно причина в разных определениях. Конструктор может считать установкой показ промпта или первый визит, а трекер только appinstalled. Добавляются потеря клик-id при установке, блокировка запросов, разные часовые пояса и окна атрибуции, дубли постбеков. Сверяйте оба источника по одному окну дат и одному определению события, а общие принципы смотрите в методике.

Как быстро проверить, что связка работает?

Сделайте тестовый клик с уникальной меткой и пройдите весь путь сами: лендинг, установка, первый запуск, подписка на пуш. Затем сверьте по логу постбеков, что каждое событие пришло один раз и с тем же клик-id. Отдельно проверьте start_url в манифесте и убедитесь, что при открытии из иконки id не теряется.

Сводная таблица событий

СобытиеКак фиксируемЧто уходит в трекерТипичная ошибка
Показ промптаbeforeinstallpromptСтатус «намерение»Считают за установку
УстановкаappinstalledКлик-id + «install»Нет клик-id после установки
Первый запускStandalone-режимКлик-id + «first_open»Дубли при каждом запуске
Подписка на пушРазрешение на уведомленияКлик-id + «push_sub»Путают с установкой
Открытие по пушуМетка в ссылке пушаКлик-id + id рассылкиНе отделяют от нового трафика
Целевое действиеСерверное событиеКлик-id + тип действияПостбек уходит дважды

Вопрос–ответ

Нужен ли серверный постбек?

Да, он надёжнее клиентского. Сервер не зависит от блокировщиков и позволяет проверять дубли до отправки.

Где хранить клик-id?

В localStorage или cookie и дополнительно в start_url манифеста. Так он сохранится после установки.

Как отличить открытие по пушу от обычного запуска?

По метке в ссылке уведомления. Без метки оба сценария сольются в один поток.

Другие разборы смотрите в разделе Вопросы и ответы.

Проверено: 21.10.2026. Правила сторов и возможности платформ описаны на дату проверки; точные формулировки смотрите в официальной справке Apple, Google и MDN. Нашли неточность — напишите на redakciya@pwa-arbitrazh.com.

В этом разделе Вопросы и ответы

  • Нужен ли стор для PWA

    Нужен ли стор для PWA и можно ли без Google Play и App Store: отвечаем на 7 вопросов о TWA, iOS, потерях и…

  • Чем PWA отличается от сайта

    Чем PWA отличается от обычного сайта: установка, работа без сети, пуши, адресная строка, индексация и влияние…