Google Analytics: что такое Client-ID и User-ID и как с ними работать

Client-ID и User-ID в Google Analytics 4 — два разных идентификатора для отслеживания пользователей. Client-ID генерируется автоматически и хранится в cookie, User-ID вы назначаете сами для авторизованных пользователей — он позволяет отслеживать их на разных устройствах.
Что такое Client-ID в Google Analytics 4
Client-ID — уникальный анонимный идентификатор, который Google Analytics 4 автоматически присваивает каждому браузеру или устройству при первом посещении сайта. Он хранится в cookie _ga и позволяет GA4 распознавать повторные сессии одного и того же пользователя.
Формат Client-ID выглядит так: GA1.1.1234567890.1717123456, где:
GA1.1— версия cookie и уровень домена1234567890— случайный уникальный номер1717123456— Unix timestamp первого посещения
Главная особенность Client-ID: он привязан к браузеру, а не к человеку. Если один и тот же пользователь откроет сайт в Chrome и Firefox — GA4 увидит двух разных пользователей. Если он очистит cookies — идентификатор сбросится и GA4 снова увидит «нового» посетителя.
Где хранится Client-ID
Client-ID хранится в браузерном cookie _ga со сроком хранения 13 месяцев по умолчанию. Вы можете проверить его в DevTools браузера: вкладка Application → Storage → Cookies → найдите _ga на вашем домене.
Важно понимать: Client-ID является анонимным идентификатором. Google Analytics не хранит IP-адреса, имена или персональные данные — только этот случайный номер для различения сессий.
Как получить Client-ID через JavaScript
Если вам нужно передать Client-ID в CRM, форму заказа или Measurement Protocol, вот как его получить:
// Способ 1: через gtag
gtag('get', 'G-XXXXXXXXXX', 'client_id', (clientId) => {
console.log('Client-ID:', clientId);
// Передайте clientId в свою CRM или форму
});
// Способ 2: чтение напрямую из cookie _ga
function getGAClientId() {
const match = document.cookie.match(/_ga=GA\d+\.\d+\.(\d+\.\d+)/);
return match ? match[1] : null;
}
console.log(getGAClientId());Полученный Client-ID можно вставить в скрытое поле формы, чтобы потом сопоставить конверсию в GA4 с обращением в CRM — это один из наиболее распространённых практических случаев использования.
Что такое User-ID в Google Analytics 4
User-ID — идентификатор, который вы самостоятельно назначаете авторизованным пользователям на своём сайте или в приложении. В отличие от Client-ID, User-ID не генерируется автоматически — вы передаёте его в GA4 через код отслеживания.
User-ID обычно соответствует ID пользователя в вашей базе данных (например: user_12345 или хеш email-адреса). Это позволяет GA4 объединять сессии одного авторизованного пользователя, даже если он заходит с разных устройств или браузеров.
Для чего нужен User-ID
User-ID решает главную проблему Client-ID — межустройственное отслеживание. Рассмотрим пример:
- Пользователь заходит на сайт с мобильного телефона и просматривает товары
- На следующий день он открывает ноутбук и завершает покупку
- Без User-ID: GA4 видит двух разных пользователей и один незавершённый путь
- С User-ID: GA4 понимает, что это один и тот же человек — вы видите полный путь конверсии
Client-ID против User-ID: ключевые отличия
Разберём основные отличия между двумя типами идентификаторов:

| Параметр | Client-ID | User-ID |
|---|---|---|
| Генерация | Автоматически (GA4) | Вручную (ваш сервер/код) |
| Привязка | К браузеру / устройству | К авторизованному пользователю |
| Межустройственное отслеживание | Нет | Да |
| Анонимность | Да (случайный UUID) | Зависит от вас (не передавать PII) |
| Хранится в | Cookie _ga | Параметр события user_id |
| Сбрасывается при | Очистке cookies | Выходе из системы |
Как настроить User-ID в GA4: пошаговая инструкция
Настройка User-ID состоит из двух частей: включение в GA4 Admin и передача идентификатора через код.
Шаг 1: Включите User-ID в настройках GA4
- Откройте GA4 → Admin (шестерёнка внизу слева)
- В разделе Property выберите Reporting Identity
- Убедитесь, что активирована опция Blended или Observed (User-ID + Device-based)
- Сохраните настройки
Шаг 2: Передайте User-ID через gtag.js
Если вы используете gtag.js напрямую, добавьте user_id в конфигурацию:
// При инициализации GA4 (для авторизованных пользователей)
gtag('config', 'G-XXXXXXXXXX', {
'user_id': '{{ server_generated_user_id }}'
});
// Или передайте user_id в конкретном событии
gtag('event', 'purchase', {
'user_id': '{{ server_generated_user_id }}',
'transaction_id': 'T-12345',
'value': 1200
});Шаг 3: Настройка через Google Tag Manager
- В GTM откройте тег GA4 Configuration
- В разделе Fields to Set добавьте поле
user_id - В качестве значения укажите переменную Data Layer, содержащую ID авторизованного пользователя
- Убедитесь, что ваш сайт пушит
userIdв DataLayer при логине
// Push в DataLayer при успешном логине
dataLayer.push({
'event': 'user_logged_in',
'userId': '12345' // ID из вашей базы данных (не email!)
});Важно: не передавайте персональные данные как User-ID
Правила Google Analytics запрещают передавать в качестве User-ID персональные данные, идентифицирующие личность: email-адреса, имена, телефоны. Используйте только внутренние числовые или хеш-идентификаторы вашей системы.
Как просмотреть Client-ID и User-ID в отчётах GA4
После настройки вы можете найти идентификаторы в нескольких местах GA4:
User Explorer (Проводник пользователей)
- GA4 → Explore (Исследования)
- Выберите шаблон User explorer
- В таблице отображаются
Client IDиUser ID(если настроен) - Нажмите на любую строку, чтобы просмотреть полный путь конкретного пользователя
DebugView для тестирования
Во время разработки включите режим debug_mode и проверьте в GA4 → Admin → DebugView, что user_id передаётся правильно в параметрах каждого события.
Практическое применение: Measurement Protocol с Client-ID
Один из важнейших практических кейсов — использование Client-ID в Measurement Protocol для отслеживания конверсий, происходящих вне браузера (например, подтверждение оплаты на сервере).
# Python пример: отправка конверсии через Measurement Protocol
import requests
measurement_id = "G-XXXXXXXXXX"
api_secret = "ваш_api_secret"
payload = {
"client_id": "1234567890.1717123456", # Client-ID из cookie _ga
"events": [{
"name": "purchase",
"params": {
"transaction_id": "T-67890",
"value": 2500,
"currency": "UAH"
}
}]
}
response = requests.post(
f"https://www.google-analytics.com/mp/collect?measurement_id={measurement_id}&api_secret={api_secret}",
json=payload
)
print(response.status_code) # 204 = успешноReporting Identity: как GA4 объединяет данные
GA4 использует три уровня идентификации (в порядке приоритета):
- User-ID — если передаётся, имеет наивысший приоритет
- Google Signals — если активированы, GA4 использует данные авторизованных аккаунтов Google
- Client-ID — базовый уровень, всегда присутствует
Настройка Reporting Identity → Blended означает, что GA4 автоматически выбирает наилучший доступный метод идентификации для каждого отчёта.

GDPR и конфиденциальность: что нужно знать
Client-ID является псевдонимизированным идентификатором — по нему можно отслеживать поведение браузера, но нельзя напрямую идентифицировать конкретную личность. Тем не менее по GDPR он всё равно считается персональными данными, поскольку позволяет формировать профиль.
Практические шаги для соответствия GDPR:
- Запрашивайте согласие на аналитические cookies перед активацией GA4
- Активируйте Consent Mode v2 в GTM
- Не передавайте User-ID до получения согласия
- Укажите в Политике конфиденциальности, что вы используете GA4 и Client-ID
Часто задаваемые вопросы (FAQ)
Можно ли увидеть Client-ID в стандартных отчётах GA4?
Нет, Client-ID не отображается в стандартных отчётах. Чтобы его просмотреть, используйте GA4 Explorations → User Explorer. Стандартные отчёты показывают агрегированные данные, а не уровень отдельного пользователя.
Обязательно ли настраивать User-ID?
User-ID необязателен, но настоятельно рекомендуется для сайтов с авторизацией (интернет-магазины, SaaS, личные кабинеты). Без него вы не сможете увидеть реальный путь конверсии в многоустройственном сценарии.
Влияет ли блокировщик рекламы на Client-ID?
Да. uBlock Origin, Brave и другие блокировщики могут заблокировать GA4 полностью — cookie _ga не будет создан вообще. Для таких случаев рекомендуется настройка GA4 через серверный Measurement Protocol или Server-Side Tagging.
В чём разница между client_id и app_instance_id?
client_id используется для веб-сайтов; app_instance_id — для мобильных приложений Firebase/GA4. Оба выполняют одну и ту же функцию (идентификация устройства/браузера), но имеют разный формат и механизм генерации.
Как долго хранится Client-ID?
По умолчанию — 13 месяцев в cookie _ga. Этот срок обновляется при каждом новом посещении. Вы можете изменить срок хранения в GA4 Admin → Data Settings → Data Retention или через параметр cookie_expires в коде gtag.
Можно ли передавать Client-ID в Google Ads для атрибуции конверсий?
Да, через Enhanced Conversions или Measurement Protocol for Google Ads. Client-ID помогает правильно атрибутировать конверсии из рекламных кликов. Передавайте его вместе с gclid (Google Click ID) для наиболее точной атрибуции.
Что произойдёт, если User-ID не уникален?
Если несколько реальных людей получат одинаковый User-ID — GA4 объединит их данные в один профиль пользователя. Это исказит отчёты. Убедитесь, что ваша система присваивает уникальные ID каждому аккаунту.


