Web-to-App: как не потерять источник между рекламой на сайте и установкой приложения
Сценарий, который ломает атрибуцию у всех, у кого есть и сайт, и приложение. Человек кликает рекламу, попадает на сайт, оттуда его отправляют в стор, он ставит приложение. Вопрос: какая кампания привела установку? Ответ системы по умолчанию: никакая, Organic. Источник умер на переходе в стор.
И вы платите за рекламу, которая «не приносит установок» по отчётам, хотя на самом деле приносит — просто атрибуция рвётся.
Где именно рвётся
Стор — это чёрная дыра для параметров. Вы можете сколько угодно тащить utm по сайту, но в момент, когда человек уходит в App Store или Google Play и потом открывает приложение, эта связь обрывается. Приложение запускается «с нуля» и понятия не имеет, откуда пришёл пользователь.
Deferred deep linking — что это решает
Магия в слове deferred — «отложенный». Обычный deep link ведёт на экран в уже установленном приложении. Deferred переживает установку: пользователь кликнул, поставил приложение, открыл — и параметры кампании плюс нужный экран доезжают до первого запуска.
То есть источник «переживает» поход в стор. Человек кликнул на рекламу карты — поставил приложение — и сразу попал на экран оформления карты, а не на абстрактный онбординг. И вы знаете, какая кампания это сделала.
Настройка через OneLink
OneLink (или аналог у другого MMP) — это один умный линк. Определяет устройство и ведёт на iOS, Android или веб. Тащит utm и кастомные параметры через всю цепочку. Один линк в рекламе вместо зоопарка ссылок под каждую платформу.
Настройка не самая тривиальная — нужно правильно прописать домены, поддомены, ассоциации приложения (это отдельная боль для iOS Universal Links). Но один раз настроил — и вся web-to-app цепочка считается честно.
Smart banners и QR
Точки входа, про которые забывают. Умный баннер на мобильном сайте, QR на десктопе — если они ведут через OneLink, источник сохраняется. Если ведут на голую ссылку в стор — вы опять теряете атрибуцию. Проверьте, через что ведут ваши баннеры.
Проверка
Debug-режим SDK покажет вам, что реально доезжает до первого открытия. Смотрите onConversionDataSuccess — там должны лежать ваши параметры. Если пусто — deferred deep link не работает, и вы атрибутируете вслепую.
Тейк: web-to-app разрыв — это самая недооценённая утечка в проектах с приложением. Люди вылизывают пиксель и CAPI, а половина установок падает в Organic из-за нерабочего deferred deep link. Сначала почините это, потом оптимизируйте остальное.