Server-side tagging ломается не в GTM, а в настройке границ между клиентом, сервером и логикой событий
Если собрать sGTM как «ещё один контейнер», дальше начинаются типовые проблемы: дубли событий, потеря идентификаторов, кривые source/medium и неожиданно пустые event parameters. Server-side нужен не ради магии, а чтобы контролировать поток данных: что собираем на клиенте, что дообогащаем на сервере, что отправляем дальше.
Перед запуском проверь три слоя:
— клиент: все ли события приходят с нужными user_properties, consent и transaction_id;
— сервер: есть ли стабильный routing, дедупликация и нормализация параметров;
— downstream: совпадают ли названия событий и ключи между GA4, BigQuery и рекламными платформами.
Самая частая ошибка — пытаться «спасти трекинг» только на сервере. Если на фронте нет transaction_id, user_id или корректного consent state, сервер это не изобретёт. Вторая ошибка — не закладывать единый mapping для event_name и параметров: потом analytics team видит purchase, а media team — order_complete, и сравнить их уже нельзя.
Что делать на практике: сначала описать схему данных на одной странице, потом собрать минимальный поток событий, потом уже добавлять enrichment, фильтры и отправку в внешние системы. Если нужна стабильная аналитика, server-side tagging должен уменьшать хаос, а не переносить его с браузера на сервер.
GTM & GA4 Deep
@gtm_ga4_deep
Server-side tagging ломается не в GTM, а в настройке границ между клиентом, сервером и логикой событий
Этот пост опубликован в Telegram-канале GTM & GA4 Deep. Подписаться можно по ссылке: @gtm_ga4_deep.