14 марта 2024
Как повысить точность статистики по пользователям при помощи серверного Google Tag Manager
Точность сервисов по сбору данных ― Яндекс Метрики, Google Analytics ― может значительно страдать из-за блокировщиков рекламы, которыми пользуются посетители сайтов. Информация не передаётся в сервисы анализа трафика, что приводит к погрешности измерения при сборе данных.
Команда хостинг-провайдера «Бегет» рассказывает, как им удалось обойти блокировщиков рекламы и увеличить точность статистики по пользователям до 10%, используя собственный серверный GTM.
Статья будет полезна как начинающим, так и опытным маркетологам, продакт-менеджерам, аналитикам данных.
Команда хостинг-провайдера «Бегет» рассказывает, как им удалось обойти блокировщиков рекламы и увеличить точность статистики по пользователям до 10%, используя собственный серверный GTM.
Статья будет полезна как начинающим, так и опытным маркетологам, продакт-менеджерам, аналитикам данных.
Андрей Подорожко
Digital-маркетолог компании «Бегет»
Точность сервисов по сбору данных ― Яндекс Метрики, Google Analytics ― может значительно страдать из-за блокировщиков рекламы, которыми пользуются посетители сайтов. Информация не передаётся в сервисы анализа трафика, что приводит к погрешности измерения при сборе данных.
Команда хостинг-провайдера «Бегет» рассказывает, как им удалось обойти блокировщиков рекламы и увеличить точность статистики по пользователям до 10%, используя собственный серверный GTM.
Статья будет полезна как начинающим, так и опытным маркетологам, продакт-менеджерам, аналитикам данных.
Команда хостинг-провайдера «Бегет» рассказывает, как им удалось обойти блокировщиков рекламы и увеличить точность статистики по пользователям до 10%, используя собственный серверный GTM.
Статья будет полезна как начинающим, так и опытным маркетологам, продакт-менеджерам, аналитикам данных.
У многих компаний есть неучтённые действия пользователей
Программы для блокировки рекламы широко распространены. Согласно опросу, который рекламный программатик Platforma провёл в марте 2023 года среди 1 200 жителей России, блокировщики рекламы есть у 59% респондентов.
Расширение AdBlock, ограничения на отслеживание действий пользователей и данных о них ― всё это влияет на точность статистики, собираемой о посетителях сайта. Таким образом, у почти любого проекта существуют целые группы пользователей, которые совершают какие-то действия на сайте и в продукте, а отследить их ― проанализировать точки роста и вовремя увидеть потенциальные проблемы ― не получается.
Мы в «Бегете» используем и Google Analytics, и Яндекс Метрику. По наблюдениям, погрешность измерения по наиболее важным целям в среднем может достигать 20%.
Эта цифра у нас получилась при сравнении конверсии в Google Analytics и Яндекс Метрике с количеством достигнутых целей ― регистрации, оплаты. В базе данных их оказалось больше, очевидно ― мы недополучаем данные. Поэтому мы решили избавиться от этой погрешности или как минимум максимально сократить её.
Расширение AdBlock, ограничения на отслеживание действий пользователей и данных о них ― всё это влияет на точность статистики, собираемой о посетителях сайта. Таким образом, у почти любого проекта существуют целые группы пользователей, которые совершают какие-то действия на сайте и в продукте, а отследить их ― проанализировать точки роста и вовремя увидеть потенциальные проблемы ― не получается.
Мы в «Бегете» используем и Google Analytics, и Яндекс Метрику. По наблюдениям, погрешность измерения по наиболее важным целям в среднем может достигать 20%.
Эта цифра у нас получилась при сравнении конверсии в Google Analytics и Яндекс Метрике с количеством достигнутых целей ― регистрации, оплаты. В базе данных их оказалось больше, очевидно ― мы недополучаем данные. Поэтому мы решили избавиться от этой погрешности или как минимум максимально сократить её.
Почему остановились на серверном Google Tag Manager
В поисках решения мы рассматривали разные варианты: например, собственную сквозную аналитику и потенциально дорогостоящие готовые решения. В итоге остановились на варианте с собственным сервером, на котором развернём Google Tag Manager.
Серверный Google Tag Manager (GTM) ― это тип отслеживания событий с помощью серверного контейнера. То есть можно развернуть собственную систему цифровой аналитики, не загружая сторонний код в браузер или на устройство пользователя.
Серверный GTM может работать на личном сервере, поэтому позволяет собирать более точные данные и иметь полный контроль над тегами отслеживания и правилами, которые запускаются на сайте. То есть мы можем контролировать информацию о пользователях, которая передаётся в системы аналитики. Это как раз то, что нам нужно.
Также хранение GTM на собственном сервере обеспечивает дополнительный уровень безопасности, так как можно контролировать доступ к данным. А размещение тегов на стороне сервера позволяет точно настроить правила и условия для запуска тегов при управлении маркетинговыми кампаниями.
Как указывает Google, серверный GTM может обрабатывать десятки запросов в секунду и позволил одной из компаний увидеть в Google Ads увеличение конверсии на 46% ― вот мы и решили проверить, насколько эффективен серверный GTM может быть для нас.
Казалось бы, решение это известно уже давно и есть документация по настройке. Однако мы собрали много граблей и всё получилось не так быстро, как хотелось бы. Чуть дальше рассказываю, как это было и что в итоге у нас получилось.
Серверный Google Tag Manager (GTM) ― это тип отслеживания событий с помощью серверного контейнера. То есть можно развернуть собственную систему цифровой аналитики, не загружая сторонний код в браузер или на устройство пользователя.
Серверный GTM может работать на личном сервере, поэтому позволяет собирать более точные данные и иметь полный контроль над тегами отслеживания и правилами, которые запускаются на сайте. То есть мы можем контролировать информацию о пользователях, которая передаётся в системы аналитики. Это как раз то, что нам нужно.
Также хранение GTM на собственном сервере обеспечивает дополнительный уровень безопасности, так как можно контролировать доступ к данным. А размещение тегов на стороне сервера позволяет точно настроить правила и условия для запуска тегов при управлении маркетинговыми кампаниями.
Как указывает Google, серверный GTM может обрабатывать десятки запросов в секунду и позволил одной из компаний увидеть в Google Ads увеличение конверсии на 46% ― вот мы и решили проверить, насколько эффективен серверный GTM может быть для нас.
Казалось бы, решение это известно уже давно и есть документация по настройке. Однако мы собрали много граблей и всё получилось не так быстро, как хотелось бы. Чуть дальше рассказываю, как это было и что в итоге у нас получилось.
Что нужно для установки серверного контейнера и сколько это стоит
Понадобится собственный виртуальный сервер (VPS).
Стоимость содержания GTM-контейнера зависит от количества облачных серверов, его обслуживающих.
В своей справке Google рекомендует для любого сайта подключать несколько серверов, чтобы снизить риск потери данных из-за перебоев в работе сервера. Ожидается, что 3–6 серверов будут обрабатывать 50–200 запросов в секунду. При этом у Google каждый сервер стоит примерно $40 в месяц, поэтому ежемесячная цена производственной среды составит минимум $120, что довольно дорого. У нас такой проблемы не стояло, ведь у нас есть свои серверы. Да и для пользователей они гораздо дешевле ― от 7 рублей в день.
Стоимость содержания GTM-контейнера зависит от количества облачных серверов, его обслуживающих.
В своей справке Google рекомендует для любого сайта подключать несколько серверов, чтобы снизить риск потери данных из-за перебоев в работе сервера. Ожидается, что 3–6 серверов будут обрабатывать 50–200 запросов в секунду. При этом у Google каждый сервер стоит примерно $40 в месяц, поэтому ежемесячная цена производственной среды составит минимум $120, что довольно дорого. У нас такой проблемы не стояло, ведь у нас есть свои серверы. Да и для пользователей они гораздо дешевле ― от 7 рублей в день.
Виртуальный сервер можно взять в аренду у хостинг-провайдера. Стоимость VPS зависит от конфигурации ― количества ядер, памяти, места на диске ― и локации серверного оборудования.
Как настроить GTM на собственном сервере
1. Создаём поддомен от основного домена компании.
Это один из ключевых моментов, необходимый для уменьшения погрешности.
Поддомен от домена будет неизвестен блокировщикам рекламы, и они не будут реагировать на запрос от него. В результате это позволит обойти ITP и AdBlockers и отслеживать действия посетителей сайта и конверсии.
2. Переходим на страницу GTM и создаём аккаунт.
3. Создаём контейнер для сервера.
Это один из ключевых моментов, необходимый для уменьшения погрешности.
Поддомен от домена будет неизвестен блокировщикам рекламы, и они не будут реагировать на запрос от него. В результате это позволит обойти ITP и AdBlockers и отслеживать действия посетителей сайта и конверсии.
2. Переходим на страницу GTM и создаём аккаунт.
3. Создаём контейнер для сервера.
4. Указываем поддомен в настройках GTM.
Переходим в раздел администрирования Google Tag Manager и выбираем пункт «Настройки контейнера».
Переходим в раздел администрирования Google Tag Manager и выбираем пункт «Настройки контейнера».
Нажимаем на кнопку «Добавить URL» и вставляем ранее созданный поддомен, используемый для нашего серверного GTM.
5. Затем переходим в раздел «Настройки сервера тегов» и выбираем «Добавить сервер тегов вручную».
В итоге получаем автоматически сгенерированный идентификатор контейнера, необходимого для создания серверного GTM.
6. Создаём VPS.
С оптимально приближенной к рекомендуемой Google конфигурацией: 4 ядра, 6 Гб памяти и 40 Гб NVMe ― один из самых быстрых SSD-дисков.
Мы развернули VPS с Docker-контейнером из нашего маркетплейса. При разворачивании использовали ключ серверного контейнера и поддомен.
7. Редактируем записи DNS.
Для работы GTM нужен поддомен на основном домене сайта, а у VPS его изначально нет. И чтобы связать VPS с поддоменом, нужно отредактировать DNS-записи, указав IP сервера в A-записи поддомена.
6. Создаём VPS.
С оптимально приближенной к рекомендуемой Google конфигурацией: 4 ядра, 6 Гб памяти и 40 Гб NVMe ― один из самых быстрых SSD-дисков.
Мы развернули VPS с Docker-контейнером из нашего маркетплейса. При разворачивании использовали ключ серверного контейнера и поддомен.
7. Редактируем записи DNS.
Для работы GTM нужен поддомен на основном домене сайта, а у VPS его изначально нет. И чтобы связать VPS с поддоменом, нужно отредактировать DNS-записи, указав IP сервера в A-записи поддомена.
Настройка А-записи в панели управления Бегета: нажимаем на карандаш для редактирования и добавляем IP сервера, который мы указываем в A-записи
8. Устанавливаем на VPS SSL-сертификат для этого поддомена.
Я не ожидал, что придётся столько возиться с настройками сервера, и без помощи админов не справился бы. Чтобы упростить процедуру подготовки собственного GTM-сервера, мы собрали пошаговые действия в отдельном гайде.
9. Добавляем код счётчика на сайт.
Эта задачка оказалась со звёздочкой, поскольку появились сложности при формировании кода «gtag», используемого для добавления тегов Google на веб-страницы.
Следует добавить параметр «gtag config» и поменять URL-адрес в базовом коде «gtag»:
Эта задачка оказалась со звёздочкой, поскольку появились сложности при формировании кода «gtag», используемого для добавления тегов Google на веб-страницы.
Следует добавить параметр «gtag config» и поменять URL-адрес в базовом коде «gtag»:
Впоследствии выяснилось, что таких руководств существует много и все различаются. Методом проб и ошибок нам всё-таки удалось отыскать полный код, который мы и добавили к себе на сайт.
Пример стандартного кода, где «G_ID» ― поток данных Google Analytics 4,
а «https://нашподдомен.beget.com» ― специально созданный нами поддомен
а «https://нашподдомен.beget.com» ― специально созданный нами поддомен
10. Создаём в Google Tag Manager клиент Google Analytics 4.
Для корректной работы GTM нужно создать клиента ― он выполняет роль адаптера между программным обеспечением на устройстве пользователя и серверным контейнером ― и тег Google Analytics.
Для корректной работы GTM нужно создать клиента ― он выполняет роль адаптера между программным обеспечением на устройстве пользователя и серверным контейнером ― и тег Google Analytics.
11. Вносим поток данных Google Analytics 4 и проставляем нужные галочки.
На скриншоте выделен наш уникальный идентификатор потока данных в Google Analytics 4
12. Проверяем работу.
Чтобы убедиться в корректности выполненных действий, мы для проверки выбрали «Отчёт в реальном времени».
Чтобы убедиться в корректности выполненных действий, мы для проверки выбрали «Отчёт в реальном времени».
И здесь, когда визиты начали фиксироваться, мы столкнулись с риском потери данных из-за периодического падения GTM-контейнера. Через несколько дней успешного мониторинга мы обнаружили, что он может завершать свою работу без каких-либо явных ошибок в логах.
Прошерстив всю имеющуюся документацию и не найдя нужных ответов, мы преодолели проблему в лоб. Взяв золотую середину от рекомендуемого Google количества 3―6, мы настроили 4 одновременно работающих контейнера в рамках одного сервера с 4 ядрами и добавили веб-сервер nginx для распределения запросов между этими контейнерами. Мониторинг показал, что даже если один контейнер упадёт, то учёт трафика продолжится в других контейнерах.
Вуаля ― мы получили свой собственный сервер, который обрабатывает настроенные в Google Tag Manager события и отправляет их в наши счётчики аналитики.
В работе над серверным GTM участвовало 3 человека, а на саму настройку ушло около месяца.
Прошерстив всю имеющуюся документацию и не найдя нужных ответов, мы преодолели проблему в лоб. Взяв золотую середину от рекомендуемого Google количества 3―6, мы настроили 4 одновременно работающих контейнера в рамках одного сервера с 4 ядрами и добавили веб-сервер nginx для распределения запросов между этими контейнерами. Мониторинг показал, что даже если один контейнер упадёт, то учёт трафика продолжится в других контейнерах.
Вуаля ― мы получили свой собственный сервер, который обрабатывает настроенные в Google Tag Manager события и отправляет их в наши счётчики аналитики.
В работе над серверным GTM участвовало 3 человека, а на саму настройку ушло около месяца.
• Научитесь оценивать эффективность маркетинговых кампаний и давать рекомендации по привлечению клиентов
• Разовьёте навыки программирования на тренажёре
• Выполните 7 масштабных проектов для портфолио
• Разовьёте навыки программирования на тренажёре
• Выполните 7 масштабных проектов для портфолио
• Научитесь оценивать эффективность маркетинговых кампаний и давать рекомендации по привлечению клиентов
• Разовьёте навыки программирования на тренажёре
• Выполните 7 масштабных проектов для портфолио
• Разовьёте навыки программирования на тренажёре
• Выполните 7 масштабных проектов для портфолио
Что мы получили
Главное, чего удалось добиться, ― более точный сбор данных и отслеживание конверсии.
Например, если сравнить данные из Яндекс Метрики и Google Analytics по количеству достижений цели «регистрация», до внедрения серверного GTM Яндекс Метрика фиксировала на 3–5% больше достижений этой цели, чем Google Analytics. А после использования серверного GTM Google Analytics фиксирует на 7–10% больше достижений этой цели, чем Яндекс Метрика.
Нам удалось добиться обхода AdGuard и бесплатной версии AdBlock, а также блокировщиков, встроенных в браузеры Mozilla Firefox, Brave, Vivaldi и расширение для Google Chrome AdBlocker Ultimate Browser.
Мы часто используем конверсионную стратегию в рекламных кампаниях. И бонусом стало то, что благодаря данным о большем количестве конверсий, рекламные кампании теперь обучаются быстрее и нужный результат достигается скорее.
Например, если сравнить данные из Яндекс Метрики и Google Analytics по количеству достижений цели «регистрация», до внедрения серверного GTM Яндекс Метрика фиксировала на 3–5% больше достижений этой цели, чем Google Analytics. А после использования серверного GTM Google Analytics фиксирует на 7–10% больше достижений этой цели, чем Яндекс Метрика.
Нам удалось добиться обхода AdGuard и бесплатной версии AdBlock, а также блокировщиков, встроенных в браузеры Mozilla Firefox, Brave, Vivaldi и расширение для Google Chrome AdBlocker Ultimate Browser.
Мы часто используем конверсионную стратегию в рекламных кампаниях. И бонусом стало то, что благодаря данным о большем количестве конверсий, рекламные кампании теперь обучаются быстрее и нужный результат достигается скорее.
Читать также
Мнение автора и редакции может не совпадать. Хотите написать колонку для Нетологии? Читайте наши условия публикации. Чтобы быть в курсе всех новостей и читать новые статьи, присоединяйтесь к Телеграм-каналу Нетологии.
Андрей Подорожко
Digital-маркетолог компании «Бегет»
Оцените статью