В этой статье я покажу вам, как создать дашборд для отслеживания конверсий в разных разрезах и временных отрезках. Выглядит дашборд так:
Мы используем этот отчет в агентстве, чтобы быстро собирать статистику по действующим рекламным кампаниям для клиентов. Дашборд помогает наглядно оценить результаты рекламной кампании за 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
О том, как использовать Python для API Яндекс.Директа, мы раньше подробно писали в другой статье. Здесь изложим кратко.
Запросы к серверу работают примерно так же, как это происходит в веб-интерфейсе Директа. Вы отправляете запрос к Директу, в котором указываете, какую статистику хотите увидеть. Но в случае с API статистика выводится не в браузере, а в среде разработки, где вы можете делать с ней все, что хотите (например, считать кастомные метрики, отправлять в базы данных или даже обучать этими данными нейронную сеть).
Для написания этих запросов потребуются базовые знания Python и его библиотеки:
pandas_gbq;
pandas.
Запрашиваем статистику по кликам, стоимости и количеству конверсий. Нам понадобятся следующие таблицы:
Кампании |
|
Условия показов |
|
Пол и возраст |
|
Операционная система |
|
Требуется скорректировать данные таким образом, чтобы получился готовый DataFrame, с которым можно будет полноценно работать.
Это нужно для того, чтобы у всех данных был корректный тип данных, и там, где данные отсутствуют, не выводилось «—».
Более подробно об этой корректировке можно прочесть в нашей статье на Хабре.
Есть две важные особенности, на которые рекомендуем обратить внимание.
Во-первых, если у вас лиды фиксируются с помощью нескольких целей, но вам нужно получить данные по конкретным целям, — вы можете их указать. Для этого введите номер цели в Яндекс.Метрике. Далее нужно сделать столбец, в котором вы будете складывать разные конверсии.
В первой строке кода делаем столбец со всеми конверсиями, а во второй строке кода удаляем столбцы, в которых у нас изначально были конверсии (1-й и 2-й столбцы).
Обратите внимание на LSC — так указываются разные модели атрибуции.
Во-вторых, если у вас есть много брендового трафика или медийной рекламы, обязательно отфильтруйте их. Иначе вы не сможете сделать объективный вывод о результатах вашей рекламной кампании.
Брендовые кампании имеют очень высокие CTR и конверсию — анализируя все кампании вместе с ней, вы получите оптимистичные данные, которые никак не помогут с оптимизацией обычных кампаний.
Медийная реклама, наоборот, почти не приносит конверсий, и большую часть из них вообще можно увидеть только в Метрике для медийной рекламы (это конверсии post-view). Анализируя статистику с медийной рекламой, вы увидите в ней слишком низкие CTR и конверсию, которые не имеют ничего общего с обычными кампаниями.
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).
Заходим в Google Connectors, выбираем BigQuery.
При подключении добавляем столбец CPL.
Получаем примерно такую таблицу (в данном случае — «Операционные системы»).
Используя эти столбцы, мы можем сделать такую таблицу:
Позже мы добавим еще несколько таблиц, графиков, плашек и получим примерно такой дашборд:
Вуаля — дашборд готов, вы великолепны!
Данные в отчете будут обновляться, когда на компьютере будет обновляться скрипт. Запускайте этот скрипт, когда нужно проанализировать рекламу, — вы получите данные уже через минуту.
На исследование основных показателей в Яндекс Метрике достаточно одного часа. В статье мы покажем, как находить эти показатели и объясним,…
Рассказываем, какие интересные и полезные исследования вышли в мае 2022 года. Какие каналы для общения с клиентами выбирает бизнес —…
В мае Яндекс увеличил количество мест в товарной галерее и добавил два новых формата Большого баннера на главной. Директ…
Я пришел в digital 11 лет назад, когда учился в аспирантуре института биоорганической химии им. академиков М. М. Шемякина и Ю. А. Овчинникова. Тогда я просто…
Как сформулировать CTA, решает общий контекст коммуникации с пользователем. Какая формулировка сработает лучше, определяет тестирование. Но что…
Магазины в Telegram уже были давно. Как они выглядят и насколько удобны — другой вопрос. Некоторые из них — просто…