Google Analytics 4 и Python - практические приемы работы

04 декабря, 2023

В этом подробном руководстве я покажу, как с помощью языка программирования Python выполнять запросы к API Google Analytics 4 (Data API) и выгружать данные по стандартным отчетам и сохранять статистику вашего ресурса Google Analytics 4 на компьютер. В конце материала будут приложены все исходники запросов, чтобы вы смогли взять их за основу при написании собственной программы.

Начало

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

Здесь мы сосредоточимся на нескольких запросах, каждый из которых будет представлять собой стандартный отчет Google Analytics 4 со своим перечнем параметров и показателей. А вся последовательность действий, которую будем выполнять по выгрузке данных из GA4 с помощью Data API, сводится к следующим простым шагам:

  • создание проекта;
  • быстрый запуск API через официальную документацию Google;
  • добавление сервисного аккаунта в ресурс Google Analytics 4;
  • загрузка приватного ключа в Google Диск и его подключение;
  • подготовка программы;
  • написание запроса для каждого отчета Google Analytics 4;
  • сохранение данных в JSON.

Давайте приступим!

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

Для работы с API Google Analytics 4 я предлагаю использовать Google Colab. Чтобы создать свой первый проект в нем, авторизуйтесь в своей учетной записи Gmail и перейдите по ссылке. Вам откроется приветственное окно и ваши проекты:

Первый экран в Colaboratory

Если вы никогда раньше не работали с Colaboratory, то никаких проектов, кроме демонстрационного, в списке вы не увидите. Для создания первого проекта нажмите на Создать блокнот:

Создание блокнота

В новом окне вы увидите только что созданный блокнот, в котором вы будете писать код программы на Python. При желании вы можете переименовать свой проект, задав ему понятное название, например - API Google Analytics 4. Отчеты:

Название блокнота

На этом первый шаг завершен. Оставьте вкладку с вашим проектом Colab открытой и переходите к следующему этапу.

Быстрый запуск API

Начинающим пользователям Google предоставляет возможность быстро начать работу с API Google Analytics, перейдя в официальную документацию разработчиков. Сделайте это, а затем на открывшейся вкладке нажмите на синюю кнопку Включите API данных Google Analytics v1.:

Включите API данных Google Analytics v1

Это действие автоматически создаст вам новый проект в Google Cloud Platform (GCP), а также активирует Google Analytics Data API v1 и создаст учетную запись службы, необходимую для дальнейшего создания запросов. Для работы с Data API платежный аккаунт в Google Cloud не требуется, поэтому вы можете использовать любую учетную запись Gmail.

Нажав на кнопку, введите имя проекта (Enter new project name). Например, API GA4:

Название проекта

В завершение нажмите NEXT (Далее). Начнется автоматическое создание проекта. Через некоторое время Google выдаст вам уведомление об успешной настройке проекта и создании учетной записи службы:

Приватный ключ

Скачайте к себе на компьютер приватный ключ, нажав на кнопку DOWNLOAD PRIVATE KEY AS JSON. Его вы будете использовать для аутентификации своей учетной записи службы. Сохраните этот файл в надежном месте, так как любой, у кого есть этот ключ, может выступать в качестве сервисного аккаунта для доступа к вашим ресурсам Google Cloud Platform. В конце нажмите DONE.

Вы можете открыть сохраненный файл обычным блокнотом (формат .json), чтобы посмотреть, из чего он состоит:

Открытие файла в Notepad++

Этот файл вам в дальнейшем понадобится для проекта в Colab.

Чтобы удостовериться в том, что Google сам автоматически создал нам новый проект и учетную запись службы (сервисный аккаунт) в GCP для работы с Data API, перейдите по ссылке console.cloud.google.com. Если в Google Cloud Platform у вас уже созданы и другие проекты, нажмите в верхней части панели на название:

Открытие списка проектов в Google Cloud

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

Созданный проект

Нажмите на него, чтобы открыть. Затем перейдите в APIs & Services:

APIs & Services

Удостоверьтесь, что в разделе Enabled APIs & services включен Google Analytics Data API:

Google Analytics Data API включен

Нажмите на название. Если Status – Enabled, то Google Analytics Data API включен:

Google Analytics Data API - Enabled

Теперь перейдите в раздел Credentials, чтобы увидеть данные сервисного аккаунта, созданного автоматически:

Credentials - Service Accounts

Данные по сервисному аккаунту уже присутствуют в выгруженном JSON файле с приватным ключом в строке client_email:

Данные о сервисном аккаунте есть в вашем приватном ключе

Добавление сервисного аккаунта в Google Analytics 4

Скопируйте адрес электронной почты сервисного аккаунта (или из сохраненного файла из поля client_email, или из интерфейса Google Cloud) и откройте свой ресурс Google Analytics 4, с которым планируете работать. Перейдите в раздел Администратор – Ресурс - Управление доступом к ресурсу:

Управление доступом к ресурсу

Добавьте нового пользователя:

Добавление нового пользователя

Для работы с Google Analytics Data API v1 необходимы только разрешения на чтение и анализ (он же Читатель). В поле адреса электронный почты добавьте скопированный на предыдущем шаге e-mail сервисного аккаунта:

Роль - Читатель

В правом верхнем углу нажмите кнопку Добавить. На этом добавление сервисного аккаунта в Google Analytics 4 завершено.

Загрузка приватного ключа на Google Диск

Когда вы начнете писать свой первый запрос к Data API, вам понадобятся данные от сервисного аккаунта Google. А для этого необходимо загрузить ваш приватный JSON ключ на Google Диск. Это нужно сделать для того, чтобы после перезапуска среды выполнения (завершения сеанса и закрытия вкладки браузера/проекта) Google не удалял ваш файл с приватным ключом из Colab, и вам не приходилось загружать его каждый раз повторно. Для этого мы подключаемся к Диску и загружаем в него этот файл, а потом в проекте прописываем путь к этому файлу.

Сделать это очень просто. Перейдите в Google Drive по ссылке и загрузите в него ваш приватный ключ:

Загрузка приватного ключа на Google Диск

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

Подготовка программы

Вернитесь на вкладку с вашим проектом в Colab и в первой строке введите команду установки клиентской библиотеки Google Analytics:

Нажмите иконку запуска (значок play), чтобы код в ячейке сработал. В Colab это будет выглядеть так:

Установка клиентской библиотеки Google Analytics для работы с Data API

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

Успешное выполнение ячейки с кодом

В конце ячейки вы можете увидеть строчки примерно такого содержания:

Произошла успешная установка пакета, но для использования новых версий вы должны перезапустить среду выполнения с помощью кнопки RESTART RUNTIME. Это делать необязательно, поскольку Google в Colab поддерживает актуальное состояние библиотек и их взаимную работу.

Чтобы продолжить писать программу, сверху вашего блокнота нажмите на + Код:

Добавление новой ячейки для кода

Под первой ячейкой у вас будет создана новая, пустая:

Новая ячейка в программе

Теперь импортируйте клиентскую библиотеку Google Cloud с помощью нижеприведенной строчки кода, а затем запустите код в ячейке:

В Colab это будет выглядеть так:

Импорт клиентской библиотеки Google Cloud

Добавьте новую ячейку с кодом и вставьте в него следующий код:

Он подключает пакет для работы Colab с Google Диском. В Colab это будет выглядеть так:

Импорт пакета для работы с Google Drive

Вновь добавьте новую ячейку с кодом и вставьте в него следующий код:

Данная строка позволяет импортировать ваши файлы из Google Drive в проект Colab, чтобы потом к ним можно было обращаться в программе. А поскольку на предыдущем шаге вы загрузили свой приватный JSON ключ на Диск, который нам понадобится в составлении запроса к Data API (GA4), запустите ячейку. Вам откроется новое окно, в котором Google попросит вам подключиться к Диску. Сделайте это:

Подключение к Google Диску

Выбрав свою учетную запись Gmail, предоставьте приложению Google Drive все необходимые разрешения:

Разрешение доступов к приложению Google Drive

В завершение нажмите кнопку Разрешить. После этого код успешно будет выполнен, все всплывающие окна закроются, а в вашем проекте в Colab, если вы нажмете на иконку папки в левом углу страницы, отобразиться папка drive, в которой будут размещены все файлы с вашего Диска, в том числе и загруженный ранее приватный ключ:

Содержимое вашего Google Диска и загруженный приватный ключ

Найдите в списке ваш приватный ключ и нажмите на него правой кнопкой мыши. Выберите пункт Скопировать путь:

Копирование пути к приватному ключу

Как и прежде, создайте новую ячейку с кодом с помощью + Код. Добавьте в нее две строчки кода:

, где вместо путь_к_приватному_файлу.json вы укажете тот путь, который скопировали с предыдущего шага. Затем запустите ячейку с кодом.

В Colab это будет выглядеть так:

Путь к приватному ключу

Переменная, чье значение присваивается Python извне, называют переменной окружения. Как правило, ее устанавливают в командной строке перед тем, как обратиться к исполняемому файлу Python. После этого ОС позволяет программе Python получать доступ к такой переменной.

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

Алгоритм, по которому проходит установка переменных окружения, напрямую зависит от платформы. Поэтому следует использовать встроенный модуль OS компании Python для считывания переменных. Функции этого модуля позволяют взаимодействовать с операционной системой вне зависимости от ее платформы.

Для доступа к таким переменным в Python используется объект os.environ - это словарь, в котором хранятся все переменные окружения программы, а GOOGLE_APPLICATION_CREDENTIALS - это переменная среды, которую нужно задать, чтобы указать расположение вашего приватного ключа JSON. Перед использованием словаря, конечно же, требуется импортировать сам пакет os с помощью команды import os.

На странице быстрого запуска в самом низу представлен пример кода, позволяющий выгрузить статистику из вашего счетчика Google Analytics 4 за определенный диапазон дат. В качестве параметра задан Город (City), а показателя - Активные пользователи (Active Users). Переключившись на вкладку Python, вы можете увидеть весь запрос целиком:

Пример запроса из справки Google

Код, представленный в справке, можно открыть в Cloud Shell или посмотреть на GitHub:

Код на в Cloud Shell или на GitHub

Если вы в будущем захотите просто скопировать кусок кода и вставить его в свой проект Colab, я рекомендую это делать из гитхаба, поскольку очень важно соблюдать отступы и не использовать в коде лишние пробелы, табуляции и т.д. Скопировав в текущем виде код из официальной документации с помощью выделения и Ctrl+C/Ctrl+V, он может не сработать.

Копирование кода из GitHub

Поскольку мы будем выгружать несколько показателей, то нам потребуется несколько иной код. Найти его можно как из официальной документации Google, так и в репозитории GitHub по названию программы run_report.py.

Код программы run_report.py

Открыв проект на GitHub, прокрутите страницу вниз, пока не дойдете до строки # [START analyticsdata_quickstart]. Именно с этого момента и до конца вы должны скопировать приведенный код:

Вставьте этот код в новую ячейку своего проекта Colab, но не запускайте его:

Копирование и вставка кода в Colab

Поскольку вы скопировали пример кода из документации, то в нем нужно изменить Идентификатор ресурса (GA4-PROPERTY-ID), а также задать нужные диапазоны дат, параметры и показатели.

Чтобы найти свой идентификатор ресурса, в интерфейсе GA4 перейдите в раздел Администратор – Настройки ресурса - Информация о ресурсе. В правом верхнем углу скопируйте значение идентификатора ресурса:

Идентификатор ресурса Google Analytics 4

Его вы так же можете найти в поиске Google Analytics 4 по аккаунтам и ресурсам. Идентификатор ресурса будет отображаться под его названием:

Идентификатор ресурса в поиске GA4

Вставьте его в скопированном коде в поле property_id в двух местах:

Ваш идентификатор ресурса в переменной property_id

В самом запросе поменяйте значения start_date (начальная дата) и end_date (конечная дата), за которые хотите выгрузить статистику по городам и активным пользователям. Например, за последние 30 дней:

  • start_date="30daysAgo"
  • end_date="yesterday"

Изменение диапазона дат

Таким образом, мы с вами подготовили универсальную программу для выгрузки данных Google Analytics 4. Дальше остается только копировать вышеприведенный код и для каждого отчета изменять в запросе параметры и показатели.

Примечание: все приведенные ниже запросы будут относиться к стандартным отчетам, полученным с помощью Data API и метода runReport.

Выгрузка данных по отчетам

Поскольку мы с вами использовали клиентскую библиотеку на Python, размещенную в официальной документации, то и свои запросы к стандартным отчетам Google Analytics 4 будем составлять, ориентируясь на примеры из справки Google.

Для формирования запросов нам понадобится не только сам код программы, но и понимание того, какие параметры и показатели используются в каждом отчете и как они правильно пишутся в API. А для этого я рекомендую использовать несколько утилит:

В них подробны описана каждая метрика, включая возможность использования и имя API (API name). Например, параметр Источник/канал сеанса (Session source / medium) в API имеет имя sessionSourceMedium:

Пример параметра "Источник/канал сеанса" (data.ga4spy.com)

Точно таким же способом вы можете узнать дополнительную информацию по каждому параметру и показателю Google Analytics 4.

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

  1. Источники трафика (User acquisition)
  2. Привлечение трафика (Traffic acquisition)
  3. События (Events)
  4. Конверсии (Conversions)
  5. Страницы и экраны (Pages and screens)
  6. Целевая страница (Landing Page)
  7. Совершённые покупки (Ecommerce purchases)
  8. Демографические данные (Demographic details)
  9. Технические данные (Tech details)

Приступим к выгрузке!

1. Источники трафика (User acquisition)

Отчет Источники трафика (User acquisition) позволяет понять, как новые пользователи находят ваш сайт или приложение в первый раз. Он отличается от отчета Привлечение трафика (Traffic acquisition) тем, что содержит информацию об источнике, канале, кампании первого взаимодействии пользователя (когда было зарегистрировано событие first_visit и ga_session_number = 1), а не о его повторных заходах, сеансах и возвратах.

Именно поэтому в нем присутствуют параметры, в которых содержится слово первый:

  • Группа каналов по умолчанию, связанная с первым взаимодействием пользователя (название в API - firstUserDefaultChannelGroup)
  • Первый канал пользователя (название в API - firstUserMedium)
  • Первый источник пользователя (название в API - firstUserSource)
  • Первый источник/канал пользователя (название в API - firstUserSourceMedium)
  • Первая исходная платформа пользователя (название в API - firstUserSourcePlatform)
  • Первая кампания пользователя (название в API - firstUserCampaignName)
  • Тип рекламной сети Google Рекламы для первого пользователя (название в API - firstUserGoogleAdsAdNetworkType)
  • Название группы объявлений Google Рекламы для первого пользователя (название в API - firstUserGoogleAdsAdGroupName)

Показатели в отчете:

  • Новые пользователи (название в API - newUsers)
  • Сеансы с взаимодействием (название в API - engagedSessions)
  • Доля взаимодействия (название в API - engagementRate)
  • Сеансов с взаимодействием на пользователя (такой показатель в данный момент в API недоступен)
  • Среднее время взаимодействия (такой показатель в данный момент в API недоступен)
  • Количество событий (название в API - eventCount)
  • Конверсии (название в API - conversions)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "Источники трафика (User acquisition)"

Примечание: подробнее об отчетах категории Источники трафика читайте в этом материале.

Используя названия всех метрик в API, вы можете скорректировать свою программу таким образом, чтобы она была максимально похожа по набору параметров и показателей на стандартный отчет Google Analytics 4. Но поскольку в запросе используется несколько показателей, то код программы необходимо изменить. Для этого измените в шаблоне строку:

на:

То есть вам нужно перечислить все показатели отчета через запятую в таком формате.

Перечисление всех показателей в запросе через запятую

А в качестве параметра задайте firstUserDefaultChannelGroup (Группа каналов по умолчанию, связанная с первым взаимодействием пользователя) или любой другой из этого отчета, важный для вас:

Указание нужного параметра в запросе

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

Результат выполнения запроса

Сравните выгруженную статистику по API с интерфейсными данными вашего ресурса Google Analytics 4. Она должна сходиться, поскольку и Data API, и стандартные отчеты используют агрегированную статистику. Например, мои данные по органическому поиску (Organic Search) такие:

  • Новые пользователя (newUsers) - 13804
  • Сеансы с взаимодействием (engagedSessions) - 16813
  • Доля взаимодействия (engagementRate) - 0.6099 или 60,99%
  • Количество событий (eventCount) - 175577
  • Конверсии (conversions) - 273
  • Общий доход (totalRevenue) - 397099.99

Они совпадают с интерфейсными значениями:

Значения, выгруженные по API, сходится с интерфейсной статистикой Google Analytics 4

И такое сопоставление можно провести по всем остальным каналам в таблице, связанным с первым взаимодействием пользователя. Данные должны сойтись.

Но, как вы понимаете, результат, который мы получили после выполнения запроса, не совсем читабельный. Аналитики данных очень часто работают с датафреймами (dataframe), используя библиотеку pandas и преобразования в Pandas DataFrame.

Pandas - это библиотека Python для обработки и анализа структурированных данных, ее название происходит от «panel data» («панельные данные»). Панельными данными называют информацию, полученную в результате исследований и структурированную в виде таблиц. Для работы с такими массивами данных и создан Pandas.

Pandas DataFrame - это двумерный массив, похожий на таблицу/лист. В нем можно проводить такие же манипуляции с данными: объединять в группы, сортировать по определенному признаку, производить вычисления. Как любая таблица, датафрейм состоит из столбцов и строк.

Для этого создайте новую ячейку и запустите импорт pandas с помощью команды:

Импорт pandas

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

, где в поле YOUR-GA4-PROPERTY-ID вам необходимо добавить свой собственный идентификатор ресурса (см. выше).

Этот код имеет некоторые отличия по сравнению с тем, который мы использовали ранее. А именно здесь:

  • удалена строка print_run_report_response(response)
  • удалена функция def print_run_report_response(response). Вместо нее используется другой код (начиная с data = [], преобразующий результат выполнения программы в датафрейм)
  • в конце переменной df присваивается значение функции run_report()

Чтобы увидеть итоговый результат в преобразованный датафрейм, создайте новую ячейку, введите в нее df и запустите:

Результат выполнения запроса

Такое отображение статистики уже гораздо ближе к интерфейсному варианту Google Analytics 4 и понятно любому человеку. Мы можем сохранить таблицу, воспользовавшись функцией to_excel() (для .xlxs) или to_csv() (для .csv) в Pandas, чтобы потом открыть эти данные локально на компьютере в Microsoft Excel.

Делается это с помощью простой команды в отдельной ячейке:

Сохранение данных в формате .csv

, где user-acquisition - название файла в формате .csv, которое вы можете задать произвольно.

Эта команда сохраняет полученный датафрейм с данными отчета Google Analytics 4 по источникам трафика в таблицу с названием user-acquisition в формате .csv. Но по умолчанию он сохраняется не на вашем компьютере, а в проекте Colab. Чтобы найти итоговой файл, в левом меню навигации нажмите на иконку с папкой. Там вы должны увидеть свой сохраненный файл:

Сохраненный .csv файл

Наведите на него курсор мыши, а затем нажмите на иконку с тремя точками и выберите Скачать:

Сохранение файла с данными

Файл со статистикой будет сохранен на вашем компьютере. Открыв его в обычном Microsoft Excel, вы увидите все данные в первом столбце:

Выгруженная статистика

Выполнив стандартную функцию Текст по столбцам с разделителем запятая, вы получите удобочитаемую статистику в виде набора выгруженных столбцов (=полей), над которым можно будет проводить вычисления показателя отказов, глубины просмотра и времени на сайте:

Текст по столбцам с разделителем "запятая"

Далее вы можете выполнять с данными нужные преобразования (изменять формат, рассчитывать значения на основе существующих метрик, скорректировать число десятичных знаков и т.д.).

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

2. Привлечение трафика (Traffic acquisition)

Отчет Привлечение трафика (Traffic acquisition) позволяет понять, откуда приходят посетители вашего сайта и приложения, в частности, новые и вернувшиеся пользователи. Он отличается от предыдущего отчета Источники трафика (User acquisition) тем, что содержит информацию об источнике, канале, кампании не первого взаимодействии пользователя, а каждого сеанса.

Именно поэтому в нем присутствуют параметры, в которых содержится слово сеанс:

  • Группа каналов по умолчанию, связанная с сеансом (название в API - sessionDefaultChannelGroup)
  • Источник/канал сеанса (название в API - sessionSourceMedium)
  • Канал сеанса (название в API - sessionMedium)
  • Источник сеанса (название в API - sessionSource)
  • Исходная платформа сеанса (название в API - sessionSourcePlatform)
  • Кампания, связанная с сеансом (название в API - sessionCampaignName)

Показатели в отчете:

  • Пользователи (название в API - activeUsers)
  • Сеансы (название в API - sessions)
  • Сеансы с взаимодействием (название в API - engagedSessions)
  • Среднее время взаимодействия на сеанс (такой показатель в данный момент в API недоступен)
  • Среднее время взаимодействия (такой показатель в данный момент в API недоступен)
  • Сеансов с взаимодействием на пользователя (такой показатель в данный момент в API недоступен)
  • Количество событий за сеанс (название в API - eventsPerSession)
  • Доля взаимодействия (название в API - engagementRate)
  • Количество событий (название в API - eventCount)
  • Конверсии (название в API - conversions)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "Привлечение трафика (Traffic acquisition)"

Примечание: подробнее об отчетах категории Источники трафика читайте в этом материале.

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

Копирование ячейки с кодом

С помощью сочетания клавиш Ctrl+V вставьте скопированную ячейку в конец вашей программы.

Ячейка с кодом для второго отчета

Не забудьте в dimensions и metrics заменить параметры и показателя на те, которые присутствуют в отчете Привлечение трафика. При желании вы можете изменить название переменной df на df2, поскольку это наш второй отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, а df2 - для Привлечение трафика.

Измененные метрики в запросе и переменная df2

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df2 и запустите:

Результат выполнения запроса

Сохраните полученную статистику с интерфейсными данными вашего счетчика Google Analytics 4. Если все данные совпадают, то вы можете сохранить таблицу, воспользовавшись функцией to_excel() (для .xlxs) или to_csv() (для .csv) в Pandas, чтобы потом открыть эти данные локально на компьютере в Microsoft Excel.

3. События (Evemts)

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

Параметры в отчете:

  • Название события (название в API - eventName)

Показатели в отчете:

  • Количество событий (название в API - eventCount)
  • Всего пользователей (название в API - totalUsers)
  • Событий на пользователя (название в API - eventCountPerUser)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "События"

Скопировав вышеприведенный код для этого отчета, так же не забудьте в dimensions и metrics заменить параметры и показателя на те, которые присутствуют в отчете События. При желании вы можете изменить название переменной d2 на df3, поскольку это наш третий отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, df2 - для Привлечение трафика, а df3 - для отчета событиям Google Analytics 4.

Измененные метрики в запросе и переменная df3

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df3 и запустите:

Результат выполнения запроса

Сохраните полученную статистику с интерфейсными данными вашего счетчика Google Analytics 4. Если все данные совпадают, то вы можете сохранить таблицу, воспользовавшись функцией to_excel() (для .xlxs) или to_csv() (для .csv) в Pandas, чтобы потом открыть эти данные локально на компьютере в Microsoft Excel.

4. Конверсии (Conversions)

Отчет по конверсиям в GA4 содержит данные о том, сколько раз активировалось каждое событие-конверсия, которое вы отметили в интерфейсе именно как конверсию.

Параметры в отчете:

  • Название события (название в API - eventName)

Показатели в отчете:

  • Конверсии (название в API - conversions)
  • Всего пользователей (название в API - totalUsers)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "Конверсии" (Conversions)

Этот отчет очень похож на предыдущий по событиям, поэтому скопировав ячейку с кодом, просто измените несколько метрик. При желании вы можете изменить название переменной d3 на df4, поскольку это наш третий отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, df2 - для Привлечение трафика, df3 - для отчета событиям Google Analytics 4, а df4 - по конверсиям.

Измененные метрики в запросе и переменная df4

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df4 и запустите:

Результат выполнения запроса

Сохраните полученную статистику с интерфейсными данными вашего счетчика Google Analytics 4. Если все данные совпадают, то вы можете сохранить таблицу, воспользовавшись функцией to_excel() (для .xlxs) или to_csv() (для .csv) в Pandas, чтобы потом открыть эти данные локально на компьютере в Microsoft Excel.

5. Страницы и экраны (Pages and screens)

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

Параметры в отчете:

  • Заголовок страницы и класс экрана (название в API - unifiedScreenClass)
  • Путь к странице и класс экрана (название в API - unifiedPagePathScreen)
  • Заголовок страницы и название экрана (название в API - unifiedScreenName)
  • Группа контента (название в API - contentGroup)

Показатели в отчете:

  • Просмотры (название в API - screenPageViews)
  • Пользователи (название в API - activeUsers)
  • Просмотров на пользователя (название в API - screenPageViewsPerUser)
  • Среднее время взаимодействия (такой показатель в данный момент в API недоступен)
  • Количество событий (название в API - eventCount)
  • Конверсии (название в API - conversions)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "Страницы и экраны" (Pages and screens)

В новой ячейке - скопированный код и новые значения параметров и показателей. При желании вы можете изменить название переменной d4 на df5, поскольку это наш четвертый отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, df2 - для Привлечение трафика, df3 - для отчета событиям Google Analytics 4, df4 - по конверсиям, а df5 - для Страницы и экраны.

Измененные метрики в запросе и переменная df5

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df5 и запустите:

Результат выполнения запроса

6. Целевая страница (Landing Page)

Отчет о целевых страницах поможет вам узнать, как посетители вашего сайта взаимодействуют с контентом. Вы увидите, с какой страницы начинает каждый пользователь и сколько пользователей в первую очередь попадает на каждую страницу. По сути, это страница входа, с которой пользователь начинает свою сессию на вашем сайте.

Параметры в отчете:

  • Целевая страница (название в API -  landingPage)

Показатели в отчете:

  • Сеансы (название в API - sessions)
  • Пользователи (название в API - activeUsers)
  • Новые пользователи (название в API - newUsers)
  • Среднее время взаимодействия на сеанс (такой показатель в данный момент в API недоступен)
  • Конверсии (название в API - conversions)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "Целевая страница"

Примечание: в отчете для параметр Целевая страница может отображаться значение (not set). Это происходит тогда, когда у сеанса нет события page_view (просмотра страницы).

Скопируйте код от предыдущего запроса в новую ячейку и измените параметры и показатели в ней. При желании вы можете изменить название переменной d5 на df6, поскольку это уже пятый отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, df2 - для Привлечение трафика, df3 - для отчета событиям Google Analytics 4, df4 - по конверсиям, df5 - для Страницы и экраны, а df6 - для Целевая страница.

Измененные метрики в запросе и переменная df6

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df6 и запустите:

Результат выполнения запроса

7. Совершённые покупки (Ecommerce purchases)

Отчет Совершённые покупки (Ecommerce purchases) – это стандартный отчет, содержащий информацию о товарах или услугах, которые вы продаете в интернет-магазине. Он будет доступен после настройки электронной торговли.

Параметры в отчете:

  • Название товара (название в API - itemName)
  • Идентификатор товара (название в API - itemId)
  • Категория товара (название в API - itemCategory)
  • Категория товара 2 (название в API - itemCategory2)
  • Категория товара 3 (название в API - itemCategory3)
  • Категория товара 4 (название в API - itemCategory4)
  • Категория товара 5 (название в API - itemCategory5)
  • Разновидность товара(название в API - itemVariant)
  • Бренд товара (название в API - itemBrand)
  • Аффилированность товара (название в API - itemAffiliation)

Показатели в отчете:

  • Просмотренные товары (название в API - itemsViewed)
  • Товары, добавленные в корзину (название в API - itemsAddedToCart)
  • Купленные товары (название в API - itemsPurchased)
  • Доход от товара (название в API - itemRevenue)

Сам отчет выглядит следующим образом:

Отчет "Совершённые покупки"

Скопируйте код от предыдущего запроса в новую ячейку и измените параметры и показатели в ней. При желании вы можете изменить название переменной d6 на df7, поскольку это уже пятый отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, df2 - для Привлечение трафика, df3 - для отчета событиям Google Analytics 4, df4 - по конверсиям, df5 - для Страницы и экраны, df6 - для Целевая страница, а df7 - для отчета по совершённым покупкам.

Измененные метрики в запросе и переменная df7

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df7 и запустите:

Результат выполнения запроса

8. Демографические данные (Demographic details)

Отчет Демографические данные (Demographic details) предоставляет основные данные о пользователях сайта или приложения: используемый язык, интересы, местоположение, возраст и пол. В этот отчет включаются данные только о тех пользователях, которые предоставили на это согласие. Также для защиты конфиденциальности могут применяться пороговые объемы данных. Это означает, что сегменты с очень низким числом участников отбрасываются.

Параметры в отчете:

  • Страна (название в API - country)
  • Регион (название в API -  region)
  • Город (название в API - city)
  • Язык (название в API -  language)
  • Возраст (название в API - userAgeBracket)
  • Пол (название в API - userGender)
  • Интересы (название в API - brandingInterest)

Показатели в отчете:

  • Пользователи (название в API - activeUsers)
  • Новые пользователи (название в API - newUsers)
  • Сеансы с взаимодействием (название в API - engagedSessions)
  • Доля взаимодействия (название в API - engagementRate)
  • Сеансов с взаимодействием на пользователя (такой показатель в данный момент в API недоступен)
  • Среднее время взаимодействия (такой показатель в данный момент в API недоступен)
  • Количество событий (название в API - eventCount)
  • Конверсии (название в API - conversions)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "Демографические данные"

Скопируйте код от предыдущего запроса в новую ячейку и измените параметры и показатели в ней. При желании вы можете изменить название переменной d7 на df8, поскольку это уже пятый отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, df2 - для Привлечение трафика, df3 - для отчета событиям Google Analytics 4, df4 - по конверсиям, df5 - для Страницы и экраны, df6 - для Целевая страница, df7 - для отчета по совершённым покупкам, а df8 - для демографических данных.

Измененные метрики в запросе и переменная df8

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df8 и запустите:

Результат выполнения запроса

9. Технические данные (Tech details)

Отчет Технические данные (Tech details) позволяет узнать, какими технологиями пользуются посетители вашего сайта и пользователи приложения (например, каковы разрешения их экранов, версии браузеров, приложений и операционных систем).

Параметры в отчете:

  • Браузер (название в API - browser)
  • Тип устройства (название в API - deviceCategory)
  • Модель устройства (название в API - deviceModel)
  • Разрешение экрана (название в API - screenResolution)
  • Версия приложения (название в API - appVersion)
  • Платформа (название в API - platform)
  • Версия ОС (название в API - operatingSystemVersion)
  • Платформа/тип устройства (название в API - platformDeviceCategory)
  • Операционная система (название в API - operatingSystem)
  • ОС и ее версия (название в API - operatingSystemWithVersion)

Показатели в отчете:

  • Пользователи (название в API - activeUsers)
  • Новые пользователи (название в API - newUsers)
  • Сеансы с взаимодействием (название в API - engagedSessions)
  • Доля взаимодействия (название в API - engagementRate)
  • Сеансов с взаимодействием на пользователя (такой показатель в данный момент в API недоступен)
  • Среднее время взаимодействия (такой показатель в данный момент в API недоступен)
  • Количество событий (название в API - eventCount)
  • Конверсии (название в API - conversions)
  • Общий доход (название в API - totalRevenue)

Сам отчет выглядит следующим образом:

Отчет "Технические данные"

Скопируйте код от предыдущего запроса в новую ячейку и измените параметры и показатели в ней. При желании вы можете изменить название переменной d8 на df9, поскольку это уже пятый отчет в текущей программе. Если вы оставите предыдущее значение, то данные в датафрейме перезапишутся на новые. Если переименуется, то df будет возвращать результат для отчета Источники трафика, df2 - для Привлечение трафика, df3 - для отчета событиям Google Analytics 4, df4 - по конверсиям, df5 - для Страницы и экраны, df6 - для Целевая страница, df7 - для отчета по совершённым покупкам, df8 - для демографических данных, а df9 - для технических данных пользователей.

Измененные метрики в запросе и переменная df9

После всех изменений так же запустите ячейку. Код должен сработать без ошибок. А для получения итогового результата в новом датафрейме просто создайте новую ячейку, введите в нее df9 и запустите:

Результат выполнения запроса

Исходник программы

Как и обещал, в конце руководства прикладываю ссылку на проект в Colab. Эту программу вы можете взять за основу при написании своих собственных запросов к ресурсу Google Analytics 4.

ПОСМОТРЕТЬ ПРОГРАММУ

Получайте бесплатные уроки и фишки

По контекстной, таргетированной рекламе и аналитике