Урок 6. Выгрузка данных из счетчиков веб-аналитики

Шестой урок из курса Максима Уварова «Power Bi для интернет-маркетинга»

Полезные ссылки к уроку:

Яндекс.Метрика

Google Analytics

Видеолекции

Выгрузка данных из Яндекс.Метрики. Часть 1
Получение целей из Яндекс.Метрики
Настройка моделей атрибуции Яндекс.Метрики
Выгрузка данных из Яндекс.Директ при помощи Яндекс.метрики

Работа с фильтрами в Яндекс.Метрике

Справка по использованию фильтров Яндекс.Метрики в API

Примеры:

= PQYM("21781912", "ym:s:visits,ym:s:avgVisitDuration,ym:s:sumVisitDuration,ym:s:sumVisitDurationSeconds", "ym:s:date", "2016-12-01", "2016-12-01", "AQAAAAAQy8J1AAFg-Xkrkp9D6kpGpHz2THTYX74", "ym:s:regionCityName=='Москва' OR ym:s:regionCityName=='Санкт-Петербург'", null)
= PQYM("21781912", "ym:s:visits,ym:s:avgVisitDuration,ym:s:sumVisitDuration,ym:s:sumVisitDurationSeconds", "ym:s:date", "2016-12-01", "2016-12-01", "AQAAAAAQy8J1AAFg-Xkrkp9D6kpGpHz2THTYX74", "NOT(ym:s:age!=18)", null)

Полный список группировок Яндекс.Метрики

Полный список группировок и метрик Яндекс.Метрики. Этот список понадобится вам при выполнении домашнего задания.

Копирование запросов Power Query между PBIX и XLSX файлами
Получение данных из Google Analytics через встроенный коннектор
Задание периодов выгрузки данных во встроенном в Power BI коннекторе к Google Analytics и для обхода sampling
Получение данных из Google Analytics при помощи кастомного коннектора PQGoogleAnalytics. В 2023 году коннектор PQGOOGLEANALYTICS работает не стабильно.

C момента съемок урока коннектор PQGoogleAnalytics был доработан. В нем даты начала и конца периода отчета прописываются не текстом, а задаются в формате дат Power Query. Следовательно ключевые слова today, yesterday, 35daysAgo не работают.
Чтобы отчет у вас выгружался за динамический промежуток дат, например, плавающим окном 28 дней назад по вчера, вам нужно задать диапазоны при помощи формул вида:
Для 28 дней назад:

=Date.AddDays(Date.From(DateTime.LocalNow()) , -28)

Для вчера:

=Date.AddDays(Date.From(DateTime.LocalNow()) , -1)

И использовать эти даты в PQGA можно вот так, соответственно:

=PQGA("ga:72013428", "ga:sessions", "ga:sourceMedium", Date.AddDays(Date.From(DateTime.LocalNow()) , -28), Date.AddDays(Date.From(DateTime.LocalNow()) , -1), "ga:source=@direct", null, 3)

Фиксированные даты по времени без использования календарика вы можете задавать в формате:

=#date(2017, 11, 1)

где в качестве первого аргумента используется год, в качестве второго — месяц, и в качестве третьего — день месяца.

Новый параметр inetrvalsVar в коннекторе PQGA отвечает за разбивку запроса к Google Analytics на диапазоны дат с заданным количеством дней. Это сделано для уменьшения семплинга Google Analytics.

В 2023 году коннектор PQGOOGLEANALYTICS работает не стабильно.

Удаление токенов к Яндекс.Метрике и Google.Analytics

Домашнее задание

Основное задание

Создайте новую BI-систему

Убедитесь, что в настройках Power BI, в разделе Privacy у вас должен быть выбран radiobutton «Always ignore privacy levels».

Скачайте последнюю версию коннектора PQYandexMetrica с github.

Скопируйте в текущую BI систему функцию PQYM и все необходимые для его работы параметры.

Создайте запрос «YMStats» в котором получите следующие измерения и метрики за период с 2013-01-01 по вчера:

  1. Дата визита;
  2. Количество визитов;
  3. Количество отказов;
  4. Количество просмотров страниц;
  5. Среднее время на сайте;
В Google Analytics можно выгрузить корректно суммарное время на сайте в секундах, в то время как из Яндекс.Метрики суммарное время на сайте выгрузить не получится из-за бага метрики: длительность всегда выгружается в формате времени (например, 22:01:17) при этом число суток ОТБРАСЫВАЕТСЯ. Поэтому нужно выгрузить метрику среднего времени нахождения на сайте, применить тип данных Duration к столбцу. Далее нужно преобразовать столбец в общее число секунд. И уже после создать новый столбец «Общее время на сайте», который получится после перемножения среднего времени в секундах на число визитов.
  1. Задайте корректные типы данных для столбцов.
  2. Создайте запрос «GAStats» в котором подключитесь к Google Analytics встроенным в Power BI коннектором (для выгрузки из Google Analytiсs нужно использовать данные view: «1. MW Main Profile»).
  3. Чтобы избавиться от refspam в google analytics, сначала в запросе получите только группировку «Hostname» Находится в группе «Page tracking» и метрику число сессий.
«Hostname» Находится в группе «Page tracking»
  1. Далее отфильтруйте таблицу, чтобы осталась одна строчка со значением «marketing-wiki.ru». Для этого отсортируйте по убыванию столбец «Sessions», щёлкните правой кнопкой на первой ячейке в столбце hostname «marketing-wiki.ru» и выберите в контекстном меню операцию Text Filters → Equals
Контекстное меню Text Filters → Equals
  1. После этого на вкладке Cube Tools Manage нажмите на кнопку «Add items» и добавьте следующие метрики и измерения (найдите самостоятельно):
    • Дата визита;
    • Количество отказов;
    • Количество просмотров страниц;
    • Проведенное время на сайте (убедитесь, что оно отображается в секундах);
Вкладка Cube Tools Manage → «Add items»
  1. Загрузите результаты запросов в модель данных;
  2. При помощи функции CALENDARAUTO создайте таблицу «Calendar» в модели данных, было показано в уроке 6а — моделирование данных;
  3. Свяжите эту таблицу по столбцу «Date» с таблицами из Google Analytics и Яндекс.Метрики
  4. Исключите дни, когда данные присутствуют только в одном из счетчиков (как было показано в уроке 6а);
  5. Создайте Меры BounceRate, SessionTime, PageDepth
  6. Создайте меры абсолютного (GA-YM) и относительного ((GA-YM)/YM) отклонения показателей:
    • Разница в количестве визитов VisitsGA-YM и VisitsGA/YM;
    • Разница в показателе отказов (отказов на визит) BRGA-YM и BRGA/YM;
    • Разница в глубине просмотра (страниц на визит) PageDepthGA-YM и PageDepthGA/YM;
    • Разница в среднем времени на сайте (секунд на визит) TimeGA-YM и TimeGA/YM.
  7. Отформатируйте все меры корректно.
  8. Создайте визуализацию таблица, где по строчкам будут отложены года, а в столбцах будут представлены меры с абсолютными и относительными отклонениями показателей.
  9. Создайте визуализацию Линейчатая диаграмма, в которой будут представлены меры с относительными показателями. В этой визуализации должны быть отфильтрованы данные за 2018 год.
  10. Подсчитайте относительное отклонение в числе уникальных пользователей, которые насчитали метрика и аналитикс за 2018 год. Ответ выведите в визуализации карточка].

Задание сложное. Как делать — думайте сами.

Визуализации → карточка

Обратите внимание:

Средний показатель отказов рассчитывается по формуле:

SUM ( отказы ) / SUM ( визиты )

Если в выгрузке нет абсолютного числа ОТКАЗОВ, но есть ПОКАЗАТЕЛЬ ОТКАЗОВ, то для каждой строчки с исходными данными предварительно необходимо рассчитать абсолютное число ОТКАЗОВ. Для этого нужно умножить ПОКАЗАТЕЛЬ ОТКАЗОВ на ЧИСЛО ВИЗИТОВ. После этого у вас появится возможность рассчитывать средний показатель отказов корректно.

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

Распространенная ошибка рассчитывать СРЕДНИЙ ПОКАЗАТЕЛЬ ОТКАЗОВ в качестве встроенной меры AVERAGE по столбцу ПОКАЗАТЕЛЬ ОТКАЗОВ. Так средний показатель отказов рассчитывать некорректно.

Эталонное выполнение домашнего задания

Максим Уваров выполняет домашнее задание урока 6

Файлы выполнения домашнего задания:

Шпаргалка курса и ментальная карта, ПДФ, 88 страниц, 13 Мб

Отправить
Поделиться
Твитнуть
Запинить

Поддержать автора курса рублями

Если курс оказался полезным, можно задонатить автору курса — Максиму Уварову.

Все перечисленные средства приходят Максиму Уварову.

❤️ Поддержать донатом Максима Уварова

Считаю метрики, делаю сквозную аналитику и когортный анализ, составляю интерактивные дешборды, моделирую юнит-экономику


Обратиться с задачей