изменения в мобильной атрибуции на платформе iOS 14.5+
Обзор изменения в мобильной атрибуции устройств на платформе iOS 14.5+
Мобильная экосистема постоянно меняется и, в целом, движется в сторону усиления политики конфиденциальности данных. Очередное изменение произошло с релизом iOS 14.5, где применено новое правило приватности Apple: приложения должны запрашивать у пользователей с помощью фреймворка AppTrackingTransparency (ATT) разрешение на обработку и передачу данных с подробным их описанием, и, в частности, разрешение на передачу и использование идентификатора IDFA.
Почему IDFA (Identifier for Advertisers) так важен?
С помощью этого уникального идентификатора MMP(Mobile Measurement Partner), например Appsflyer, может однозначно связать рекламную кампанию и установку приложения. Кроме того, он играет ключевую роль в ретаргетинговых кампаниях, сборе аудиторий, позволяет эффективнее таргетировать рекламу — словом, использовать все привычные инструменты, увеличивающие конверсию.
Рисунок 1. Окно запроса ATT.
Важно отметить, что теперь полноценно использовать IDFA в рекламных кампаниях можно только если пользователь дал, так называемый, «двойной консент» – т.е. дал согласие на использование IDFA (обработку и передачу) в приложении, в котором ему показывается реклама, и в приложении, которое он установил. Таких пользователей называют opt-in. Если пользователь сделал отказ хотя бы в одном случае, отслеживать установку детерминистическим (классическим) методом не представляется возможным, и таких пользователей называют opt-out.
Таким образом, с позиций усиления требований конфиденциальности Apple мы имеем:
- Полную прозрачность обработки и передачи данных для пользователей iOS 14.5+
- Невозможность использования детерменистического (классического) метода атрибуции для opt-out пользователей, а равно использования ряда привычных методов, технологий и инструментов мобильного маркетинга.
- Отсутствие возможности таргетированной рекламы на opt-out пользователей, снижение ценности такой рекламы. Это может стать проблемой для приложений, модель монетизации которых основана на рекламе (если пользователь opt-out, то инсталл считается органическим).
- Невозможность ретаргетинга.
- Opt-in пользователей может быть недостаточно для запуска lookalike кампаний.
Что делать
с opt-out пользователями
Apple грозится удалять из appstore приложения, которые передают идентификаторы, позволяющие однозначно идентифицировать пользователя без их согласия, к таким относится, в частности, fingerprint (цифровой отпечаток устройства, включающий доступные параметры устройства).
Единственный легальный инструмент, который предлагают сами Apple – это SKAdNetwork. Сам фреймворк не является новинкой, он появился еще в 2018 году, однако в силу очевидных причин (зачем пользоваться непонятным и запутанным механизмом, если львиная доля idfa и так передается) не пользовался популярностью. Позже подробнее остановимся на принципе и механизме работы данного фреймворка.
Основные моменты:
- Хотя SKAdNetwork и позволяет однозначно связать рекламную кампанию и установку , получаемый набор данных сильно ограничен (всего один постбек, детализация до уровня рекламных кампаний).
- Механизм работы SKAdNetwork достаточно сложен для понимания.
- Невозможно регулировать атрибуционные окна.
- Данные о конверсиях приходят с задержкой (минимум 24 часа).
- Рекламные объявления в привычном понимании (видео креативы, баннеры и т.д.) поставлены в заведомо невыгодное положение по сравнению со StoreKit-rendered ads и имеют меньший атрибуционный вес.
- Сложно оценивать эффективность кампании, если целью кампании является действие лежащее за пределами первых 24 часов после установки, например, подписка.
- SKAdNetwork работает независимо от того, дал пользователь консент или нет, поэтому данные об установках могут пересекаться для opt-in пользователей.
- Повышенный риск фрода, т.к. за подсчет конверсий отвечает сама рекламная сеть, а не ММР.
В условиях отказа от IDFA большую роль будет играть вероятностная модель атрибуции, когда атрибуция происходит по параметрам клика, не подпадающих под АТТ (ip адрес, useragent и т.д.). Однако, не все MMP (Mobile Measurement Partner) поддерживают такой тип атрибуции.
Кроме того, не стоит сбрасывать со счетов и детерминистическую атрибуцию, т.е. opt-in пользователей. Следует использовать все доступные «законные» механизмы для увеличения процента пользователей давших согласие (консент).
Как увеличить количество opt-in пользователей
Рисунок 2. Текст в рамке можно кастомизировать.
Для того, чтобы увеличить количество opt-in пользователей, есть несколько приемов:
- Можно кастомизировать окно консента, а точнее текст в рамке (рис.2)
- Окно консента можно показать один раз, однако момент его показа можно выбирать самому. Поэтому можно показывать это окно, когда пользователь уже получил какой-то начальный опыт в приложении.
- Использовать предварительный экран, в котором пользователя можно “подогреть”. Здесь можно использовать свой дизайн и подробно описать зачем это нужно. Например, согласие на передачу позволит сохранить приложение бесплатным, данные будут показаны для релевантной рекламы и не будут переданы 3-им лицам, и т.д.
- Использовать комбинации вышеперечисленных методов (рис.3)
Рисунок 3. Комбинация методов – первый опыт в приложении, предварительный экран и запрос консента.
Однако есть ряд ограничений – то, чего делать нельзя. Нельзя предварять появление запроса консента сообщениями, которые могут запутать или ввести пользователя в заблуждение, тем самым повлияв на осознанность принятия консента. Примеры:
Рисунок 4. Запрещенные приемы при запросе консента.
- Нельзя «подкупать» пользователя, используя поощрения за принятия консента. Кроме того, нельзя ограничивать пользователя в функционале приложения (ограничение контента, вывод приложения из строя и т.д.), до тех пор пока он не примет консент и, тем самым, разрешит трекинг (Рис.4а).
- Нельзя выводить предварительный экран, который копирует функционал системного запроса ATT. В частности, нельзя использовать кнопки «Разрешить» или со схожими значениями, т. к. на этом экране пользователь, по сути, не дает согласие(Рис.4б).
- Нельзя выводить в предварительном экране картинку с копией системного запроса АТТ и каким-либо образом модифицировать этот запрос на рисунке(Рис.4в).
- Нельзя каким-либо образом акцентировать внимание пользователя на кнопке «Разрешить» в системном запросе консента (рис.4).
SKAdNetwork схема работы
Общая схема работы SKAdNetwork представлена на рисунке 5. Не вдаваясь в техническую реализацию, принцип работы можно описать так:
Рисунок 5. Схема работы SKAdNetwork.
- Рекламная сеть должна быть зарегистрирована в Apple. Приложение, в котором показывается реклама (App A), должно быть настроено для работы с этой сетью (необходимо «вшить» id этой сети).
- Рекламная сеть подписывает объявление с параметрами криптографической подписью для рекламируемого приложения App B и передает его в приложение App A, где оно показывается пользователю. Начиная с версии SKAdNetwork 2.2, есть два типа объявлений – StoreKit-rendered adиview-through, за это отвечает параметр fidelity-type. Для StoreKit-rendered ad он равен 1, для view-through — 0.
- Пользователь устанавливает и открывает приложение.
- Далее, после отработки таймеров установленным приложением отправляется 1 (в случае SKAdNetwork 3.0 отправляется еще до 5 «проигршных» постбеков, каждый в разную рекламную сеть) постбек, который принимает и обрабатывает рекламная сеть (подробнее об этом далее).
Постбек, получаемый рекламной сетью, включает ID кампании, но не содержит никаких данных, позволяющих идентифицировать пользователя. Постбек может содержать значение конверсии (conversion value). Начиная с версии iOS 14.6+, поддерживается SKAdNetwork версии 3.0, в котором добавлен параметр did-win, принимающий значения 0 или 1. 1 означает «победную атрибуцию», т.е. конверсия принадлежит данной сети и 0, если не принадлежит. Несконвертивших постбеков будет отправляться до 5 штук — каждый в разную рекламную сеть.
В качестве StoreKit-rendered объявления показывается страница приложения из App Store. View-through объявление — это рекламное объявление в произвольном формате, например, видео.
Отдельно отметим вопрос атрибуции. Клик старше независимо от типа объявления. А вот с view атрибуцией установка будет засчитана по тому объявлению, fidelity-type которого больше (т.е. StoreKit-rendered объявлению, у которого fidelity-type=1). Рассмотрим пример: произошел показ объявления с fidelity-type=1, после этого произошел показ объявления с fidelity-type=0, после этого пользователь зашел в стор и установил приложение. Установка будет засчитана объявлению с fidelity-type=1, не смотря на то, что объявление с fidelity-type=0 было показано последним.
Окна атрибуции имеют следующий вид:
Важно отметить, что если пользователь не запустил приложение после установки, то никакого постбека отправлено не будет.
Install postback & Conversion value (значение конверсии)
Пример полного набора параметров, передаваемых в постбеке инсталла, для сети НЕ выигравшей атрибуцию (с версии SKAdNetwork 3.0 и iOS 14.6+):
{
“version”: “3.0”,
“ad-network-id”: “com.example”,
“campaign-id”: 42,
“transaction-id”: “f9ac267a-a889-44ce-b5f7-0166d11461f0”,
“app-id”: 525463029,
“attribution-signature”: “MEUCIQDYfConaAkeeGvAr6WAjBbY7LBX1z6ir/8T4jVYKJaMPQIgHC5jsV0lvlaWgFr7ON0VN4rmTTW9gZUzFoLkEn/g+g8=”,
“redownload”: true,
“fidelity-type”: 1,
“did-win”: false
}
В нем отсутствует conversion-value и source-app-id.
Ниже приведены все возможные параметры постбека, в зависимости от версии SKAdNetwork.
Что такое conversion value?
Это опциональный параметр, который имеет значение 6 бит. 6 бит можно представить в виде 6 пустых окошек, в каждом из которых имеется значение 0 или 1, например:
Каждой такой комбинации можно поставить в соответствие одно единственное число в диапазоне от 0 до 63. В примере выше комбинации соответствует число 23.
В этот параметр можно записывать события, которые происходят в приложении: стоимость покупки (Revenue), пройденный уровень и т.д. Мы помним, что постбек отправляется всего один (для версии SKAdNetwork ниже 3.0). Таким образом, возможно отправить лишь информацию об инсталле и (опционально) одно значение конверсии (точнее – последнее значение конверсии) в одном постбеке.
Структуру conversion value задает сам рекламодатель, исходя из своих KPI. На рисунке 6 приведены примеры использования 6 бит:
Рисунок 6. Примеры использования 6 бит в conversion value
- Базовый подход. Здесь можно записывать одно значение, например Revenue (сумма покупок пользователя до отправки постбека), а можно разделить биты и записывать дополнительную информацию, например доход+уровень в игре, и т.д.
- Продвинутый подход. Здесь предлагается записывать в conversion value прогнозные значения (predictive). Рассмотрим, например, такую метрику как LTV (сколько всего пользователь потратит денег в приложении за всё время или к определенному дню с момента установки). Пользователь устанавливает приложение, совершает в приложении действия, они записываются системой аналитики (продуктовая аналитика из-за отмены idfa не страдает), за время до отправки приложением SKAdNetwork-постбека происходит анализ этих действий на сервере и делается прогноз по LTV, далее, этот прогноз отправляется в приложение и записывается в conversion value, затем conversion value постбеком отправляется в рекламную сеть. Нужно отметить, что этот способ требует определенных математических навыков и грамотно выстроенной структуры событий в приложении.
Покажем на примере, как может работать разделение битов под разные метрики.
Допусти первые 3 бита это – доход, последние 3 бита – последний пройденный уровень в игре.
К примеру, в постбеке пришло converion value = 46, в двоичном представлении это соответствует комбинации 101110. Тогда, согласно таблице, можно сделать вывод, что пользователь прошел 25 уровней и принес 20$ дохода.
Таймеры постбека
Схема работы таймеров схематически изображена на рисунке 8.
Рисунок 8. Схема работы таймеров SKAdNetwork
При первом запуске приложения срабатывает таймер на 24 часа. Если в течении этих 24 часов произошло увеличение значения конверсии (изначально 000000), то таймер запускается заново. Если в течении следующих 24 часов происходит еще одно увеличение значения конверсии, то таймер снова сбрасывается и начинается новый отсчет 24 часов и т.д (сброс таймера может происходить до 63 раз). Если в течении очередных 24 часов увеличение conversion value не произошло, то запускается таймер с произвольным значением от 0 до 24 часов, по истечении которого отправляется постбек с инсталлом и conversion value (если conversion value используется). В версии 3.0+ помимо этого постбека, т.е. победного постбека, будет отправляться до 5 проигрышных, с урезанным набором данных, каждый в разную рекламную сеть, в которых было показано объявление.
Какие шаги нужно предпринять для использования SKAdNetwork
- Интегрировать окно запроса консента ATT для версий iOS 14.5+ (не забыть поставить условие, чтобы не спрашивать разрешение у пользователей на более ранних версиях).
- Максимально кастомизировать окно запроса, для увеличения opt-in пользователей.
- Обновить SDK вашего MMP (Appsflyer, Adjust, Kochava, Branch, Appmetrica), а также, быть готовым к регулярному обновлению этого SDK, т.к. решение довольно свежее. Несомненным плюсом использования SDK MMP является то, что они позволяют настраивать логику conversion value не прибегая к помощи разработчиков, прямо из web-интерфейса, а также занимаются его дешифровкой.
- Настроить подробно и корректно структуру событий в приложении – это позволит эффективнее использовать прогностические методики для оценки рекламных кампаний.
Последняя возможность запустить ретаргетинг на полную мощность
С релизом iOs 14.5 возможность работы с IDFA стремительно исчезает. У вас еще есть время успеть получить профит от базы своих пользователей в 2021 году.
Ретаргетинг – наиболее эффективный способ увеличения выручки вашего мобильного приложения. Узнайте, как вести ретаргетинг в 2021 году и адаптироваться к Cookieless изменениям на рынке. Свяжитесь с нами.