Ошибки строки согласия, которые незаметно убивают ваш рекламный доход

Незаметная утечка дохода

Когда ваш eCPM каждый месяц снижается на несколько процентов, причина редко кроется в инвентаре или минимальных ценах. Чаще это сломанная TC string — сигнал IAB Transparency & Consent Framework (TCF), который сопровождает каждый рекламный запрос. Некорректная или отсутствующая строка не выдаёт громкой ошибки. Вместо этого рекламный сервер незаметно откатывается к неперсонализированной рекламе, партнёры по спросу отпадают, и доход вытекает без единого оповещения. Для издателей приложений и игр, монетизирующихся в ЕЭЗ и Великобритании, это самая упускаемая из виду причина потери дохода.

Что на самом деле несёт TC string

TC string — это закодированный в base64 блок, создаваемый вашей платформой управления согласием (CMP). Он кодирует выбор пользователя: согласованные цели, разрешённых поставщиков, ваш CMP ID, версию политики и временную метку. Покупатели декодируют его за миллисекунды, чтобы решить, могут ли они участвовать в торгах с персонализированным таргетингом. Два сигнала важны не меньше:

Если что-либо из этого неверно, спрос испаряется — даже когда пользователь фактически дал согласие.

Пять ошибок, которые незаметно стоят вам денег

1. Отсутствующая или просроченная строка. Если CMP никогда не записывает строку или кешированное согласие устаревает за пределы окна повторного запроса, запросы уходят без сигнала. Покупатели трактуют "нет строки" как "нет согласия" и участвуют в торгах только с контекстным спросом с низким eCPM или пропускают аукцион.

2. Неверный CMP ID. У каждой сертифицированной CMP есть зарегистрированный ID, встроенный в строку. Если записан нераспознанный ID, Google и поставщики IAB отклоняют его — распространено после миграции, когда старый SDK всё ещё подключён.

3. Поставщик не объявлен. У партнёра по спросу может быть полное согласие, но если его vendor ID отсутствует в списке разрешённых поставщиков, он не может участвовать в персонализированных торгах. Издатели часто забывают обновить список после добавления партнёра.

4. Некорректный gdprApplies. Передача строки "1" вместо целого числа или оставление значения undefined для пользователя, явно находящегося в ЕЭЗ, сбивает покупателей с толку. Неверный gdprApplies=0 также может подвергнуть вас риску несоответствия требованиям, при этом выглядя нормально.

5. Сигналы Consent Mode не срабатывают. Строка TCF может быть идеальной, в то время как Consent Mode остаётся в состоянии отказа по умолчанию — например, когда SDK загружает рекламу до разрешения согласия. Тогда Google показывает неперсонализированную рекламу независимо от TC string.

Пошаговый процесс отладки

Двигайтесь от устройства наружу к рекламному серверу и воспроизводите в чистом состоянии — очистите данные приложения или используйте свежий профиль браузера, чтобы устаревшее согласие не ввело вас в заблуждение.

Устранение первопричины

Залатать один плохой запрос легко; предотвратить следующий — вот настоящая работа. Заставьте рекламу ждать согласия перед инициализацией, держите список поставщиков синхронизированным с вашим стеком спроса и отслеживайте соотношение персонализированных и неперсонализированных показов — сдвиг там является вашим самым ранним предупреждением.

Вот где сертифицированная Google CMP оправдывает себя. FlexyConsent выдаёт действительные строки IAB TCF 2.3 с правильным CMP ID и объявлениями поставщиков, запускает сигналы Consent Mode v2, чтобы ad_user_data и ad_personalization отслеживали выбор пользователя, и предоставляет аналитику уровня согласия по вебу, Android и iOS — так что сломанная строка проявляется на дашборде, а не в вашей выплате.

Ключевые выводы

← Блог Читать все →