что такое user id в google analytics
User ID в Google Analytics
Для связывания разных устройств одного пользователя в Google Analytics существует функция User ID. Она позволяет объединить различные сеансы и действия во время этих сеансов с уникальным идентификатором. Это отслеживание еще называют кросс-девайсным.
Например, сначала человек зашел к нам на сайт из дома с персонального компьютера, потом в течение дня на работе посещал интернет-магазин с телефона, а вечером по приезду домой оформил покупку с ноутбука.
С помощью кросс-девайс отслеживания (функции User ID) мы можем связать всего его посещения воедино, при условии, что пользователь на всех трех устройствах был идентифицирован нашей CRM-системой или CMS-движком. Это позволит оценить какие посетители конвертируются лучше всего: те, кто используют только десктопы, только мобильные или оба типа устройств.
Пример Client ID и User ID
Самым простым примером определения юзера – это личный кабинет, его аккаунт на сайте. Если у вас нет возможности в рамках своего проекта определить пользователя путем его идентификации через учетную запись или авторизацию через социальные сети (это не предусмотрено функционалом сайта), то и User ID настраивать большого смысла нет.
В отличие от Client ID, который задается на стороне системы, значение User ID мы назначаем и передаем в Google Analytics самостоятельно. Он должен быть сгенерирован на сайте системой аутентификации пользователей с помощь логина, под которым он заходит. Отсюда вывод: то, что представлено в справке разработчика в виде примеров кода при полном копировании на свой сайт работать не будет!
Чтобы активировать User ID в Google Analytics, необходимо:
Переходим в Analytics и в колонке Ресурс выбираем «Код отслеживания – User-ID»:
Принимаем правила в отношении User-ID, переключаем ползунок в позицию «Вкл.» и нажимаем Далее:
Принимаем правила в отношении User-ID
На следующем шаге приведен пример классического кода для Universal Analytics (библиотеки analytics.js) и глобального тега Global Site Tag (библиотеки gtag.js).
Примеры кодов отслеживания Universal Analytics и Global Site Tag
На последнем шаге создаем новое представление User ID, введя его название и указав часовой пояс.
Создание представления User-ID
В этом представлении будут отображаться данные о сеансах, в которых был обнаружен идентификатор пользователя.
Передачу собственных uid с вашего сайта можно осуществить несколькими способами:
Рассмотрим первый способ. Задайте User ID в коде отслеживания:
Пример кода, который необходимо вставить на страницу отслеживания
В gtag.js код отслеживания выглядит следующим образом:
Для передачи данных User ID в отчеты Google Analytics необходимо создать специальный параметр (custom dimension) с областью действия «Пользователь». Подробнее об этом читайте в разделе «Пользовательские определения».
Создание пользовательского параметра
Вместо dimensionValue передается значение переменной USER_ID. Если пользователь авторизуется на сайте, то в параметр uid в Google Analytics отправится ID пользователя.
ga (‘set’, ‘dimension1’, userId);
Примечание: индекс специального параметра (dimension1) у вас может быть другим. Ни в коем случае не изменяйте его.
В результате проделанной работы в стандартном представлении в отчетах «Аудитория – Поведение» станет доступен отчет «Охват User ID».
В данном отчете мы можем сравнить сегменты авторизованных и не авторизованных пользователей, посмотреть транзакции, источники, проанализировать доходность этих сегментов.
Unassigned – неавторизованные, Assigned – авторизованные пользователи
В новом представлении User ID станет доступен раздел «Разные устройства», в котором содержится три отчета:
Отчеты «Разные устройства» в представлении User ID
Пересечение устройств
Данный отчет позволяет узнать, сколько различных типов устройств применяют пользователи при взаимодействии с вашим сайтом и в каком соотношении.
Также при помощи этого отчета можно объединить пользователей по типам используемых устройств и сравнить показатели эффективности для каждого типа. Например, может оказаться, что мобильные пользователи приносят меньший доход, чем пользователи, заходившие с нескольких устройств.
Пути устройств
В отчете мы можем увидеть цепочки переходов, которые используют пользователи сайта. Эти данные пригодятся для оптимизации стратегии таргетинга рекламных объявлений на пользователей устройств соответствующего типа.
С помощью этого отчета вы можете узнать, сколько привлеченных вами пользователей с помощью конкретного типа устройства совершили конверсию на устройстве того же или другого типа.
Очень полезным отчетом для анализа поведения отдельных пользователей является «Статистика по пользователям», который находится в разделе «Аудитория». Для сбора информации применяется идентификатор клиента (Client ID) или пользователя (User ID). Принцип работы с этим отчетом разбирается в главе «Отчеты – Аудитории».
Таким образом, имея идентификатор пользователя User ID из CRM или CMS-сайта в Google Analytics, по дополнительному параметру мы можем легко определить все данные по конкретному клиенту: как его зовут, какого числа он заходил на сайт и что конкретно он купил.
Как настроить User ID в Google Analytics?
Не секрет, что для посещения сайтов, люди уже давно не ограничиваются одним устройством. Часто человек может выбирать какой-то товар со смартфона по пути на работу, потом в офисе зайти на сайт со стационарного компьютера, чтобы продолжить выбор, а заказ совершить на следующий день с домашнего ноутбука.
Если мы попытаемся отследить подобную цепочку взаимодействий пользователя с нашим сайтом через Google Analytics, то у нас ничего не получится.
А все потому, что GA будет считать посещения с трех различных устройств, посещениями трех разных уникальных пользователей (подробнее читайте в статье «Что такое Client ID»).
Для связывания всех устройств одного пользователя в Google Analytics существует функция User ID, которая позволяет объединить различные сеансы и действия во время этих сеансов с уникальным идентификатором.
На картинке ниже раскрыта вся суть работы User ID.
Надеюсь суть ясна, теперь подробнее о настройке.
Настройка User ID в аккаунте Google Analytics
Выполните следующие действия:
Шаг 1
На данном шаге вы активируете соответствующую функцию для аккаунта.
Шаг 2
На данном шаге приведен пример кода для передачи значения User-ID в Google Analytics, подробнее о том, как это правильно сделать, я расскажу ниже.
Шаг 3
На завершающем шаге вы создаете отдельное представление с User ID.
В этом представлении будут отображаться данные о сеансах, в которых был обнаружен идентификатор пользователя. Информацию об остальных сеансах смотрите в отдельном представлении без функции User ID.
Настройка кода для передачи USER ID
Перед настройкой кода необходимо определиться с тем как отправлять User ID в Google Analytics и откуда его собственно брать.
Отправка с помощью кода отслеживания Google Analytics
Важно! Значением User_ID должен быть уникальный идентификатор пользователя.
Пример реализации на PHP из хелпа Google:
Отправка с помощью Google Tag Manager
Переменная <
Откуда брать значения для User ID
Вот мы и подошли к самому интересному пункту, который другие авторы в своих статьях чаще всего опускают со словами:
Я не такой как остальные и все вам расскажу 😉
Разместим следующий код в шапке основного шаблона вашего сайта:
Важно! Правила Google Analytics требуют прекратить отслеживание User ID после выхода пользователя с сайта. В этом случае вам нужно будет сбросить User ID.
В моем коде это правило не соблюдается, так что думайте сами рисковать или нет. Чтобы правило соблюдалось, нужно убрать проверку авторизации и тогда при выходе пользователя кука перезапишется на пустое значение.
Далее проверим через консоль, что кука передается:
После идем в Tag Manager и настраиваем переменную:
И обновляем настройки тега Universal Analytics. Передавать значение будем и в User ID и в пользовательский параметр (как создать пользовательский параметр), который в будущем можно будет использовать в отчетах:
Тестируем при помощи предварительного просмотра GTM правильность передачи пользовательского параметра:
Кросс-девайсные отчеты
После реализации всех настроек в Google Analytics станут доступны несколько отчетов.
Охват User ID
В любом стандартном представлении, в группе отчетов «Аудитория» > «Поведение» станет доступен отчет по доле пользователей, которым был присвоен User ID. В данном отчете мы можем сравнить сегменты авторизованных и не авторизованных пользователей, посмотреть транзакции, источники, проанализировать доходность этих сегментов.
Пересечение устройств
Данный отчет позволяет узнать, сколько различных типов устройств применяют пользователи при взаимодействии с вашим сайтом и в каком соотношении.
Также при помощи этого отчета можно объединить пользователей по типам используемых устройств и сравнить показатели эффективности для каждого типа. Например, может оказаться, что мобильные пользователи приносят меньший доход, чем пользователи заходившие с нескольких устройств.
Пути устройств
В данном отчете мы можем увидеть цепочки переходов, которые используют пользователи сайта. Также как и в предыдущем отчете, можно посмотреть транзакции и доходность по каждой из цепочек.
Эти данные пригодятся для оптимизации стратегии таргетинга рекламных объявлений на пользователей устройств соответствующего типа.
Устройство, на котором произошла конверсия
С помощью этого отчета вы можете узнать, сколько привлеченных вами пользователей с помощью конкретного типа устройства совершили конверсию на устройстве того же или другого типа.
Идентификация конкретного пользователя
И напоследок самое важное! То, что приближает нас к сквозной аналитике, а именно идентификация конкретного пользователя.
Напоминаю, что в Google Analytics запрещено загружать персональную информацию (подробнее от ограничениях GA). Однако, никто не запрещает загружать ID клиента из вашей CRM-системы или админки сайта (в моем кейсе это ID пользователя 1С Битрикс).
Соответственно, имея идентификатор пользователя из CRM в Google Analytics, мы можем с точностью сказать что:
Настройка User ID с помощью Google Tag Manager
Материал по настройке отслеживания User ID для Google Analytics (Universal Analytics) и Яндекс.Метрики с помощью Google Tag Manager.
Для связывания разных устройств одного пользователя в Google Analytics существует функция User ID (не путать с Client ID!). Она позволяет объединить различные сеансы и действия во время этих сеансов с уникальным идентификатором. Это отслеживание еще называют кросс-девайсным.
Например, сначала человек зашел к нам на сайт из дома с персонального компьютера, потом в течение дня на работе посещал интернет-магазин с телефона, а вечером по приезду домой оформил покупку с ноутбука.
С помощью кросс-девайс отслеживания (функции User ID) мы можем связать всего его посещения воедино, при условии, что пользователь на всех трех устройствах был идентифицирован нашей CRM-системой или CMS-движком. Это позволит оценить какие посетители конвертируются лучше всего: те, кто используют только десктопы, только мобильные или оба типа устройств.
Схема работы Client ID и User ID
В основе этой модели лежит идентификация пользователя через его профиль, личный кабинет. Мы, как владельцы ресурса, побуждаем человека зарегистрироваться на нашем сайте, создать свой профиль, а все дальнейшие действия (просмотры страниц, оформление покупок и т.д.) просим выполнять через свою учетную запись. Таким образом, когда пользователь заходит на сайт, его данные сохраняются в базе и отправляются на сервер, чтобы в дальнейшем использовать их для сопоставления заходов на различных устройствах и браузерах.
Классический пример такого подхода – социальная сеть. Когда вы впервые зарегистрировались, например, ВКонтакте, вам присвоили уникальный ID учетной записи.
ID профиля ВКонтакте – наглядный пример User ID
С этого момента, чтобы вы не делали (смотрели видео, искали группы, добавляли в друзья, писали сообщения) – все эти действия будут связаны с вашим профилем. А поскольку вы регистрировались через телефон или e-mail (да еще и вводили все данные в настройках), у администрации социальной сети есть полный набор ваших данных. А если еще и включена функция геолокации, то они не только знают о вас все, но и могут отследить ваше местонахождение в любой момент времени. И уже абсолютно не имеет никакого значения, с какого устройства вы заходите и с какого браузера, главное – вы под своей учетной записью.
Если у вас нет возможности в рамках своего проекта определить пользователя путем его идентификации через учетную запись или авторизацию через социальные сети (это не предусмотрено функционалом сайта), то и User ID настраивать большого смысла нет. Системы веб-аналитики сами умеют отслеживать взаимодействия пользователей на различных устройствах с помощью встроенных алгоритмов.
В 2018 году Google добавил функцию Google Signals, которая позволяет на основе агрегированных данных о пользователях, включивших Персонализацию рекламы, создавать общую модель поведения на нескольких устройствах. При этом учитываются данные о пользователях, а не о сеансах. Для создания модели поведения не требуется представления User ID. А в середине 2017 года Яндекс запустил свою бета версию отчета Кросс-девайс, в котором отображается статистика по конверсиям клиентов, которые заходили на сайт с нескольких устройств.
В отличие от Client ID, который задается на стороне системы, значение User ID мы назначаем и передаем в Google Analytics самостоятельно. Он должен быть сгенерирован на сайте системой аутентификации пользователей с помощь логина, под которым он заходит. Отсюда вывод: то, что представлено в справке разработчика в виде примеров кода при полном копировании на свой сайт работать не будет!
Чтобы активировать User ID в Google Analytics, необходимо:
Переходим в Universal Analytics и в колонке Ресурс выбираем Отслеживание – User-ID:
Ресурс – Отслеживание – User-ID
Принимаем правила в отношении User-ID, переключаем ползунок в позицию «Вкл.» и нажмите Далее:
Правила в отношении User-ID
На следующем шаге приведен пример классического кода для Universal Analytics (библиотеки analytics.js) и глобального тега Global Site Tag (библиотеки gtag.js).
Примеры кодов отслеживания Universal Analytics и Global Site Tag
На последнем шаге создаем новое представление User ID, введя его название и указав часовой пояс.
Создание представления User-ID
В этом представлении будут отображаться данные о сеансах, в которых был обнаружен идентификатор пользователя.
Передачу собственных uid с вашего сайта можно осуществить несколькими способами:
Это относится и к User ID. Например, можно попробовать извлечь значение идентификатора пользователя с помощью переменной Элемент DOM, или из cookie, при условии, что такая кука установлена на сайте и в нее передается значение User ID пользователя. А можно привлечь разработчика, чтобы он написал функцию, которая бы возвращала ID текущего авторизованного пользователя.
Существуют разные варианты отслеживания. Все зависит от веб-сайта, с которым вы работаете, команды, возможностей вашего заказчика и ряда других факторов. Описанный ниже способ является наиболее предпочтительным, универсальным и надежным.
Попросите разработчика передать идентификатор пользователя на уровень данных, взяв за основу нижеприведенный код:
, где ID пользователя на сайте означает функцию, возвращающую ID залогинненого пользователя.
Желательно, чтобы этот код был размещен над контейнером Google Tag Manager, чтобы его можно было использовать с триггером Просмотр страницы. Вот так выглядит проверка (залогинен ли пользователь?) для интернет-магазина на платформе OpenCart:
Пример проверки авторизации на сайте
А сам уровень данных выглядит вот так:
Пример уровня данных для User ID
, где в <
Схематично всю работу можно представить так:
Разработчик на сайте формирует уровень данных, который вы отобразили в ТЗ. В Google Analytics вы включаете создаете новое представление User-ID и с помощью диспетчера тегов Google создаете необходимые сущности (переменные, триггеры и теги) для передачи данных об идентификаторе пользователя. И когда ваша работа, и работа программиста будет завершена, вы проверяете корректность передачи данных в Яндекс.Метрику, Google Analytics и другие аналитические сервисы. Если что-то не работает, совместными усилиями ищете причину и устраняете ошибки.
Проверка в режиме предварительного просмотра
На рисунке выше срабатывает событие userId после загрузки контейнера Container Loaded (gtm.js). Это означает, что в если мы будем использовать стандартный тег Google Analytics с триггером All Pages (Все страницы), то переменная userId не будет еще определена, и вместо значения ID пользователя ей будет присвоено undefined, а значение User ID не будет передано в Google Analytics:
userId сработал после Container Loaded, поэтому переменная еще не определена (undefined)
Тогда для запуска тега вы можете воспользоваться триггером Модель DOM готова или Окно загружено, либо же попросить разработчика разместить код с User ID над контейнером Google Tag Manager, как можно ближе к тегу . В этом случае событие userId сработает до загрузки контейнера Container Loaded и в поле, которое необходимо задать, передастся идентификатор пользователя, который он имеет на нашем сайте:
userId сработал до Container Loaded, поэтому переменная определена и имеет корректное значение
Для того, чтобы это реализовать, сначала в диспетчере тегов Google следует создать переменную уровня данных. Имя переменной вводите такое же, как и в коде уровня данных, который вы отправляли разработчику (не путать с названием события!):
Пример переменной уровня данных
Не забывайте про правила использования функции User ID в Google Analytics, а именно:
Нарушение этих правил может привести к прекращению действия вашего аккаунта Google Аналитики и потере данных. Подробнее о правилах использования читайте в официальной документации Google.
Другими словами: если на ваш сайт заходят пользователи из стран, входящих в Европейскй союз, и вы планируете хранить их идентификаторы в файле cookie и отслеживать даже неаутентифицированных пользователей с идентификатором, то вам необходимо получить их согласие (General Data Protection Regulation, GDPR), а также обсудить все отслеживания с юридическим отделом и действующим законодательством тех стран, жители которых посещают ваш сайт.
Теперь необходимо передать User ID при каждом обращении Google Analytics. Чтобы не обновлять каждый тег вручную, откройте переменную типа Настройки Google Analytics и в разделе Дополнительные настройки – Поля, которые необходимо задайте userId и укажите в Название поля – userId, а в Значение добавьте переменную уровню данных, которую создали на предыдущем шаге:
Так нужно делать для того, чтобы видеть все обращения (события, просмотры страниц и т.д.) в отдельном представлении Google Analytics (User-ID). Поэтому мы настраиваем идентификатор пользователя Google Analytics на уровне переменной Настройки Google Analytics, а не только в теге просмотра страницы Google Analytics. В этом случае было бы достаточно этого:
Можно пойти еще дальше и передать User ID в Google Analytics в качестве специального параметра. Для этого перейдите на уровне ресурса в раздел Пользовательские определения – Специальные параметры и нажмите + СПЕЦИАЛЬНЫЙ ПАРАМЕТР:
Создание специального параметра
Введите название пользовательского параметра, выберите Область действия – Пользователь, оставьте галочку Активная и нажмите Создать:
Настройка специального параметра User ID
Запомните индекс пользовательского параметра (в моем примере – 1):
Индекс специального параметра
Вернитесь в тег Google Analytics / переменную Настройки Google Analytics и в разделе Дополнительные настройки – Специальные параметры задайте Индекс и укажите Значение параметра:
Передача специального параметра в теге или переменной Настройки Google Analytics
Сохраните настройки. Проверить корректность передачи данных можно с помощью расширений для браузера Google Chrome Google Tag Assistant, GA Debugger и других.
Определение User ID в Google Tag Assistant
А кликнув на Pageview Requests и перейдя на вкладку Custom Metrics, мы можем посмотреть, верно ли передается специальный параметр, который мы создали:
Вкладка Custom Metrics
Для отправки идентификатора пользователя в Яндекс.Метрику используйте метод userParams, который позволяет передавать произвольные параметры посетителей сайта, и параметр UserID. Пример конструкции выглядит так: