Показатель "Новые пользователи (New Users)" в Google Analytics 4
Новые пользователи (New Users) в Google Analytics 4 - пользователи, которые впервые взаимодействовали с вашим сайтом или мобильным приложением (у которых ранее не было сеансов).
Обновление: в феврале 2022 года я выпустил электронное руководство по Google Analytics 4. Бесплатно скачать его можно в формате .PDF по ссылке.
Общие сведения
Фактически, это означает, что новым пользователем за выбранный диапазон дат в GA4 считается тот посетитель вашего сайта, у которого номер сеанса (параметр ga_session_number) равен 1.
Когда начинается сеанс, Google автоматически регистрирует событие session_start. Затем через это событие session_start создаются идентификатор сессии (ga_session_id) и номер сеанса (ga_session_number).
А поскольку номер сеанса равен 1 (ga_session_number = 1), то это означает, что пользователь на ваш сайт зашел впервые. А раз он зашел впервые, значит GA4 зарегистрирует событие first_visit. Получается, что показатель Новые пользователи (New Users) измеряется количеством (суммой) новых уникальных идентификаторов пользователей, создаваемых в первый заход на ваш сайт в момент регистрации события first_visit (для мобильных приложений - first_open).
Под уникальными идентификаторами пользователей подразумевается идентификатор/код устройства (Client ID), основанный на отслеживании файлов cookie Google Analytics, а также идентификатор пользователя (User ID), если вы его настроили для своего проекта. Можно перефразировать и по-другому: пользователь является новым, пока он не совершил повторного сеанса.
Новые пользователи (New Users) является частью показателей, относящихся к разделу Пользователь (User).
В отчетах Google Analytics 4
Данную метрику вы можете найти в отчете Источник трафика - Источники трафика:
В Исследовании в свободной форме этот показатель можно импортировать из раздела Пользователь (User):
А затем добавить выбранный показатель на холст:
Как видите, для новых пользователей регистрируется только событие first_visit. Если в Исследовании выбрать параметр Группа каналов по умолчанию, связанная с первым взаимодействием пользователя (такой же, как в стандартном отчете Источник трафика - Источники трафика), то вы увидите достаточно схожие данные:
Google Analytics 4 допускает расхождение данных между отчетами и Исследованиями. О том, почему это может происходить, читайте в официальной справке Google.
Сравнение с Universal Analytics
Если вы перейдете в официальную справку Google и посмотрите на сравнение показателей в Google Analytics 4 и Universal Analytics, то увидите, что в Universal Analytics существует два пользовательских показателя: Всего пользователей (Users) и Новые пользователи (New Users), а в GA 4 - три:
- Всего пользователей (Total Users)
- Активные пользователи (Active Users)
- Новые пользователи (New Users)
И в документации представлена сравнительная таблица, а также сопоставление этих метрик друг с другом:
Новые пользователи в Universal Analytics - количество пользователей, которые взаимодействовали с вашим сайтом в первый раз.
С установленным счетчиком Google Analytics пользователям, которые посещают ваш сайт впервые, в браузере создается файл cookie с именем _ga, позволяющий различать посетителей. Если у пользователя еще нет файла cookie и он заходит на сайт в первый раз, то с точки зрения аналитики он - новый пользователь. Если у него уже есть файл cookie, полученный во время предыдущего посещения, посетитель будет классифицирован как вернувшийся пользователь.
- если файл cookie отсутствует, Google создает его и считает пользователя новым;
- если файл cookie присутствует, Google считает его вернувшимся пользователем и начинает новый сеанс.
Все пользователи, которые не являются вернувшимися пользователями, являются новыми пользователями. Но самое интересное, что пользователь в течение дня в GA3 может быть как новым, так и вернувшимся. Как такое возможно? Если он зайдет впервые, то будет создан файл cookie и зафиксирован первый сеанс. Однако чуть позже (в тот же день) он может зайти на сайт повторно. В этом случае файл куки у пользователя уже есть, поэтому для Google Analytics он будет являться не новым, а уже вернувшимся. И тогда просто будет создан новый сеанс (второй, третий и т.д.).
Это наглядно видно в отчете Аудитория - Поведение - Новые и вернувшиеся:
В этом отчете visitor и пользователь используются как синонимы. Однако сумма новых и вернувшихся пользователей (11 896 + 4 410) не совпадает с общим количеством пользователей над таблицей (14 352). Это как раз связано с тем, что один пользователь может посещать ваш сайт несколько раз в течение отчетного периода, и тогда статистика ему запишется как для нового пользователя (при первом посещении), так и при повторном его заходе (при любом последующем посещении).
Данный расчет можно проверить и по-другому, изначально настроив отслеживание Client ID в качестве специального параметра Universal Analytics. Например, рассмотрим пользователя с идентификатором клиента 1276628271.1672700960, который 3 января 2023 года зашел на мой сайт впервые, а на следующий день 4 января вернулся на него повторно. С точки зрения аналитики 3 января этот пользователь будет считаться новым, а 4 января - уже вернувшимся. Если построить отчет по каждому из дней, то так и будет:
3 января - новый пользователь и тип пользователя - New Visitor:
4 января - вернувшийся пользователь и тип пользователя - Returning Visitor:
Но если строить отчет за 3-4 января, то несмотря на то, что пользователь будет считаться как новым, так и вернувшимся, в строке Итого в Universal Analytics он будет считаться как 1, поскольку данный показатель ориентируется на Client ID, а он у посетителя один и тот же во всех его сеансах:
В Universal Analytics показатель Новые пользователи также доступен для анализа во многих других отчетах. Например, в разделе Аудитория или в разделе Источник трафика:
Запрос в Google BigQuery
Если вы хотите составить SQL-запрос для показателя Новые пользователи (New Users) в Google BigQuery, то используя нижеприведенную конструкцию, вы получите нужный результат (при условии, что вы изначально настроили связь Google Analytics 4 и Google BigQuery для своего проекта).
Для конкретной даты:
1 2 3 4 |
SELECT COUNT(DISTINCT CASE WHEN (SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'ga_session_number') = 1 THEN user_pseudo_id ELSE NULL END) as new_users FROM `osipenkovru-373609.analytics_206854065.events_20230103` |
, где:
- osipenkovru-373609 - ваш проект в Google Cloud;
- analytics_206854065 - ваш набор данных (датасет);
- events_20230103 - название таблицы с данными за конкретный день (в моем примере - 3 января 2023 года).
В Google BigQuery это будет выглядеть так:
Для диапазона дат в BigQuery запрос выглядит несколько иначе:
1 2 3 4 5 6 |
SELECT COUNT(DISTINCT CASE WHEN (SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'ga_session_number') = 1 THEN user_pseudo_id ELSE NULL END) as new_users FROM `osipenkovru-373609.analytics_206854065.events_*` WHERE _TABLE_SUFFIX BETWEEN '20230103' AND '20230110' |
, где:
- osipenkovru-373609 - ваш проект в Google Cloud;
- analytics_206854065 - ваш набор данных (датасет);
- events_* - обязательный формат написания (со звездочкой *), чтобы следующей строкой в _TABLE_SUFFIX вы смогли задать статический диапазон дат (дату от и дату до);
- '20230103' - начальная дата;
- '20230110' - конечная дата.
В Google BigQuery это будет выглядеть так:
Google Analytics не экспортирует в BigQuery данные, связанные с сигналами Google (Google Signals), поэтому количество событий в GA4 и в BigQuery может быть разным. Вы также можете заметить разницу в количестве активных пользователей между Google Analytics 4 и BigQuery. Это связано с тем, что сигналы Google используют дедупликацию полученных данных о событиях. Подробнее об этом читайте в официальной документации Google.
Другими словами, данные в BigQuery, в стандартных отчетах и Исследованиях Google Analytics 4 могут различаться.
Запрос через Google Analytics Data API
Если вы используете Google Analytics Data API, то выгрузить данные можно с помощью такого запроса и языка программирования Python. API name показателя - newUsers:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
from google.analytics.data_v1beta import BetaAnalyticsDataClient from google.analytics.data_v1beta.types import ( DateRange, Dimension, Metric, RunReportRequest, ) def sample_run_report(property_id="206854065"): client = BetaAnalyticsDataClient() request = RunReportRequest( property=f"properties/{property_id}", metrics=[Metric(name="newUsers")], date_ranges=[DateRange(start_date="2023-01-03", end_date="2023-01-10")], ) response = client.run_report(request) print("Новых пользователей (New Users):") for row in response.rows: print(row.metric_values[0].value) if __name__ == "__main__": sample_run_report() |
, где в строке property_id="206854065" задается собственный идентификатор ресурса GA4.
Результат выполнения программы в Colab (Google Colaboratory):
Полный список параметров и показателей Google Analytics 4, на которые я сделал подробный разбор, представлен здесь.
Полезные ссылки: