Відправляти одне й те саме сповіщення всій базі — це не сегментація, а спам. CTR падає (деякі клієнти втрачали до 70% відкриттів за місяць), відписки ростуть, iOS починає обмежувати доставку через Apple Push Notification throttling для додатків з низьким engagement rate. Ми вирішуємо це завдання технічно, а не маркетингово — проектуємо схему тегів, інтегруємо SDK, налаштовуємо тригери. Гарантуємо зростання open rate на 25% та зниження кількості скарг вдвічі.
Чому сегментація важлива для доставки?
Apple та Google відстежують поведінку користувачів при push-сповіщеннях. Якщо багато відписок або користувачі не відкривають сповіщення — доставка починає затримуватися. Наприклад, для iOS діє rate limiting на рівні APNs. Сегментація — єдиний спосіб зберегти високу доставку. Без неї ви ризикуєте, що 30% сповіщень не дійдуть взагалі.
Як працює сегментація на рівні SDK
Будь-яка платформа розсилок (OneSignal, Firebase, Braze, Airship) будує сегменти на основі двох джерел: атрибути користувача (теги, properties) та поведінкові дані (події, сесії, покупки).
На клієнті завдання одне — коректно передавати дані:
// Android — після кожної значущої дії OneSignal.User.addTag("subscription_tier", "premium") OneSignal.User.addTag("last_active_days", "0") OneSignal.User.addTag("preferred_category", "electronics") // При зміні локації (з дозволу користувача) OneSignal.User.addTag("region", "UA-30") // iOS — те ж саме для тегів та подій OneSignal.User.addTag("onboarding_completed", "true") OneSignal.User.addTag("cart_items_count", "\(cart.items.count)") Теги — рядки. Все порівняння серверне. Важливо: не відправляйте тег при кожному запуску додатку — це зайвий трафік. Відправляйте тільки при зміні значення.
Поведінкові сегменти та тригери
Найчастіший кейс — тригерна відправка по події: користувач покинув кошик, не відкривав додаток 7 днів, пройшов онбординг але не здійснив першу дію.
Для цього потрібна серверна логіка. Мобільний клієнт тільки фіксує events:
// Firebase Analytics — події автоматично доступні в Audience Builder FirebaseAnalytics.getInstance(context).logEvent("checkout_started") { param("cart_value", 1250.0) param("items_count", 3L) } У Firebase Audiences можна побудувати сегмент: «користувачі, які запустили checkout_started але не запустили purchase_complete за останні 24 години» — і відправити їм сповіщення через FCM напряму або через Firebase In-App Messaging.
Геосегментація
Геосегментація в push — не «знаходиться в Києві прямо зараз», а «регіон користувача з профілю» або геозони (geofences).
OneSignal підтримує автоматичне визначення локації при увімкненому setLocationShared(true). Але Apple і Google все жорсткіше ставляться до фонової геолокації. Надійніше — передавати регіон з профілю користувача як тег.
Для реальних геозон (сповіщення при вході в зону) — CoreLocation на iOS з CLLocationManager.startMonitoring(for:) або Geofencing API на Android через GeofencingClient. Це працює через local notifications або silent push для оновлення даних.
Сегменти по пристроях та платформах
{ "filters": [ { "field": "device_type", "relation": "=", "value": "iOS" }, { "operator": "AND" }, { "field": "app_version", "relation": ">=", "value": "3.0" } ] } Це корисно при релізі feature, доступної тільки в новій версії — не відправляти deep link на екран, якого немає в старому додатку.
Типові помилки при налаштуванні сегментації
Теги пишуться непослідовно: одні розробники пишуть "true"/"false", інші "1"/"0", треті просто додають або видаляють тег. В результаті сегмент «користувачі з тегом notifications_enabled = true» не захоплює тих, у кого просто є цей тег без значення.
Краще зафіксувати схему тегів в окремому enum:
object UserTags { const val SUBSCRIPTION = "subscription_tier" const val REGION = "region_iso" const val LAST_ORDER_DAYS = "last_order_days_ago" fun updateLastOrderDays(daysSince: Int) { OneSignal.User.addTag(LAST_ORDER_DAYS, daysSince.toString()) } } Порівняння платформ для сегментації
| Платформа | Тип сегментів | Складність інтеграції | Ліміти (безкоштовний тариф) |
|---|---|---|---|
| OneSignal | Атрибути + події + гео | Мала | 10 000 підписників |
| Firebase | Атрибути + події (Audiences) | Середня | Немає ліміту по підписниках |
| Braze | Атрибути + події + Canvas | Висока | Пробний період |
Наш досвід та терміни
Ми працюємо з мобільними проектами з 2016 року. Реалізували сегментацію для 20+ додатків з аудиторією від 10 000 до 500 000 користувачів. Використовуємо сертифіковані підходи до роботи з Apple та Google API.
Проектування схеми тегів та поведінкових подій, реалізація SDK-інтеграції на iOS + Android (або Flutter), налаштування автоматичних сегментів на стороні платформи — 5–8 робочих днів. Складні тригерні ланцюжки з серверною логікою (наприклад, Braze Canvas або власний cron-воркер) — від 2 тижнів.
Як отримати консультацію з налаштування сегментації?
Якщо у вас є проект з push-сповіщеннями — зв'яжіться з нами. Оцінимо поточну архітектуру, запропонуємо оптимальну схему сегментації та назвемо точну вартість. Досвід та гарантії якості включені. Замовте консультацію, щоб дізнатися, як підвищити open rate та знизити навантаження на інфраструктуру.
Чек-лист типових помилок
- Непослідовне іменування тегів (true/false або 1/0).
- Відправка тегів при кожному запуску замість зміни.
- Ігнорування геозон через складність реалізації.
- Використання однакового повідомлення для всіх сегментів.
- Відсутність тестування на пристроях з різними версіями ОС.







