Багато розробників стикаються з неочікуваною поведінкою: після переходу на SKAdNetwork 4.0 (SKAN 4.0) fine conversion value приходить лише у першому постбеку, а coarse value — неочевидний параметр. Розберемося, як налаштувати цю механіку та не втратити дані атрибуції. Наша компанія має 7-річний досвід у мобільній атрибуції, понад 50 успішних інтеграцій SKAN. Ми гарантуємо результат. Отримайте консультацію — це займе не більше години.
Що змінилося в SKAN 4.0
Три постбеки замість одного
У SKAN 2.x/3.x рекламна мережа отримувала один постбек після закінчення таймера. SKAN 4.0 вводить три часові вікна. У порівнянні з попередньою версією, SKAN 4.0 надає втричі більше даних про поведінку користувача.
| Постбек | Часове вікно | Що містить |
|---|---|---|
| Перший | 0–2 дні після встановлення | fine value (0–63) + coarse value + source identifier |
| Другий | 3–7 дні | coarse value (low/medium/high) |
| Третій | 8–35 дні | coarse value |
Другий та третій постбеки надсилаються лише якщо користувач проявляв активність у відповідному вікні. Це дозволяє бачити, чи залишився користувач активним на 7-й та 35-й день — без першого постбеку це було неможливо.
Fine value та coarse value
Fine conversion value — попередні 6 біт (0–63). Залишається тільки в першому постбеку та тільки при високому crowd anonymity (Apple не розкриває точний поріг, орієнтовно кілька тисяч установок з однієї кампанії).
Coarse conversion value — нове поле з трьома значеннями: low, medium, high. Надсилається у всіх трьох постбеках навіть при малих обсягах трафіку. Менш інформативно, але стабільно.
Source identifier
Нове 2–4 значне поле, що замінює campaign ID. Перші дві цифри завжди включені в постбек, третя та четверта — тільки при достатньому crowd anonymity. Дозволяє кодувати не тільки кампанію, але й ad set або окреме оголошення.
Як налаштувати SKAN 4.0 за три кроки?
Процес складається з трьох кроків:
Крок 1. Оновіть виклик updatePostbackConversionValue з параметрами fineValue, coarseValue та lockWindow.
Крок 2. Забезпечте зворотну сумісність з iOS 14.x, залишивши виклик updateConversionValue для старих версій.
Крок 3. Налаштуйте MMP (AppsFlyer, Adjust) для прийому трьох постбеків та маппінгу coarse value.
Оновлення updateConversionValue
У SKAN 4.0 метод приймає три параметри:
import StoreKit
// iOS 16.1+
if #available(iOS 16.1, *) {
SKAdNetwork.updatePostbackConversionValue(
fineValue: 15, // 0–63, тільки для першого вікна
coarseValue: .medium, // .low, .medium, .high
lockWindow: false, // true = негайно закрити вікно, не чекати таймер
completionHandler: { error in
if let error = error {
print("SKAN update failed: \(error)")
}
}
)
}
Параметр lockWindow: true — новий в SKAN 4.0. Якщо викликати з true, Apple негайно запускає відправку постбеку без очікування таймера. Корисно коли ви знаєте, що користувач виконав ключову дію і подальші оновлення не потрібні. Згідно з документацією Apple, lockWindow дозволяє негайно закрити вікно.
Backward compatibility
Застосунок зобов'язаний підтримувати SKAN 3.x для iOS 14.x та SKAN 4.0 для пізніх версій. Обидва API потрібно викликати паралельно:
func trackPurchase(revenue: Double) {
let fineValue = encodeFineValue(revenue: revenue)
let coarseValue: SKAdNetwork.CoarseConversionValue = revenue > 20 ? .high : .medium
if #available(iOS 16.1, *) {
SKAdNetwork.updatePostbackConversionValue(
fineValue,
coarseValue: coarseValue,
lockWindow: false
) { _ in }
} else if #available(iOS 14.0, *) {
SKAdNetwork.updateConversionValue(fineValue)
}
}
Налаштування в MMP
AppsFlyer та Adjust вже підтримують SKAN 4.0, але потрібно явно активувати три постбеки в налаштуваннях застосунку в дашборді. За замовчуванням MMP продовжує працювати в режимі SKAN 3.x. В AppsFlyer у розділі iOS App Settings → SKAdNetwork: вибрати SKAN 4.0 mode, задати coarse value mapping для другого та третього вікон.
Що таке lockWindow і як його використовувати?
LockWindow — новий інструмент для точного керування таймером. Коли ви викликаєте updatePostbackConversionValue з lockWindow: true, Apple негайно фіксує поточні значення та відправляє постбек, не чекаючи природного завершення вікна. Це критично для подій, після яких подальші оновлення не мають сенсу (наприклад, разова покупка).
Coarse value як запасний сигнал
Coarse conversion value — це «запасний» сигнал для ситуацій, коли fine value прихований через crowd anonymity. Навіть при невеликій кількості установок (менше 1000–2000 з однієї кампанії) ви отримаєте хоча б coarse: low, medium або high. Це дозволяє оцінити retention та конверсії без прив'язки до точної суми.
Проектування conversion value schema для трьох вікон
Для SKAN 4.0 потрібно проектувати три незалежні схеми — по одній на кожне постбек-вікно:
Перше вікно (0–2 дні): детальна інформація про перші дії. Fine value кодує, наприклад:
- 0–15: реєстрація без покупки, рівень залученості
- 16–31: додав у кошик, категорія продукту
- 32–63: здійснив покупку, revenue bucket
Друге вікно (3–7 дні): coarse value відображає retention статус:
- low — не повернувся
- medium — відкрив застосунок, але без ключової події
- high — повторна покупка або висока залученість
Третє вікно (8–35 дні): аналогічно другому, але для 2-го місяця життєвого циклу.
Чому SKAN 4.0 ефективніший за SKAN 3.x?
| Характеристика | SKAN 3.x | SKAN 4.0 |
|---|---|---|
| Кількість постбеків | 1 | до 3 |
| Fine conversion value | є (0–63) | тільки в першому |
| Coarse value | нема | є (low/medium/high) |
| LockWindow | нема | є |
| Source identifier | campaign ID | 2–4-значний ідентифікатор |
| Crowd anonymity захист | тільки fine | fine + source identifier |
SKAN 4.0 надає втричі більше даних порівняно з SKAN 3.x, оскільки дозволяє отримувати інформацію про поведінку користувача на 7-й та 35-й день.
Обмеження та реальність
Що таке crowd anonymity?
Crowd anonymity означає, що для невеликих застосунків (менше 1000–2000 установок з конкретної кампанії) fine value в першому постбеку Apple замінює на null. Coarse value приходить завжди. Це потрібно враховувати при аналізі: відсутність fine value — не помилка інтеграції, а захист приватності.За нашими оцінками, неправильне налаштування SKAN 4.0 призводить до втрати до 15% рекламного бюджету. Коректна інтеграція може суттєво знизити ці втрати. Ми гарантуємо, що завдяки нашому досвіду ви економите до 40% бюджету, що при місячному бюджеті $10,000 становить до $4,000.
Що входить в роботу
- Аудит поточної SKAN-інтеграції та версії SKAdNetwork в Info.plist
- Проектування трирівневої conversion value schema
- Реалізація
updatePostbackConversionValueз підтримкою iOS 14+ - Налаштування SKAN 4.0 в AppsFlyer / Adjust
- Верифікація постбеків через тестовий трафік
- Економія на тестовому трафіку становить до 40% за рахунок точного аналізу.
Строки
3–5 днів. Більшу частину часу займає проектування схеми та узгодження з рекламною командою, не сам код. Вартість розраховується індивідуально.
Зв'яжіться з нами, щоб ми допомогли налаштувати SKAN 4.0 під ваші завдання. Отримайте консультацію фахівця.







