Real Time Config — Header Bidding для AMP. Настройка, примеры, кейсы.

> Real Time Config

Постоянно работая с несколькими рекламными связками в Header Bidding, привыкаешь к этому многообразию. И без разницы, как настроен рекламный стек — на Google Ad Manager (Prebid.js) или Yandex Adfox — везде условия похожие. Но когда рекламный инвентарь ограничен, нужно искать другие способы увеличение дохода и деманда.

Недавно, у меня возникла ситуация — клиентский сайт, AMP трафик — нужно увеличить доход. На страницах стоят тэги РСЯ+Google через Динамическую монетизацию, несколько блоков InPage-видео и стандартный sticky-баннер. Одним из желаний было увеличить деманд, без увеличения количества рекламного инвентаря.

Начав копать в сторону AMP Header Bidding — я понял, что вариант с Prebid.js не подойдёт, так как требуется Prebid Server, да и не все вендоры его поддерживают. Я нашёл довольно интересную альтернативу Header Bidding от команды AMP — Real Time Config.

Что такое Real Time Config

Real Time Config (RTC) — технология, основанная на методе Fast Fetch, который позволяет не только быстрее загружать и показывать рекламные объявления на AMP страницах, но и делать это для разных монетизаторов.

Полистав заграничный интернет, нашёл статью, где рассказывается о 6-кратном увеличение дохода, после внедрения RTC.

6-кратное увеличение дохода с RTC на AMP страницах

Отличные результаты, правда? Вот и меня они очень удивили, поэтому я начал сильнее погружаться в тему.

Актуальный список монетизаторов, которые поддерживают Real Time Config:

  • APS (Amazon Publishing Service)
  • Automatad
  • Criteo
  • FLUX
  • IndexExchange
  • Lotame
  • Media.net
  • PubMatic OpenWrap
  • Rubicon
  • Salesforce
  • Yieldbot
  • Kargo
  • Xandr (бывший Appnexus)
  • Yieldlab

Из этого списка, мне знакомо 7-8 названий и только с одними Criteo я работаю. Решив не останавливаться на полпути, начал изучать интеграцию.

Настройка Real Time Config в Google Ad Manager

Гугловская инструкция по настройке RTC, не более чем стена текста на Гитхабе.

Благо, у Criteo тоже есть инструкция по настройке RTС — она более подробная и с картинками, хотя бы.

Так как не все умеют в английский язык, а я уже хоть что-то сделал, решил набросать простую инструкцию, для тех авантюристов, кто тоже хочет попробовать. Пример настройки выполнен для монетизатора Criteo, для других вендоров запрашивайте у них инструкции.

Инструкцию спрячу под спойлер, так как она довольно объёмная. Для тех, кому нужны примеры и кейсы — листайте дальше! 

Инструкция по Real Time Config

 

Создание key-values

создание значений key values для RTC

Создайте значение Key-values
Назовите его crt_amp_rtc_pb
Задайте key values по кнопке «New value»

Значения Key values для кампании RTC

По этим значениям будет ходить Ad Manager, в случае, если Google не выкупил рекламу. 

Обязательно! Указывайте значения в десятичном формате “1.00, 2.00 … 100.00” иначе таргетинг не будет работать.

Создание Order и Line Items

Переходим во вкладку Delivery — Orders и создаём новую Рекламную кампанию
Задайте название кампании и имя рекламодателя (в моём случае Criteo).

Создание рекламной кампании в Google Ad Manager под RTC

Далее, создаём Line Item
Выбираем тип рекламы Display

Выбор типа кампании


В настройках Line Item выбираем следующие настройки:
Name — cdb_1.00
Line item type — Price priority (12)
Expected creatives — размеры креатива, которые считаете нужными, я выберу 300×250 и 336×280

Создание line item для кампании RTC

Настройки Delivery settings:
Start time — Immediately
End time — Unlimited
Limit — None
Rate — 1.00 $, 1 рубль, 1 евро, всё зависит от валюты вашего аккаунта GAM. Я делаю всё на рублёвом аккаунте (не забываем про десятичный формат)

Создание line item для кампании RTC

Display Creatives — One or More
Rotate Creatives — Optimized

Создание line item для кампании RTC


Inventory — Нужно добавить Ad Unit, который будет использоваться, в моём случае это Ad-ops.ru, в нём лежат все блоки сайта
Custom targeting — таргетирование на key-values, которое создавали в начале — ставим значение для нашего набора — 1.00

Таргетирование line item для кампании RTC

Создание креативов

Сохраняем Line Item и переходим во вкладку Creatives
В настройках мы указали 2 набора креативов, нужно создать креатив под каждый размер — 300×250 и 336×280
Нажимаем Add Creative — New Creative — 300×250
Тип креатива — Third party
Название — CDB_OnPage_Creative1
Code type — Standart

Креативы для кампании RTC

В поле ввода вставляем код креатива. Это код креатив Criteo:

<script type="text/javascript">
    function decodeTargeting(val) {
        return decodeURIComponent(Array.isArray(val) ? val.join('') : val);
    }

    function write(html) {
        document.open();
        document.write(html);
        document.close();
    }

    function resizeIframe(width, height) {
        const iframeWidth = window.innerWidth;
        const iframeHeight = window.innerHeight;

        function resize(status) {
            let newWidth = width - iframeWidth;
            let newHeight = height - iframeHeight;
            window.$sf.ext.expand({
                r: newWidth,
                b: newHeight,
                push: true
            });
        }

        if (iframeWidth !== width || iframeHeight !== height) {
            window.$sf.ext.register(width, height, resize);
            // we need to resize the DFP container as well
            window.parent.postMessage({
                sentinel: 'amp',
                type: 'embed-size',
                width: width,
                height: height
            }, '*');
        }
    }

    var targeting = %%PATTERN:TARGETINGMAP%% ;
    if (targeting && "crt_amp_rtc_format" in targeting) {
        var sizeArr = decodeTargeting(targeting["crt_amp_rtc_format"]).split('x').map(Number);
         resizeIframe(sizeArr[0],sizeArr[1]);
    }
    if (targeting && "crt_creative" in targeting) {
        var creative = decodeTargeting(targeting["crt_creative"]);
        write(creative);
    } else if (targeting && "crt_display_url" in targeting) {
        var url = decodeTargeting(targeting["crt_display_url"]);
        write("<scr" + "ipt type='text/javascript' src='" + url + "'></scr" + "ipt>");
    }
</script>

Сохраняем настройки. Ставим галочку напротив Override settings и добавляем оставшиеся размеры креатива в настройки.

Настройки креатива для кампании RTC

В результате мы имеет один набор настроек с CPM в 1 рубль (доллар, евро) и набором креативов для работы. Следующая цель — размножить эти настройки до нужной вам частоты.

Дублирование Line Items

Необходимое количество Line Items нужно выбрать самостоятельно. Надо знать, что чем больше line items, тем с большей точностью Google будет отдавать рекламу сторонним системам.

Например, набор line items с шагом в 2 рубля (1-200 рублей) принесут больше денег, чем набор с шагом в 5 рублей (допустим тоже 1-200 рублей). Поэтому кампании типа Pricing Rules (например, кампания под Prebid) разбивают на максимальное количество порогов.

Вот пример, одной из моих кампаний на 147 line item’ов- вы можете делать по другому:

  • 1-50, шаг 1 рубль;
  • 50-100, шаг 2 рубля;
  • 100-200, шаг 5 рублей;
  • 200-1000, шаг 25 рублей;
  • 1000-2000, шаг 50 рублей;

Итак, мы определились с количеством наборов – осталось их скопировать. Выберите line item и нажмите Copy to

Копирование line items в Google Ad Manager

Выберите вариант Copy with creatives и Same order, чтобы копировать наборы в эту РК. Максимально число копий, которое можно сделать за один раз – 60.

Копирование line items в Google Ad Manager

Обычно на копирование требуется время – 1-2 минуты. Поэтому не стоит спешить делать новые копии, иначе могут быть проблемы со скопированными наборами.

После того, как все наборы скопированы – нужно их отредактировать. Благо, каждый line item можно редактировать, не заходя в него. Нужно поменять название, CPM и таргетирование key-values.

Редактирование line items в Google Ad Manager

В конце, не забудьте запустить кампанию, чтобы она была в статусе «Ready».

Сборка кода и интеграция

Пройдите в AdUnit, который выбрали для RTC и откройте вкладку Tags. Выберите тип тэга AMP Tag.

Создание тэга AMP для RTC

Определитесь с настройками тэга на втором этапе. Обычно его можно пропустить и сразу перейти к коду.

Создание тэга AMP для RTC

Получаем примерно такой код:

<amp-ad width=336 height=280
    type="doubleclick"
    data-slot="/21916281163/ad-ops.ru"
    data-multi-size="300x250">
</amp-ad>

Чтобы добавить RTC, нужно в код вызова добавить следующие параметр, где:

  • vendors — указываются рекламные вендоры с ID рекламного блока (для Criteo этот параметр ZONE_ID);
  • timeoutMillis — таймаут запроса к вендорам;

rtc-config='{
        "vendors": {
             "criteo": {"ZONE_ID": 1234567}
         },
        "timeoutMillis": 1000}'>

Итоговый код, который нужно будет разместить на AMP страницах:

<amp-ad width=336 height=280
    type="doubleclick"
    data-slot="/21916281163/ad-ops.ru"
    data-multi-size="300x250"
    rtc-config="{
        "vendors": {
             "criteo": {"ZONE_ID": 1234567}
         },
        "timeoutMillis": 1000}">
</amp-ad>

Где применяется RTC. Примеры интеграции

Рунет

ixbt.com

Пример RTC тэга на примере ixbt.com

Трафик — 22,4 млн. в месяц по SimilarWeb. Используются тэги Criteo и APS (Amazon Publisher Services).

По сравнению с «голым» AdExchange — Criteo с RTC дал +30% дохода. APS — около +5 (и с выводом сложности).

Михаил Панюшкин, техдир iXBT.com

NTV.ru

Пример RTC тэга на примере ntv.ru

Трафик — 18 млн. в месяц по SimilarWeb. Используется Criteo.

Cosmo.ru

Пример RTC тэга на примере cosmo.ru

Трафик — 15,9 млн. в месяц по SimilarWeb. Используется Criteo.

По моим наблюдениям, крупные площадки с AMP трафиком, монетизируют эти страницы двумя способами – «голый» РСЯ или «голый» Adx/Adsense. Редко Adfox с Динамической монетизацией.
Real Time Config используют единицы, в основном дополнительным вендором к Adx/Adsense идёт Criteo.

Зарубежные издания

Metro.co.uk

Пример RTC тэга на примере metro.co.uk

Трафик — 32,7 млн. в месяц по SimilarWeb. Используются Criteo и Appnexus через prebid.js.

Reuters.com

Пример RTC тэга на примере reuters.com

Трафик — 64,8 млн. в месяц по SimilarWeb. Используется Medianet.

NYtimes

Пример RTC тэга на примере nytimes

Трафик — 378,9 млн. в месяц по SimilarWeb. Используются Medianet и APS.

Ситуация с зарубежным трафиком отличается от Ру или СНГ трафика. Разнообразия технологий и вендоров значительно больше, рекламный стек отличается от сайта к сайту.

Кейсы использования связки Adx+RTC на AMP страницах

Вернёмся к началу статьи и клиентскому сайту с Динамической монетизацией. Заменив коды на Adx+RTC я начал собирать статистику. В итоге, тест раскатал еще на двух сайтах — на одном тоже была Динамическая монетизация, на другом стояли тэги Adx. 

Эффективность монетизации высчитываю по показателю ARPPV (Average Revenue Per Page View) – так как считаю его наиболее удобным. Можно еще ARPU использовать, но это дело вкуса. 

Сайт №1

Переход с Динамической монетизации Adfox на тэги Adx+RTC.
Результаты — +48,04% ARPPV
Рост видимости +12%

Доля дохода от RTC – 4%

Сайт №2

Переход с Динамической монетизации Adfox на тэги Adx+RTC.
Результаты — +39,88% ARPPV
Рост видимости +72%

Доля дохода от RTC – меньше 1%

Сайт №3

Переход с Adx тэгов на Adx+RTC
Результаты: Значимых изменений видимости или ARPPV не выявлено. Было небольшое падение на период теста, но потом выправилось.
Доля дохода от RTC – меньше 1%

График изменения ARPPV. Тест RTC на 3 сайтах
Дата внедрения новых тэгов 02.03. График может быть немного неточным, так тесты были в разное время и график подбивал под одну дату для наглядности.

Выводы

По статистике видно, что внедрение RTC на AMP не принесло много денег, 4% от общего дохода это довольно мало. Основным драйвером роста в моём случае, был переход на Adx тэги, вместо РСЯ+ДМ.

К тому же, в Рунете не так много вендоров, кто работает с RTC. Основным можно выделить Criteo, остальные вендоры не очень популярны или имеют небольшой деманд на Ру сегмент. На зарубежном трафике дела обстоят иначе — монетизаторов, как и площадок работающих с технологией значительно больше, поэтому там есть «где развернуться».

Если на вашей площадке есть много AMP трафика и есть доступ к Criteo, то ради эксперимента, можно попробовать Real Time Config. Если площадка с заграничным трафиком — то надо уже тестировать, а не экспериментировать. Выбор монетизаторов значительно выше. 
В любом другом случае, забейте на RTC.
Рубежанский Денис

Head of Monetization в Qvant, веду канал AdCops

Оцените автора
Добавить комментарий

  1. seoonly.ru

    Нормальная тема, спасибо!

    Ответить
  2. Владимир

    Цены в паре ключ-значения указывать с точкой (1.00) только для RTC? Для обычной ДМ и перевзвешивания с гуглом указываю без точек. Это нормально?

    Ответить
    1. Рубежанский Денис автор

      Да, нормально. RCT не будет работать, если не указывать правильно ставки. Для РК под Prebid тоже требуется указывать ставку и key value с точками

      Ответить
      1. Роман

        Спасибо за статью, годнота 🙂 Подскажи, пжл, какие пороги key value используешь для Adfox + Ad Manager? В хэлпе яндекса показывают промежутке от 1 до 100 шаг 10, потом 100-200 шаг 20, ну и дальше шаг еще больше примерно до 600.

        В общении с поддержкой Яндекса для некрупных проектов они рекомедуют делать шаг меньше, например, в 5 рублей. И диапазон брать небольшой, рублей до 300.

        Что ты посоветуешь?

        Ответить
        1. Рубежанский Денис автор

          Спасибо!

          Для Динамической монетизации стараюсь использовать меньшую градацию на низких ставках. Например, от 1 до 50 с шагом в 1 рубль, от 50 до 100 с шагом в 2 рубля и так далее. Работает лучше, чем советует Яндекс, но не проверял на сайтах с низком трафиком. На них тоже должно работать, но обучаться будут не 2 недели, а 3-4.

          Ответить
          1. Роман

            А до какого потолка идешь?

          2. Рубежанский Денис автор

            2500 рублей

  3. Dobrowin.blog

    Да, ничего себе сколько терминов, приходится открывать гугл) отстал я серьезно по вопросам монетизации. Подумаю как это внедрить у себя на умирающих статейниках, респект.

    Ответить
  4. Maria

    Очень полезно, спасибо! У IndexExchange, Rubicon, Xander тоже не плохой спрос на ру, будем тестить.

    Ответить
    1. Рубежанский Денис автор

      Раз в рунете никто не хочет работать с RTC, приходится искать новые источники деманда!
      Спасибо!

      Ответить