GA4 для мобильного приложения: Firebase, события и DebugView
Практическое руководство по связке GA4 и Firebase, словарю событий, проверке DebugView и выбору важных действий.
В мобильном приложении GA4 обычно получает данные через SDK Google Analytics for Firebase, установленный в приложение. Проект Firebase связывает приложение для iOS или Android со свойством GA4, после чего приложение отправляет события: sign_up, first_value_reached, purchase_complete или booking_complete. В GA4 эти события можно использовать для анализа пути пользователя, воронок, аудиторий и ключевых действий. Надежная настройка начинается с небольшого словаря событий, проверяется в DebugView и Realtime, а перед публикацией сопоставляется с политикой конфиденциальности и данными для магазинов.
Оцените приложение в коротком опросе
НачатьGA4 показывает отчеты, а Firebase подключает приложение
Firebase служит проектом и связующим слоем для приложения. SDK устанавливают в приложение для iOS или Android. Он собирает автоматически записываемые и собственные события, а затем отправляет их в проект Firebase. После связи проекта с Google Analytics эти данные появляются в свойстве GA4.
Google описывает такую связку как способ измерять использование приложения и, если у компании есть сайт, сопоставлять часть пути пользователя между двумя каналами. Но GA4 не решает за команду, что считать активацией, успешной записью или покупкой. Эти определения должны появиться в описании продукта.
Firebase ближе к настройке приложения и работе SDK. GA4 используют для анализа путей, воронок, аудиторий и ключевых действий. В документации Firebase о событиях хорошо объясняется, какие события собираются автоматически, а какие нужно определить самостоятельно.
Как действие превращается в строку отчета
До начала разработки полезно нарисовать весь путь данных. Так становится видно, что приложение подключено не к тому проекту, что выбран неправильный поток или что никто не проверяет параметры.
| Уровень | Что происходит | Что нужно зафиксировать |
|---|---|---|
| Действие в приложении | Пользователь регистрируется, записывается, покупает или заканчивает урок | На какой вопрос бизнеса отвечает это действие? |
| SDK аналитики | Собирает события на iOS или Android | Как называется событие и какие параметры допустимы? |
| Проект Firebase | Объединяет приложение, окружения и мобильные настройки | Что относится к разработке, проверке и продакшену? |
| Свойство GA4 | Показывает события, воронки, аудитории и ключевые действия | Какие результаты считаются успехом? |
| Проверка и выпуск | Подтверждает работу настоящей сборки | Кто смотрит DebugView, Realtime и данные о приватности? |
По возможности разделяйте данные разработки и рабочие данные. Тестовые покупки, смешанные с настоящими, быстро портят отчеты. Как минимум зафиксируйте окружение, версию приложения и список сборок, которым разрешено отправлять рабочие данные.
Составьте словарь событий до написания кода
Словарь событий, это короткая договоренность между продуктом, дизайном, разработкой, тестированием и аналитикой. В нем указаны смысл события, момент отправки, параметры и решение, которое оно помогает принять. Без такого документа одно действие может называться `signup`, `sign_up_complete` или `registration_done` у разных разработчиков.
Начните с вопросов о продукте:
- В какой момент новый пользователь получает первый полезный результат?
- Какой шаг мешает завершить запись, заказ, урок или оплату?
- Для какой ошибки нужна правка продукта, а для какой достаточно ответа поддержки?
- Какое событие подтверждает, что подписка или членство действительно активны?
- По какому действию видно, что пользователь вернулся за нужным ему результатом?
Используйте устойчивые названия, а детали храните в параметрах. `checkout_started` можно сравнивать даже после изменения подписи кнопки. Параметры `plan_type`, `payment_method`, `course_id` или `error_type` добавляют контекст, не создавая десятки похожих событий.
Какие события нужны первой версии
Автоматические события дают хорошую основу, но коммерческому приложению нужны собственные действия. У приложения для курсов, сервиса записи и интернет-магазина разные воронки.
| Вопрос продукта | Пример события | Полезные параметры |
|---|---|---|
| Дошел ли пользователь до первого результата? | `first_value_reached` | `value_type`, `source`, `app_version` |
| Завершена ли регистрация? | `sign_up_complete` | `method`, `role`, `market` |
| Началось ли коммерческое действие? | `checkout_started` или `booking_started` | `item_count`, `service_type`, `payment_method` |
| Завершилось ли действие успешно? | `purchase_complete` или `booking_complete` | `order_id`, `amount`, `currency` |
| Почему путь прервался? | `flow_error` | `flow`, `error_type`, `error_code` |
| Вернулся ли пользователь к полезному действию? | `lesson_completed`, `repeat_order` или `message_sent` | `content_type`, `plan_type`, `source` |
Не передавайте в параметрах имена, телефоны, электронные адреса и свободный медицинский текст. Номер заказа может понадобиться для разрешенной сверки, но он не должен превращаться в скрытый идентификатор человека.
Для MVP небольшой словарь легче проверить, чем список из сотен событий. Ответственный за продукт должен уметь объяснить каждое событие одним предложением и назвать решение, которое оно поддерживает.
DebugView и Realtime решают разные задачи
Первую проверку не стоит начинать с обычного отчета. Данные проходят обработку, а разные разделы могут применять разные фильтры. Во время внедрения используйте устройство разработчика и заранее известный сценарий.
Firebase DebugView показывает с небольшой задержкой события устройства, на котором включен режим отладки. В нем можно открыть событие и проверить параметры. Google отдельно описывает включение отладки на Android через `adb` и на iOS через аргумент запуска Xcode. Режим отладки нужен для проверки внедрения, а не для имитации обычного рабочего трафика.
Раздел Realtime в GA4 помогает убедиться, что свежая активность приходит в нужное свойство и поток данных приложения. Он не заменяет полноценные тесты. Выполните действие, проверьте параметры, повторите сценарий после перезапуска и убедитесь, что два быстрых нажатия не создали две покупки или две записи.
Перед публикацией проведите такую проверку:
- Установите чистую сборку на настоящее устройство.
- Включите режим отладки аналитики.
- Пройдите главный сценарий с тестовой учетной записью.
- Проверьте в DebugView название события и обязательные параметры.
- Повторите путь при плохом интернете, отказе в разрешении и после перезапуска.
- Убедитесь в Realtime, что активность пришла в правильный поток приложения.
- Отключите отладку до передачи сборки обычным тестировщикам или пользователям.
Ключевые действия должны означать успех
GA4 может собрать много событий, но одинаковое внимание им не нужно. Отмечайте как ключевые действия результаты, которые важны бизнесу: подтвержденную запись, оплаченную подписку, завершенный заказ, первый пройденный урок или квалифицированную заявку.
Не делайте ключевыми `screen_view`, `button_tap` и каждое открытие меню. Большое количество активности еще не означает, что продукт движется вперед. Полезная воронка может состоять из `first_open`, `sign_up_complete`, `first_value_reached` или из `product_viewed`, `checkout_started`, `purchase_complete`.
За каждое ключевое действие кто-то должен отвечать. Владелец продукта определяет результат, разработчик обеспечивает надежную отправку, тестировщик проверяет крайние случаи, а аналитик наблюдает за отчетом после запуска. Изменение имени, параметров или момента срабатывания нужно записывать вместе с версией приложения.
Есть идея приложения и нужен трезвый следующий шаг?
Разобрать идею приложенияПараметры, свойства пользователя и версии приложения
Параметры описывают событие. Свойства пользователя помогают сравнивать устойчивые и не чувствительные группы. Платформа, версия и окружение дают технический контекст.
Например, `booking_complete` может содержать `service_type`, `payment_method`, `amount` и `currency`. Свойство `account_role` иногда помогает разделить клиента и исполнителя, если это действительно нужно и допустимо. `app_version`, `platform` и `environment` относятся к техническому контексту.
Заранее определите допустимые значения. Если одна версия отправляет `online_course`, а другая `course_online`, отчет разделит одну категорию на две. Добавьте события в шаблон технического задания мобильного приложения и укажите, кто может менять словарь.
Ошибки, из-за которых данным нельзя доверять
Чаще всего проблема возникает не в GA4, а при передаче работы между участниками:
- приложение использует не тот проект Firebase или рабочий поток данных;
- одно событие добавлено в двух слоях и отправляется дважды;
- iOS, Android и сервер используют разные написания;
- важный параметр пропадает именно в сценарии ошибки;
- команда сразу смотрит обычный отчет после теста и принимает задержку за потерю данных;
- тестовую отладочную активность принимают за рабочий трафик;
- изменение SDK или согласия на обработку данных выпускают без повторной проверки;
- событие покупки отправляется в момент открытия оплаты, а не после подтверждения платежа.
Письменный словарь, список проверки релиза и повторяемые сценарии полезнее еще одного отчета. Если событие отправляется не в тот момент, отчет этого не исправит.
Приватность и данные для магазинов
Аналитика влияет на политику конфиденциальности, запрос согласия и формы магазинов. Apple просит описывать данные, которые собирают приложение и сторонние сервисы. Google Play требует точных сведений в разделе Data safety. Ответ зависит от SDK, типа данных, цели, срока хранения и особенностей продукта.
Не копируйте описание из другого приложения. Свяжите каждый SDK, параметр, атрибут и место назначения с реальным потоком данных. Собирайте только необходимое и привлекайте профильного специалиста, если приложение работает со здоровьем, детьми, финансами, геолокацией или другими чувствительными данными. В руководстве по политике конфиденциальности мобильного приложения разобрана общая согласованность этих материалов.
Как Appfyl закладывает аналитику в проект
Appfyl считает измерение частью объема продукта. На этапе обсуждения мы связываем вопросы бизнеса с основными пользовательскими путями, выбираем события первой версии и откладываем то, что не помогает принять решение. Словарь событий становится общей частью передачи работы между продуктом, мобильной разработкой, сервером и тестированием.
Перед запуском команда проверяет настоящую сборку в DebugView и Realtime, успешные и неуспешные сценарии, а также соответствие политики конфиденциальности установленным SDK. Инструмент может измениться, но ответственность за достоверные данные остается в проекте.
Если вы еще решаете, какая аналитика нужна MVP, добавьте ее в бриф Appfyl для оценки приложения вместе с ролями пользователей, оплатой, админ-панелью и главным сценарием. Одного названия инструмента для оценки недостаточно.
Посмотрите, как Appfyl превращает объем работ в запущенные продукты. Смотреть кейсы Appfyl.
Порядок действий перед выпуском
- Запишите вопросы, на которые должна ответить первая версия.
- Нарисуйте главный путь и выберите события результата.
- Зафиксируйте в спецификации названия, параметры, значения и ответственных.
- Проверьте проект Firebase, идентификаторы приложения и свойство GA4.
- Реализуйте автоматические и собственные события без лишних персональных данных.
- Проверьте успех, ошибку, отсутствие сети, отказ в разрешении и перезапуск в DebugView.
- Убедитесь в Realtime, что активность приходит в правильный поток, и настройте ключевые действия.
- Сопоставьте политику, согласие и формы магазинов с реальной работой SDK.
- Передайте словарь событий и версию вместе с документацией проекта.
- После запуска посмотрите первую воронку и только потом добавляйте новые события.
Превратите исследование в план запуска
Appfyl поможет превратить идею в понятный план приложения, список функций первой версии и план первых работ.
Обсудить план приложенияГлавные выводы
- Мобильная аналитика GA4 обычно работает через SDK Google Analytics for Firebase, а не через веб-тег.
- Начинайте с вопросов продукта и небольшого словаря событий.
- Используйте DebugView для событий и параметров, а Realtime для проверки свежей активности потока.
- Ключевыми делайте результаты бизнеса, а не каждое нажатие.
- Планируйте события, согласие, приватность, формы магазинов и проверки каждой версии вместе.
Полезные ссылки
Частые вопросы
GA4 и Firebase Analytics подходят для многих MVP, которым нужны события, воронки, аудитории и ключевые действия. Крупному продукту могут понадобиться атрибуция, мониторинг сбоев, продуктовая аналитика или хранилище данных. Начинайте с инструментов, которые отвечают на реальные вопросы команды.
Стандартный путь Google использует SDK Google Analytics for Firebase и проект Firebase, связанный с GA4. Другая аналитическая платформа может предложить собственный SDK, но веб-тег сам по себе не является полноценным подключением мобильного приложения.
DebugView нужен для быстрой проверки внедрения. Обычные отчеты могут обрабатываться дольше и применять другие фильтры. Проверьте свойство, поток приложения, точное название события, согласие пользователя и то, не был ли трафик только отладочным.
Универсального числа нет. Начните с регистрации, активации, первого результата, коммерческого успеха, важных ошибок и возвращения. Небольшой надежный словарь лучше сотен нажатий, которые никто не использует.
Да. Названия, параметры, значения, требования к приватности, ключевые действия и проверки влияют на продукт, код, сервер, магазины и будущие отчеты. Если записать их заранее, будет меньше переделок.