Что представляют собой client_id и session_id в протоколе измерения?

Добрый день,
При отправке покупки (purchase) через Measurement Protocol с сервера, я столкнулся с ситуацией, когда источник не заполняется. В структуре запроса присутствуют два параметра - client_id и session_id.

У меня есть кука с именем _ga, которая содержит разделенные точкой идентификаторы, а также кука с именем _ga_******, где звездочки представляют measurement id и ее структура практически идентична.

Я хочу понять, из какой куки мне нужно брать client_id, а из какой session_id, и в какой части их можно найти.

Я предполагаю, что client_id хранится в _ga, а session_id - в _ga_*****. Правильно ли я это понимаю, или могут быть и другие варианты?
  • 12 января 2024 г. 10:48
Ответы на вопрос 1
В контексте Measurement Protocol от Google, который используется в Google Analytics 4 (GA4), `client_id` и `session_id` являются важными параметрами, позволяющими отслеживать пользовательские сессии и атрибутировать пользовательские действия к конкретным пользователям и сессиям.

- `client_id` представляет собой уникальный идентификатор клиента, который используется для отслеживания и ассоциирования активности пользователя с определённым клиентским идентификатором в Google Analytics. Этот идентификатор создаётся первый раз, когда пользователь посещает сайт, и хранится обычно в cookie с именем `_ga`. Структура значения `_ga` обычно выглядит как "GA1.2.123456789.987654321", где "123456789.987654321" — это `client_id`. Первая часть "GA1.2" определяет версию и домен cookie, а вторая часть — именно уникальный идентификатор пользователя, который необходимо использовать в запросах к Measurement Protocol.

- `session_id` используется для идентификации уникальной пользовательской сессии. Для Measurement Protocol GA4 значение `session_id` может быть автоматически сгенерировано или передано вручную как часть данных о событии. В контексте cookie имя `_ga_******` обычно используется для хранения идентификаторов сессии, и звёздочки символизируют идентификатор измерения или Measurement ID. Помните, что `_ga` и `_ga_******` используются для разных целей, и `_ga_******` может включать дополнительную информацию, связанную с определённым счетчиком GA4.

Поэтому чтобы корректно использовать Measurement Protocol, вы должны:

- Извлекать `client_id` из cookie с именем `_ga` (но используйте только идентификатор после "GA1.2.").
- Генерировать или извлекать `session_id` в соответствии с правилами вашего серверного отслеживания (если вы хотите передавать его явно).

Фактический метод извлечения и выделения нужных значений из cookies будет зависеть от вашей серверной логики и того, как вы храните и управляете сеансами пользователя.

Важно отметить, что источник не заполняется потому, что параметр `client_id` используется для связывания сессии с уже имеющимся пользователем в Google Analytics. Если вам необходимо передать информацию об источнике трафика, вам следует использовать параметры UTM в URL, когда пользователь переходит на ваш сайт, чтобы в дальнейшем Google Analytics мог атрибутировать трафик к этим источникам.
Похожие вопросы