В прошлой статье «Серверное добавление тегов в Google Tag Manager» я подробно ответил на вопросы, что такое серверное добавление тегов, почему его стоит использовать, какие у него есть преимущества (например, установка first-party cookie, полное избавление от спама по Measurement Protocol) и недостатки (например, высокая стоимость, отсутствие поддержки сторонних сервисов).
Если вы работаете с инструментами веб-аналитики, советую ознакомиться с той статьей в первую очередь.
В этом руководстве я пошагово разберу процесс настройки серверного контейнера.
Чтобы все получилось, достаточно иметь:
Добавленный на сайт скрипт Google Analytics (GA4 и/или Universal Analytics). Он может быть установлен через gtag.js или веб-версию GTM-контейнера (рекомендуемый вариант).
Биллинг-аккаунт в Google Cloud Platform. Подойдет даже аккаунт с нулевым балансом.
Доступ на внесение записей в DNS вашего домена.
В личном кабинете Google Tag Manager нужно создать аккаунт и серверный контейнер.
Исходим из того, что у вас уже создан аккаунт и веб-версия контейнера для сайта. Остается создать серверный контейнер. Для этого перейдите на вкладку «Администрирование» и нажмите на плюс в правой части экрана.
В открывшемся окне укажите название контейнера, а в списке целевых платформ выберите Server.
После создания контейнера откроется окно с настройками сервера для контейнера тегов. Если закрыть окно, то снова открыть его можно, нажав на ID контейнера вверху рабочей области.
Второй способ открыть окно с настройками сервера — перейти на вкладку «Администрирование» и нажать на ссылку «Настройка контейнера» или «Установить Google Менеджер тегов».
Google предлагает два способа настройки сервера тегов: автоматически и вручную.
В этом руководстве я остановлюсь на автоматической настройке серверов.
О том, как настроить сервер вручную, можно прочитать в справке Google для разработчиков. Этот способ будет интересен тем, кто хочет развернуть сервер на стороннем облачном ресурсе, например, на Amazon Web Services.
Нажмите кнопку «Подготавливать сервер тегов к работе автоматически», и откроется окно создания платежного аккаунта.
Если платежный аккаунт уже был создан, можно выбрать его.
Процесс добавления сервера обычно занимает от трех до пяти минут.
Когда процесс завершится, откроется окно с информацией о сервере.
В полях показана информация:
Настройка контейнера: ID настроек контейнера.
Идентификатор проекта Google Cloud Platform: ID проекта в Google Cloud Platform. Если на него нажать, откроется окно проекта в GCP.
Кем создан: аккаунт, который создал контейнер.
URL по умолчанию: адрес эндпоинта, в который будут отправляться запросы. По умолчанию для таких серверов используется субдомен App Engine.
На этом этапе уже можно запустить режим предварительного просмотра и проверить, правильно ли настроен серверный контейн
1. Создайте клиент типа «Google Analytics: Universal Analytics». Обычно этот клиент и клиент типа «Google Analytics: GA4» создаются автоматически при настройке сервера. Пример настройки:
Название: Universal Analytics.
Приоритет: 0.
Пути Universal Analytics по умолчанию: активно.
2. Создайте триггер, который будет запускаться на события от клиента, созданного на предыдущем шаге. Пример настройки:
Название: CE — All Events — UA.
Тип триггера: Специальные.
Условия активации: Client name (это встроенная переменная). Содержит Universal Analytics (или другое название, которое вы дали соответствующему клиенту).
3. Создайте тег отправки данных в Universal Analytics. Пример настройки:
Название: UA — Pageviews & All events.
Триггер: созданный на предыдущем шаге.
Первое поле (версия Measurement Protocol, параметр v): актуальная версия «1». Это значение и надо оставить.
Вторая строка (тип обращения, параметр t): выбрать pageview.
Третья строка (ID счетчика Google Analytics, в который будут отправлены данные, параметр tid): выбрать любой доступный счетчик.
Четвертая строка (Client ID посетителя, параметр cid): можно указать любой набор символов.
Пятая строка (обязательно добавляется нажатием кнопки ADD PARAMETR, указывается параметр dt, заголовок страницы) — можно указать любой набор символов.
Список всех параметров, которые можно передать, доступен в справке Google.
5. Проверьте на корректность запрос для Measurement Protocol (пейлоад), нажав на кнопку VALIDATE HIT в окне выше. Если запрос собран верно, в окне появится надпись Hit is valid.
6. В серверном контейнере запустите окно предварительного просмотра, а в новом окне откройте ссылку вида: {{URL по умолчанию}}/collect?{{Собранный payload}}. Откроется темный экран, в окне предварительного просмотра появится отправленный хит.
Пример ссылки:
https://gtm-n72qsh2-odeyo.uc.r.appspot.com/collect?v=1&t=pageview&tid=UA-69174424-2&cid=GA1.1.2104572378.1634286903&dp=https%3A%2F%2Fwww.reaspekt.ru%2Fsgtm%2F
Одна из основных причин, по которой сейчас многие переходят на серверный GTM, — продление жизни cookie Google Analytics. Это возможно, если cookie установлены в контексте одного домена (first-party). То есть cookie должны устанавливаться либо самим сайтом, либо его поддоменами. Поэтому рекомендуется добавить свой домен для работы с серверным контейнером.
Чтобы делегировать свой домен для работы с серверным контейнером, зайдите в личный кабинет Google Cloud Platform. В списке проектов выберите проект для серверного контейнера.
В левой части выберите App Engine и Settings. Если выбора инструментов нет, нажмите на кнопку-«гамбургер».
Откроется окно, перейдите в нем на вкладку Custom domain и нажмите на кнопку Add a custom domain.
В поле Select the domain you want to use выберите домен (если он был добавлен ранее) или добавьте новый домен для подтверждения.
В поле Point your domain to оставьте добавленный домен. Вариант с www можно убрать.
Из поля Update your DNS records to enable security возьмите DNS и пропишите в настройках домена. В течение 24 часов данные в Google по DNS автоматически обновятся и подтвердятся.
После подтверждения домена нужно указать его в настройках контейнера как основной URL. Для этого перейдите в раздел «Администрирование», далее — в «Настройки контейнера» и в поле «URL серверного контейнера» пропишите добавленный домен. Сделать это нужно с указанием протокола и без слеша на конце.
Теперь нужно активировать отправку запросов к счетчикам Google Analytics через созданный серверный контейнер. Для этого в серверном контейнере:
1. Создайте клиенты (обычно создаются автоматически при создании контейнера; или, если вы проверяли работу серверного контейнера, как описано выше, они тоже должны быть созданы):
Universal Analytics.
GA4.
2. Создайте триггеры для событий Universal Analytics:
Тип: Специальный.
Условия: Client Name содержит Universal Analytics.
3. Создайте триггеры для событий GA4:
Тип: Специальный.
Условия: Client Name содержит GA4.
4. Создайте теги для отправки событий в соответствующие сервисы:
Google Analytics: GA4.
Идентификатор потока: ID контейнера GA4.
Название события: page_view.
Триггер: созданный на предыдущем шаге триггер для активации на события Google Analytics 4.
Google Analytics: Universal Analytics.
Триггер: созданный на предыдущем шаге триггер для активации на события Universal Analytics.
Рассмотрим пример, в котором счетчики Google Analytics 4 и Universal Analytics у вас настроены через веб-контейнер GTM.
1. В переменной типа Google Analytics: Universal Analytics в разделе «Расширенная конфигурация» укажите в поле «URL для отправки» адрес добавленного сайта.
2. В теге типа Google Analytics: конфигурация GA4 установите галочку в блоке «Отправить в серверный контейнер» и укажите URL добавленного сайта.
После внесения этих изменений опубликуйте оба контейнера.
Если все было сделано правильно, вы увидите все отправленные запросы при запуске режима предварительного просмотра в серверном контейнере и заходе на сайт.
По умолчанию при автоматическом создании серверного контейнера создается тестовая конфигурация, которая подходит для предварительного просмотра и проверки контейнера в GTM. Она не выдержит большого потока трафика, поэтому перед началом использования сервера рекомендуем перевести его на рабочую конфигурацию.
Чтобы перейти на рабочую конфигурацию, зайдите в личный кабинет Google Cloud Platform и в верхней правой части экрана нажмите крайнюю слева иконку — Shell. Запустится командная строка, в которой можно провести все требуемые настройки.
Важно! Перед внесением изменений убедитесь, что выбранный в Shell проект соответствует проекту, для которого вы хотите настроить сервер. Для этого в верхней панели нажмите на иконку выбора проекта — ID проекта должен совпадать с активным в Shell.
Чтобы сменить проект, введите команду:
gcloud config set project project-id-here
Чтобы запустить процесс переноса на рабочую конфигурацию:
Скопируйте из справки Google команду скрипта и вставьте в окно терминала. Сама команда: bash -c «$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)»
Ответьте на вопросы (для продолжения нажмите Enter):
Container Config (ID настроек контейнера) — оставить как есть.
Policy Script URL (ссылка на скрипт CSP) — оставить как есть.
Request Logging (надо ли вести лог событий) — оставить как есть.
Deployment Type (тип сервера: testing или production) — production.
Autoscaling (надо ли динамически изменять количество серверов, в зависимости от нагрузки) — оставить как есть.
Minimum number of Servers (минимальное количество серверов; вне зависимости от количества трафика на сайте, рекомендуется три) — оставить как есть.
Maximum number of Servers (максимальное количество серверов; рекомендуется шесть) — оставить как есть.
CPU Target Utilization (пороговая нагрузка на процессор для масштабирования) — оставить как есть.
После ответа на вопросы система запустит процесс перехода на рабочую конфигурацию. Обычно это длится около пяти минут.
Стоимость содержания серверного контейнера зависит от количества серверов, которые его обслуживают. А количество серверов зависит от трафика на сайт в секунду. Вне зависимости от объема трафика на сайте, Google рекомендует запускать минимум три сервера.
Стоимость одного сервера — около $40 в месяц.
В справке Google указано: «Ориентировочно автомасштабирование до трех—шести серверов (настройка по умолчанию) позволяет обрабатывать по 50–200 запросов в секунду, однако этот показатель зависит от количества и функций тегов».
После проведения всех описанных действий вы получите серверный контейнер, который будет обрабатывать все настроенные через веб-контейнер события и отправлять их в ваши счетчики Google Analytics 4 и Universal Analytics.
Если вы еще не прочитали статью, которую я рекомендовал во вступлении, обязательно ней ознакомьтесь. Она даст вам лучшее понимание того, как работает серверный контейнер и какие возможности он открывает перед аналитиками.
На исследование основных показателей в Яндекс Метрике достаточно одного часа. В статье мы покажем, как находить эти показатели и объясним,…
Рассказываем, какие интересные и полезные исследования вышли в мае 2022 года. Какие каналы для общения с клиентами выбирает бизнес —…
В мае Яндекс увеличил количество мест в товарной галерее и добавил два новых формата Большого баннера на главной. Директ…
Я пришел в digital 11 лет назад, когда учился в аспирантуре института биоорганической химии им. академиков М. М. Шемякина и Ю. А. Овчинникова. Тогда я просто…
Как сформулировать CTA, решает общий контекст коммуникации с пользователем. Какая формулировка сработает лучше, определяет тестирование. Но что…
Магазины в Telegram уже были давно. Как они выглядят и насколько удобны — другой вопрос. Некоторые из них — просто…