Налаштування воронок (Funnels) аналітики мобільного додатка
Воронка — послідовність подій, яку користувач повинен пройти для досягнення мети. Звучить просто. На практиці половина воронок у Firebase налаштована неправильно: не та часова window, события з несумісними параметрами, або воронка побудована у інтерфейсі, але дані в неї не попадають через помилку в реалізації подій.
Де будувати воронки
Три основних інструменти залежно від стеку аналітики:
Firebase / Google Analytics 4 — розділ Explore → Funnel Exploration. Воронки будуються на основі подій з потоку.
Amplitude — Funnel Analysis у розділі Analytics. Більш гнучкі налаштування: можна задати конверсійну window по-різному для кожного кроку, групувати за властивостями.
Mixpanel — Funnels у розділі Reports. Відрізняється тим, що дозволяє дивитися воронку по унікальних користувачах, сесіях або подіях — різні метрики дають різні числа.
Правильна структура подій для воронки
Воронка реєстрації виглядає так:
app_open → sign_up_start → sign_up_email_entered → sign_up_password_entered → sign_up_success
Кожна подія — окремий крок. Часта помилка: розробники логують тільки початок та кінець воронки. Тоді незрозуміло, де саме користувачі йдуть — після введення email або після введення пароля.
// Правильно — кожен крок окремо
Analytics.logEvent("sign_up_start", parameters: ["method": "email"])
// Після введення email
Analytics.logEvent("sign_up_email_entered", parameters: [:])
// Після введення пароля
Analytics.logEvent("sign_up_password_entered", parameters: [:])
// Після успішної реєстрації
Analytics.logEvent(AnalyticsEventSignUp, parameters: ["method": "email"])
Налаштування воронки у Firebase Explore
- Explore → + New Exploration → Funnel Exploration
- Додаємо кроки в порядку послідовності
- Встановлюємо Conversion Window — типові значення: 1 день для реєстрації, 7 днів для онбордингу, 30 днів для першої покупки
- Включаємо Open funnel якщо порядок кроків необов'язковий, Closed — якщо строго послідовний
Conversion Window — найвпливовіший параметр. Та ж воронка з вікном 1 день та 7 днів може показати конверсію 15% та 40% відповідно. Вибір залежить від того, як швидко користувачі реально приймають рішення.
Воронки з параметрами сегментації
Один з потужних прийомів — порівняння воронки за сегментами. В Amplitude це робиться через breakdown:
// Кроки воронки залишаються тими ж, але розбиваємо за:
// - джерелом установки (utm_source)
// - типом пристрою (iOS vs Android)
// - версією додатка
Приклад: конверсія з реєстрації на першу покупку у користувачів з платного трафіку — 8%, у органічних — 22%. Сигнал, що якість UA-аудиторії потребує перегляду.
Помилки, які ломають воронку
Різні user_id на різних кроках. Якщо користувач починає воронку як анонімний (device_id), а після реєстрації стає авторизованим (user_id), і аналітика не робить identity merge — воронка рвється на кроці реєстрації. У Firebase це Analytics.setUserId() після успішної авторизації. В Amplitude — identify.setUserId() + identify.alias().
События логуються на сервері та на клієнті одночасно. purchase з одним transaction_id летить і з iOS SDK, і з бекенда. У воронці користувач проходить крок двічі — конверсія спотворюється.
Неправильна часова мітка. Якщо на Android события відправляються з затримкою (офлайн-черга) з серверним timestamp, а не клієнтським — порядок подій у воронці може порушитися.
Що входить до роботи
- Аудит поточних подій на відповідність кроків воронок
- Додавання проміжних подій там, де їх не вистачає
- Налаштування воронок у Firebase Explore / Amplitude / Mixpanel
- Налаштування conversion window під реальну поведінку користувачів
- Налаштування сегментації за джерелом, платформою, версією
- Документація схеми воронок для команди
Сроки
Одна воронка з аудитом подій: 1 день. Повний набір воронок (реєстрація, онбординг, монетизація): 3–4 дні. Вартість розраховується індивідуально.







