![](/d/20/33/Sobolev.jpg)
Сейчас на рынке очень популярен такой инструмент, как Power BI. Его применяют в самых разных областях, в том числе и в интернет-маркетинге. Мы решили рассказать, как его можно использовать для работы с показателями контекстной рекламы на примере выгрузки статистики из рекламной системы Яндекс.Директ и Google Analytics.
Получение данных через API из необходимых источников
Для того чтобы собирать статистику, сначала ее необходимо получить. Давайте начнем с Яндекс.Директа.
Яндекс.Директ
Для получения статистики из Яндекс.Директа, проще всего использовать API Яндекс.Метрики. Для этого мы используем уже готовый Power Query скрипт Максима Уварова.
Для простоты можно скачать уже готовый Power BI файл c последней версией коннектора.
Давайте разбираться, как получить нужную нам статистику с помощью данного коннектора.
Для начала надо понять, какие именно параметры и метрики мы хотим получить.
Полный список можно посмотреть здесь.
Для Яндекс.Директа нас интересуют следующие параметры (dimensions): ym:ad:date,ym:ad:directOrder,ym:ad:directPhraseOrCond и метрики (metrics): ym:ad:clicks,ym:ad:RUBAdCost
То есть мы будем выгружать дату, название кампании, условие показа, клики и стоимость.
Давайте настроим сам BI файл. Для этого сначала получаем токен:
![](/d/20/33/Power_BI_1.jpg)
А также находим id нужного нам счетчика метрики:
![](/d/20/33/Power_BI_2.jpg)
Теперь заполняем все эти данные в BI-файл. Для начала вызываем функцию getDirectIDs:
![](/d/20/33/Power_BI_3.jpg)
В ответ получает ID нашего аккаунта Яндекс.Директе:
![](/d/20/33/Power_BI_4.jpg)
Теперь у нас есть вся необходимая информация, чтобы выгрузить статистику. Выбираем функцию PQYM, заполняем поля и нажимаем «Вызывать»:
![](/d/20/33/Power_BI_5.jpg)
В результате мы получаем статистику по нашим рекламным кампаниям:
![](/d/20/33/Power_BI_6.jpg)
Далее нам необходимо преобразовать эту информацию для дальнейшей работы:
1) Указать тип данных в каждом столбце.
2) Убрать номера РК, оставить только названия.
3) Убрать минус-слова и кавычки из условий показа.
4) Переименовать столбцы для более удобной работы с ними и дальнейшего сведения, чтобы не было путаницы.
![](/d/20/33/Power_BI_7.jpg)
Статистика по Яндекс.Директу готова, можем двигаться дальше. В целом, алгоритм получения статистики из Яндекс.Метрики аналогичен, просто применяем другие показатели и метрики при вызове функции.
Google Analytics
Для оценки эффективности клиентских рекламных кампаний мы используем данные по достижению целей из Google Analytics. Давайте рассмотрим, как их можно получить через API.
NB: В Power BI есть встроенный коннектор для Google Analytics, но в нем присутствует проблема семплирования данных на больших объемах, так что мы используем сторонний вариант чтобы ее избежать.
Первым делом необходимо установить нужный аддон для Google Spreadsheets:
![](/d/20/33/Power_BI_8.jpg)
Находим нужный нам аддон и устанавливаем его:
![](/d/20/33/Power_BI_9.jpg)
Следующим этапом формируем конфигурационный файл для отчета:
![](/d/20/33/Power_BI_10-1.jpg)
Для того чтобы получить данные, нам надо знать следующие вещи:
1) ID представления в Google Analytics, его можно найти в настройках представления
![](/d/20/33/Power_BI_11.jpg)
2) Необходимые параметры и метрики для выгрузки
3) Временной отрезок, за который выгружаются данные
Аддон позволяет выгружать несколько отчетов, например, достижения по целям и расход из Google Adwords, но нам сейчас нужен только один, заполняем его по примеру:
![](/d/20/33/Power_BI_12.jpg)
Как видно, здесь у нас присутствуют такие метрики, как ga:goal1Completions, это как раз данные по достижению целей. Вместо цифры 1 необходимо указать номера нужных вам целей, они есть в настройках Google Analytics:
![](/d/20/33/Power_BI_13.jpg)
После того, как данные будут заполнены, запускаем отчет:
![](/d/20/33/Power_BI_14.jpg)
В итоге мы получаем всю статистику по достижению целей на отдельной вкладке:
![](/d/20/33/Power_BI_15.jpg)
Не забываем настроить автообновление раз в сутки:
![](/d/20/33/Power_BI_16.jpg)
Самое сложное осталось позади, теперь добавляем наши данные в Power BI. Для этого публикуем их по ссылке:
![](/d/20/33/Power_BI_17.jpg)
Полученную ссылку добавляем в Power BI:
![](/d/20/33/Power_BI_18.jpg)
Получаем в итоге таблицу:
![](/d/20/33/Power_BI_19.jpg)
Преобразовываем ее в следующем порядке:
1) Удаляем верхние 14 строк
2) Используем первую строку как заголовки
3) Устанавливаем типы данных для столбцов
4) Переименовываем столбцы
5) Складываем информацию по всем достижениям целей
![](/d/20/33/Power_BI_20.jpg)
На выходе получаем таблицу, аналогичную статистике из Яндекс.Директа.
Небольшое отступление:
Если при настройке отчета Big Analytics Data использовать следующие настройки, то можно получить статистику по расходам Google Adwords, если между Adwords и Analytics установлена связь:
![](/d/20/33/Power_BI_21.jpg)
Сведение данных в общую таблицу
Теперь нам нужно для работы объединить запросы:
![](/d/20/33/Power_BI_22.jpg)
Данные по столбцам, название которых совпадает, сведутся автоматически, отсутствующие данные заполняются значением null, которое лучше заменить на ноль:
![](/d/20/33/Power_BI_23.jpg)
Все, данные собраны и подготовлены, можно переходить к визуальной части.
Вспомогательные данные
Сегменты кампаний
Для удобства создания визуализаций мы также используем сегменты для наших рекламных кампаний.
Для создания сегментов берем нашу таблицу с данными из Яндекс.Директа и преобразовываем ее:
1) Удаляем ненужные столбцы
2) Удаляем дубликаты
3) Разделяем столбец с названиями РК по разделителю “_”
4) Переименовываем столбцы для удобства, оставив необходимые
На выходе получаем такую таблицу:
![](/d/20/33/Power_BI_25.jpg)
Работа с датами
Часто возникает ситуация, что нам необходимо смотреть динамику по месяцам или неделям, для того чтобы анализировать текущую ситуацию. Средствами Power BI это реализовывается не очень удобно, так что мы сделали вспомогательную таблицу:
![](/d/20/33/Power_BI_26.jpg)
Далее, аналогично таблице с данными из Google Analytics мы добавляем ее в наш BI файл и немного преобразовываем, добавляя в нее месяц:
![](/d/20/33/Power_BI_27.jpg)
Визуальная часть
Установление связей
Первое, что нам необходимо сделать - установить связи между нашими таблицами:
![](/d/20/33/Power_BI_28.jpg)
Это позволит нам строить фильтры для визуализаций более гибко.
Создание мер
Теперь давайте подумаем, каких метрик нам не хватает для отслеживания эффективности рекламных кампаний. Мы выделили что дополнительно хотим видеть CPA и конверсию, создаем их:
1) Считаем сумму обращений:
![](/d/20/33/Power_BI_29.jpg)
2) Считаем конверсию:
![](/d/20/33/Power_BI_30.jpg)
3) Считаем CPA:
![](/d/20/33/Power_BI_31.jpg)
Создание визуализаций
Давайте сделаем общий dashboard, который нам позволит мониторить текущую ситуацию по клиенту в целом:
![](/d/20/33/Power_BI_32.jpg)
Так как реклама запущена недавно, то статистики по клиенту не очень много, но мы наглядно видим текущую ситуацию.
Не забываем добавить разные уровни даты для удобства переключения на графиках:
![](/d/20/33/Power_BI_33.jpg)
Переходя на разные уровни мы можем оценить динамику:
![](/d/20/33/Power_BI_34.jpg)
Дополнительно построим матрицу с информацией по кампаниям и ключевым словам:
![](/d/20/33/Power_BI_35.jpg)
Данный вид визуализации позволяет нам сгруппировать данные по нужным нам сегментам и мы видим текущую картину вплоть до ключевого слова.
Результат работы
И в завершение статьи мы публикуем данную визуализацию, с которой можно повзаимодействовать динамически и посмотреть ее возможности (данные предоставлены тестовые и не являются реальными).
Ссылка на просмотр, если отключены iframe:
https://app.powerbi.com/view?r=eyJrIjoiYjdkZTdhN2MtZDY3OC00YTYxLWExNjAtNzNhYzBjNDQyODA4IiwidCI6ImNlZjk4ZTU4LTgxZjctNDE5NC1iZTgyLWY2M2E3ZGU4YTdhZSIsImMiOjl9