Налаштування атрибуції встановлень (Install Attribution) мобільного застосунку

TRUETECH займається розробкою, підтримкою та обслуговуванням мобільних додатків iOS, Android, PWA. Маємо великий досвід та експертизу для публікації мобільних додатків до популярних маркетів Google Play, App Store, Amazon, AppGallery та інші.

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Налаштування атрибуції встановлень (Install Attribution) мобільного застосунку
Середній
~3-5 днів
Часті запитання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    495

Настройка атрибуції встановлень мобільного додатку

Рекламний бюджет розподілений по п'яти каналам: Google UAC, Meta Ads, TikTok, Telegram, ASA. Додаток встановлюють, користувачі купують — але маркетинг не знає, який канал приніс платежеспроможних користувачів, а який тягне гроші впустую. Без коректно налаштованої атрибуції встановлень це стандартна ситуація.

Як працює атрибуція: MMP в середині ланцюга

Mobile Measurement Partner (MMP) — це незалежна третя сторона між рекламними мережами й вашим додатком. Принцип: коли користувач кліне на рекламу, MMP фіксує клік з параметрами кампанії. При встановленні додатку запускається SDK — MMP сопоставляє пристрій з раніше зафіксованим кліком й повертає атрибуцію джерелу.

Ключові гравці: AppsFlyer, Adjust, Branch, Kochava. Для українського ринку AppsFlyer та Adjust — найбільш поширені.

Механіка матчингу після iOS 14.5 розділилася:

  • Deterministic (точна): через SKAdNetwork-постбеки — коли користувач дав дозвіл на ATT
  • Probabilistic (вірогідна): за fingerprint (IP + User-Agent + час клику) — без дозволу ATT, з обмеженою точністю

На Android ситуація простіша: Google Play Referrer API дає точний атрибуційний токен без дозволів користувача.

Інтеграція AppsFlyer на практиці

iOS (Swift)

// AppDelegate.swift
import AppsFlyerLib

func application(_ application: UIApplication,
                 didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    AppsFlyerLib.shared().appsFlyerDevKey = "YOUR_DEV_KEY"
    AppsFlyerLib.shared().appleAppID = "123456789"
    AppsFlyerLib.shared().delegate = self

    // Включити debug тільки в dev-збірці
    AppsFlyerLib.shared().isDebug = false

    // Запускати start() після ATT-запиту, не раніше
    return true
}

// У SceneDelegate або після відповіді ATT:
func applicationDidBecomeActive(_ application: UIApplication) {
    AppsFlyerLib.shared().start()
}

Критичний момент: start() не можна викликати до того, як користувач відповів на ATT-запит. Якщо викликати раніше — SDK відправить подію без флага consent, і Apple може заблокувати постбек. Правильна послідовність: показати ATT → дочекатися відповіді → викликати start().

Android (Kotlin)

// У Application.onCreate()
AppsFlyerLib.getInstance().init("YOUR_DEV_KEY", object : AppsFlyerConversionListener {
    override fun onConversionDataSuccess(data: Map<String, Any>) {
        val campaign = data["campaign"] as? String
        val mediaSource = data["media_source"] as? String
        // media_source = "googleadwords_int" для Google UAC
        Log.d("AF", "Attributed to: $mediaSource / $campaign")
    }
    override fun onConversionDataFail(error: String) {}
    override fun onAppOpenAttribution(data: Map<String, Any>) {}
    override fun onAttributionFailure(error: String) {}
}, this)

AppsFlyerLib.getInstance().start(this)

На Android важливо додати Google Play Referrer API як залежність — без нього атрибуція через Google UAC буде probabilistic:

// build.gradle
implementation("com.android.installreferrer:installreferrer:2.2")

Deeplink-атрибуція: де найчастіше ломається

OneLink / Universal Links / App Links дозволяють атрибутувати не тільки встановлення, але й конкретний deeplink. Користувач кліне по посиланню в Telegram, встановлює додаток — й потрапляє прямо на потрібний екран з коректною атрибуцією.

Типова помилка: Universal Links перестають працювати після оновлення додатку, якщо не оновили apple-app-site-association файл на сервері або змінили Bundle ID без регенерації associated domains. У цьому випадку iOS fallback на HTTP-редирект, атрибуція теряється.

Ще одна проблема — відсутність onAppOpenAttribution обробника при сценарії «додаток вже встановлений». onConversionDataSuccess срабатує тільки при першій встановці. Повторні deep link переходи вимагають окремого обробника.

Постбеки і верифікація

Після настройки MMP необхідно налаштувати постбеки в рекламні мережі — інакше Google UAC та Meta не отримують сигнал про конверсію й не можуть оптимізувати кампанії під цільову дію (in-app event замість просто встановлення).

Перевірка коректності атрибуції:

  1. Використовуємо тестовий пристрій, додаємо IDFA/GAID в MMP dashboard як тестовий пристрій
  2. Кліємо по тестовій посиланню кампанії
  3. Встановлюємо додаток
  4. Дивимось в MMP dashboard: атрибуція повинна з'явитися за 1–2 хвилини

Що входить у роботу

  • Вибір MMP під бюджет і рекламні канали
  • Інтеграція SDK на iOS та Android (або Flutter)
  • Настройка ATT-flow для iOS
  • Конфігурація постбеків в Google, Meta, TikTok
  • Настройка OneLink / Branch Links для deeplink-атрибуції
  • Тестування через тестові пристрої й верифікація постбеків

Терміни

Базова інтеграція одного MMP на обидві платформи: 3–5 днів. З настройкою deeplink та всіх рекламних постбеків — до 7 днів. Вартість розраховується індивідуально.