Изменение формата файлов cookie Google Analytics 4 с GS1 на GS2
В первую неделю мая Google изменил формат файлов cookie в Google Analytics 4, перейдя с традиционного варианта GS1 на GS2. В чем различия между этими форматами? Постараемся разобраться в этой статье.
Читайте вместе с этой публикацией:
- Cookie файлы в Google Analytics
- О том, какие файлы cookie использует Google
- Переопределение настроек файлов cookie в Google Analytics 4
- Файлы cookie и Google Tag Manager
Как вы знаете, файлы cookie применяются применяются в различных случаях, когда веб-сайту необходимо сохранить или обработать данные пользователя с целью улучшения его функциональности или последующего анализа статистики. Например:
- при сборе данных для инструментов веб-аналитики (Google Analytics 4, Яндекс Метрика и т.д.);
- при персонализации рекламы под запросы пользователей (всеми «нелюбимый» ретаргетинг / ремаркетинг в рекламе);
- для авторизации пользователей, предотвращения мошеннического использования учетных данных и защиты пользовательской информации от несанкционированного доступа;
- для хранения информации о предпочтениях пользователей на сайте, местоположении, языке интерфейса и т.д. и запоминания предыдущих действий (например, история просмотров);
- для улучшения функциональности сайта.
Сбор данных о посетителях на сайте с помощью Google Analytics 4 также основан на cookie. Теги JavaScript в GA4 используют собственные файлы cookie (first-party cookies) для идентификации уникальных пользователей и сеансов. После того, как вы установите счетчик, и пользователи начнут посещать ваш сайт, для каждого из них в браузере будут созданы следующие файлы cookie:
- _ga - основной cookie, который хранит уникальный идентификатор пользователя (Client ID) и позволяет различать пользователей (срок жизни - 2 года);
- _ga_<container-id> (с идентификатором потока данных) - используется для сохранения параметров сеанса, включая идентификатор и номер сеанса (срок жизни - 2 года).
Эти файлы cookie являются основой отслеживания в Google Analytics 4 и содержат ключевую информацию о пользователях и их взаимодействиях. Однако в последнее время многие браузеры накладывают строгие ограничения на срок службы файлов cookie (например - не более 400 дней в Chrome и 7 дней в Safari). Поэтому использование устаревших сведений о файлах cookie может привести к получению неточных и неполных данных в вашем ресурсе.
В начале мая 2025 года Google изменил формат своих файлов cookie с GS1 на GS2 без какого-либо предварительного уведомления. Новая версия используется GS2 для файлов cookie, связанных с сеансов, то есть для куки _ga_<container-id>, а не для исходного файла cookie _ga.
Что это означает? Если вы откроете консоль разработчика в своем браузере и перейдете на вкладку Application, а затем выберите раздел Cookies и найдете в таблице файл cookie _ga, то увидите как раз два файла cookies - _ga и _ga_<container-id>:
, где <container-id> - это идентификатор вашего потока данных в Google Analytics 4. Для моего сайта osipenkov.ru - это BMPB32GC7T:
На момент написания этого материала формат файла cookie _ga не изменился. Он все также является частью базовой системы Google Analytics еще со времен предыдущей версии Universal Analytics (устарел). Его формат (GA1.1 или GA1.2.xxx.xxx) остался без изменений, сохранилась обратная совместимость и продолжается поддержка отслеживаний таких идентификаторов пользователей (Client ID).
- GA1.1 - содержит номер версии/протокола Google Analytics. GA1 – стандартная версия;
- 1550910669 - уникальный id (unique id), сгенерированное число;
- 1697277011 - дата первого посещения пользователем сайта в Unix формате (количество секунд, прошедших с первого января 1970-ого года).
Поля 1550910669.1697277011 образуют уникальный идентификатор (Client ID) каждого пользователя. Он же Код устройства, Идентификатор клиента или Device ID.
Уникальный идентификатор пользователя (Client ID, идентификатор устройства) - это метка, состоящая из случайного числа и даты первого посещения пользователем сайта в Unix формате (количество секунд с 1 января 1970 года 00:00:00 UTC), которая сохраняется в основном файле cookie (_ga) в течение 2 лет (по умолчанию). Она создается сразу же после того, как посетитель впервые зайдет к вам на сайт.
В Google Analytics 4 этот файл cookie создается с автоматически регистрируемым событием first_visit. Client ID - один из тех параметров, который необходим для настройки сквозной аналитики. Он также необходим для передачи данных с помощью Measurement Protocol (офлайн-события). Помимо этого, в GA4 он является одним из способов идентификации и установления связи между событиями и пользователями.
Этот файл cookie используется на множестве сайтов по всеми миру и является основным механизмом идентификации пользователей. Никакой информации о том, будет ли он как-то изменен или упразднен в будущем, от Google пока нет. Но одно известно точно - изменение формата файла cookie _ga приведет к нарушению различных интеграций со сторонними платформами и плагинами, включая реализацию сквозной аналитики и связь данных с CRM-системой и рекламными сервисами, а также повлияет на настройки на стороне сервера и индивидуальные инструменты отслеживания.
А вот файл cookie _ga_<container-id> с начала мая 2025 года претерпел существенные изменения. Если раньше его формат выглядел так:
1 2 |
<span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">GS1.1.1747419839.369.1.1747425494.58.1.1677428722 </span></span></span></span> |
То теперь этот файл cookie в браузере имеет совершенно другой вид:
1 |
<span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">GS2.1.s1747419839$o369$g1$t1747425494$j58$l1$h1677428722$d-0IPI7efTTwZ0KcfzvmHQs8VW9ACm4Kpzg</span></span></span></span> |
Пример для моего сайта:
Оригинальный (=старый) формат этого файла cookie Google Analytics 4 использует простую структуру:
- в качестве разделителей везде используются точки .
- начинается с GS1 (Google Stream версии 1);
- значения находятся в фиксированных позициях без префиксов;
- каждая позиция имеет определенное значение.
Визуальная разбивка структуры старого файла cookie:
Новый формат имеет более гибкую структуру, в основе которые используются префиксные значения:
- используются знаки доллара ( $) в качестве разделителей после заголовка;
- начинается с GS2 (Google Stream версии 2);
- каждое значение имеет однобуквенный префикс-идентификатор;
- расширенный формат (поскольку нет фиксированных позиций, Google может в любой момент дополнить этот файл cookie новыми параметрами).
Визуальная разбивка структуры нового файла cookie:
Значения префиксов:
- s - Session ID (идентификатор сеанса);
- o - Session Number (номер сеанса);
- g - Session Engaged, 0/1 (сеанс с взаимодействием);
- t - Last Hit Timestamp (временная метка последнего взаимодействия);
- j - Join Timer;
- l - Enhanced User ID Logged In State (расширенный идентификатор пользователя, вошедшего в систему);
- h - Enhanced User ID, hash (расширенный идентификатор пользователя, хешированный);
- d - Join ID (необязательно).
GS2 использует знак доллара $ в качестве разделителя и префиксные значения (s, o, g, t, j и т.д.) вместо фиксированных позиций, как это было в старом файле cookie. Таким образом, Google может добавлять новые параметры, не нарушая логику работы существующих. Префикс GS2 позволяет Google отслеживать, какая версия формата используется и в будущем добавлять другие версии (GS3, GS4 и т.д.), а также поддерживать обратную совместимость при переходах. Используя префиксные значения, парсеры могут игнорировать неизвестные префиксы без нарушений и корректнее обрабатывать отсутствующие параметры. Система префиксов делает файлы cookie более читаемыми и отлаживаемыми. Вместо того, чтобы помнить, что позиция 5 - это lastHitTimestamp, разработчики могут видеть t1746825440 и сразу понимать, что такое t. Неизвестные или отсутствующие поля не нарушают синтаксический анализ файла cookie. GS2 следует формату вида пары ключ-значение (префикс + значение), используемых в параметрах запроса JSON и URL, что делает новый файл cookie совместимым с современными стандартами обработки данных.
Дэвид Вальехо (David Vallejo), автор блога thyngster.com и множество различных аналитических решений, в своем материале разместил пример универсального парсера, который обрабатывает оба формата файла cookie Google Analytics 4. Он возвращает согласованную структуру объектов с описательными именами свойств, что упрощает работу с данными cookie Google Analytics в ваших проектах.