Как создать дашборд в системе BI-аналитики для оптимизации рекламных кампаний в Яндекс.Директе

В этой статье я покажу вам, как создать дашборд для отслеживания конверсий в разных разрезах и временных отрезках. Выглядит дашборд так:

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

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

Например, ключевое слово может перестать приносить конверсии на промежутке 30 дней, однако на промежутке 90 дней это ключевое слово может оказаться эффективным.

Во-вторых, просмотр разных промежутков позволяет понять, как изменилась статистика после корректировок.

Например, 40 дней назад вы понизили ставку на 50%. И теперь в аналитике вы видите, что за последние 30 дней корректировки хорошо отработали и конверсии стали выгодными. В таком случае можно немного увеличить ставки.

Сразу оговоримся, что этот дашборд ориентирован на тех, кому не нужно анализировать разные модели атрибуции. Он не поможет принять корректное решение в крупном бизнесе: например, при продвижении застройщиков или маркетплейсов с разными каналами привлечения пользователей и, соответственно, более сложными моделями атрибуции.

Для создания дашборда понадобятся:

  • API Яндекс.Директа и Python. С помощью Python мы получим данные из API Яндекс.Директа.

  • Google BigQuery. Сюда мы отправим полученные данные.

  • Google Data Studio. Этот сервис для визуализации данных мы подключим к Google BigQuery.

  • Пара часов или несколько недель, в зависимости от вашего опыта. Если вы раньше использовали Google Data Studio, а данные из Яндекс.Директа отправляете с помощью сторонних сервисов (либо хорошо знаете Python), времени потребуется немного. Если же вы хотите сделать все сами с нуля (как это делал автор статьи), и не знаете Python, придется по вечерам изучать его основы.

Теперь за дело. Построим отчет с данными кампаний в разрезе пола и возраста, ключевых слов и операционных систем:

Шаг 1. Пишем запросы к API Яндекс.Директа

Шаг 2. Корректируем полученные данные

Шаг 3. Отправляем полученные данные в BigQuery

Шаг 4. Подключаемся к BigQuery в DataStudio

Шаг 1. Пишем запросы к API Яндекс.Директа

О том, как использовать Python для API Яндекс.Директа, мы раньше подробно писали в другой статье. Здесь изложим кратко.

Запросы к серверу работают примерно так же, как это происходит в веб-интерфейсе Директа. Вы отправляете запрос к Директу, в котором указываете, какую статистику хотите увидеть. Но в случае с API статистика выводится не в браузере, а в среде разработки, где вы можете делать с ней все, что хотите (например, считать кастомные метрики, отправлять в базы данных или даже обучать этими данными нейронную сеть).

Для написания этих запросов потребуются базовые знания Python и его библиотеки:

  • pandas_gbq;

  • pandas.

Запрашиваем статистику по кликам, стоимости и количеству конверсий. Нам понадобятся следующие таблицы:

Кампании

  • дата;

  • название кампании;

  • клики;

  • стоимость;

  • конверсии.

Условия показов

  • дата;

  • название кампании;

  • условия показов;

  • клики;

  • стоимость;

  • конверсии.

Пол и возраст

  • дата;

  • пол;

  • возраст;

  • клики;

  • стоимость;

  • конверсии.

Операционная система

  • дата;

  • ОС;

  • клики;

  • стоимость;

  • конверсии.

Шаг 2. Корректируем полученные данные

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

Это нужно для того, чтобы у всех данных был корректный тип данных, и там, где данные отсутствуют, не выводилось «—».

Более подробно об этой корректировке можно прочесть в нашей статье на Хабре.

Есть две важные особенности, на которые рекомендуем обратить внимание.

Во-первых, если у вас лиды фиксируются с помощью нескольких целей, но вам нужно получить данные по конкретным целям, — вы можете их указать. Для этого введите номер цели в Яндекс.Метрике. Далее нужно сделать столбец, в котором вы будете складывать разные конверсии.

Указываем номера целей

В первой строке кода делаем столбец со всеми конверсиями, а во второй строке кода удаляем столбцы, в которых у нас изначально были конверсии (1-й и 2-й столбцы).

Обратите внимание на LSC — так указываются разные модели атрибуции.

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

Брендовые кампании имеют очень высокие CTR и конверсию — анализируя все кампании вместе с ней, вы получите оптимистичные данные, которые никак не помогут с оптимизацией обычных кампаний.

Медийная реклама, наоборот, почти не приносит конверсий, и большую часть из них вообще можно увидеть только в Метрике для медийной рекламы (это конверсии post-view). Анализируя статистику с медийной рекламой, вы увидите в ней слишком низкие CTR и конверсию, которые не имеют ничего общего с обычными кампаниями.

Шаг 3. Отправляем полученные данные в BigQuery

BigQuery — веб-сервис для интерактивного широкомасштабного анализа больших наборов данных, расположенных в Google Storage.

На этом шаге у нас уже есть статистика, которая хранится в переменной (в моем случае это x). Теперь нужно отправить данные в Google BigQuery — это делается одной строкой.

Вот пример кода, с помощью которого можно сделать это на Python с помощью pandas_gbq:

pandas_gbq.to_gbq(our_df, ’our_folder.our_table’, project_id=’red-abstraction-9999999’,if_exists=’replace’, progress_bar=None).

 

Шаг 4. Подключаемся к BigQuery в DataStudio

Заходим в Google Connectors, выбираем BigQuery.

При подключении добавляем столбец CPL.

Получаем примерно такую таблицу (в данном случае — «Операционные системы»).

 

Используя эти столбцы, мы можем сделать такую таблицу:

Позже мы добавим еще несколько таблиц, графиков, плашек и получим примерно такой дашборд:

Вуаля — дашборд готов, вы великолепны!

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

Источник статьи

Последние записи

Как понять SEO-отчет: изучаем основные показатели за 1 час

На исследование основных показателей в Яндекс Метрике достаточно одного часа. В статье мы покажем, как находить эти показатели и объясним,…

% дней назад

Главные исследования для маркетолога за май 2022 года

Рассказываем, какие интересные и полезные исследования вышли в мае 2022 года. Какие каналы для общения с клиентами выбирает бизнес —…

% дней назад

Главные новости контекста за май 2022

В мае Яндекс увеличил количество мест в товарной галерее и добавил два новых формата Большого баннера на главной. Директ…

% дней назад

Один день из жизни SMM-специалиста

Я пришел в digital 11 лет назад, когда учился в аспирантуре института биоорганической химии им. академиков М. М. Шемякина и Ю. А. Овчинникова. Тогда я просто…

% дней назад

22 нестандартных призыва к действию

Как сформулировать CTA, решает общий контекст коммуникации с пользователем. Какая формулировка сработает лучше, определяет тестирование. Но что…

% дней назад

Как запустить интернет-магазин в Telegram

Магазины в Telegram уже были давно. Как они выглядят и насколько удобны — другой вопрос. Некоторые из них — просто…

% дней назад