Назад в блог

Блог

Зачем нужен SignalHost: что теряют теги в браузере и что возвращает собственный сервер тегинга

Опубликовано · 6 мин чтения

Каждая цифра в GA4, Google Ads и Meta начинается с запроса из браузера посетителя на адрес, который принадлежит Google или Meta. Всё большая доля браузеров устроена так, чтобы останавливать именно такие запросы, и ничто не сообщает вам, когда это происходит: отчёт просто показывает меньше. SignalHost переносит этот трафик на ваш собственный домен и ваш собственный сервер тегинга, который за вас создают и поддерживают. Ниже — доводы в его пользу, в том порядке, в каком проблемы до вас доходят, а в конце — честный список того, чего он не делает и кому он не нужен.

Чего ваши отчёты никогда не покажут

Когда теги работают в браузере, каждое измерение — это запрос на чужой домен: скрипт Tag Manager с googletagmanager.com, каждое обращение GA4 на google-analytics.com, каждое событие Meta на facebook.com. Блокировщики рекламы, расширения для приватности, браузеры со встроенной блокировкой трекеров и DNS-фильтры в офисных и домашних сетях узнают эти имена хостов и пути и отбрасывают запрос. Страница загружается как обычно. Визит просто не доходит.

В GA4 эту потерю не увидеть, потому что GA4 показывает только то, что дошло. Её размер зависит от вашей аудитории — у технической, молодой или заботящейся о приватности публики она намного больше, чем у широкой, — и она бьёт по всем отчётам сразу: меньше пользователей, меньше сессий, меньше конверсий и кампании, которые выглядят хуже, чем есть на самом деле.

Блокировка — одна из четырёх причин, по которым GA4 показывает меньше конверсий, чем ваш магазин: почему GA4 недосчитывает и какую часть можно вернуть.

Где это обходится дороже всего: конверсии и рекламные платформы

Потерянный просмотр страницы — досадная мелочь. Потерянная конверсия обходится вам дважды. Google Ads, Meta и TikTok решают, куда пойдёт ваш бюджет, обучаясь на полученных конверсиях, поэтому каждая покупка, которую проглотил блокировщик, — это покупка, на которой назначение ставок так и не обучится, а каждая кампания показывает худшую отдачу, чем заработала.

Вторая потеря — сам клик по объявлению. Конверсия засчитывается кампании, только если её можно связать с кликом, который к ней привёл, а связующее звено — идентификатор клика: gclid у Google, fbclid у Meta, ttclid у TikTok. Он стоит в адресе целевой страницы и исчезает из него при следующем клике посетителя. Что-то должно хранить его до покупки, и это что-то — cookie. Если cookie установлен с адреса другого сайта, Safari его просто не принимает, и покупка через три страницы приходит без клика.

Что меняет SignalHost

  • Ваши теги загружаются и отправляют данные с вашего собственного домена. Если ваш адрес тегинга — metrics.yoursite.com, то для браузера каждый запрос идёт на ваш собственный сайт, и ни один список, нацеленный на имена хостов Google, под него не подпадает.
  • Узнавать больше нечего. Списки фильтров ищут ещё и gtm.js, /g/collect и идентификаторы измерения на любом домене. SignalHost кодирует каждый запрос в один непрозрачный путь, для каждого клиента по-своему, так что имя файла, имя события, ваш идентификатор измерения и адрес страницы больше не видны в открытом виде.
  • Конверсии доходят до рекламных платформ с вашего сервера. Google Ads, Meta, TikTok, Reddit, Pinterest, Snapchat и LinkedIn получают ваши события через собственные серверные интерфейсы — Conversions API у Meta, Events API у TikTok и так далее — вместо пикселя в браузере. Если хотите, оставьте и пиксель: отправляйте в оба один и тот же event_id, и каждая платформа засчитает событие один раз.
  • Клик доживает до покупки. Ваш серверный контейнер хранит идентификатор клика в cookie на вашем собственном домене — FPGCLAW для Google Ads, _fbc для Meta, — так что покупка через несколько страниц или дней всё равно доходит до платформы вместе с кликом, с которого она началась.
  • Одно событие — все назначения. События, которые ваш сайт уже отправляет в GA4, питают и каждую подключённую платформу, переведённые в её собственные имена, так что событие настраивается один раз, а не отдельно для каждой платформы.

Что иначе пришлось бы строить и поддерживать самим

Ничего технологически нового здесь нет. Серверный Google Tag Manager — собственный продукт Google, и его можно разместить самостоятельно. Это означает проект Google Cloud с включённой оплатой, сервер тегинга, который постоянно работает в продакшене, и второй — для предпросмотра, ваш собственный домен, направленный на него, с сертификатом, серверный образ, который нужно держать актуальным, и счёт, растущий вместе с трафиком. Затем контейнеры: веб-контейнер, тег Google в котором отправляет данные на ваш сервер, тег для каждого события, серверный контейнер, который их принимает и пересылает, и для каждой рекламной платформы шаблон, учётные данные и триггер — и любое из этого может сломаться, не выдав нигде ни одной ошибки.

Эту часть берёт на себя SignalHost. Вы один раз подключаете аккаунт Google — Tag Manager и Analytics только на чтение, больше ничего, — и он создаёт и публикует оба контейнера в вашем собственном аккаунте: тег Google, направленный на ваш сервер, теги для шестнадцати стандартных событий — от регистраций и заявок до каждого шага оформления заказа, — серверную часть и каждую рекламную платформу, которую вы добавите. Это занимает около четырёх минут, а на сайт вы вставляете один фрагмент кода.

Контейнеры остаются вашими. Они находятся в вашем аккаунте Tag Manager, под вашим логином: редактируйте их, добавляйте свои теги или уходите и оставьте их себе. Когда тег нужно изменить — потому что Google что-то поменял или потому что мы добавили событие, — ваши контейнеры обновляются без единого нажатия с вашей стороны. Всё работает на европейской инфраструктуре, без проекта Google Cloud и без облачного счёта за каждый запрос на вашей стороне.

Что вы видите теперь и чего не видели раньше

  • Счётчики запросов и событий в реальном времени для каждого контейнера, так что на вопрос «работает ли?» есть ответ через несколько секунд, а не в завтрашнем отчёте.
  • Два числа на событие: всё, что пришло, и сколько из этого пришло с согласием на аналитику, — ваш уровень согласия, измеренный, а не угаданный.
  • Страницы, источники трафика, страны, браузеры и устройства, подсчитанные по просмотрам страниц, которые доставил ваш сервер. Только агрегаты: ни IP-адрес, ни идентификатор клиента не сохраняются.
  • Карточка «Устранение неполадок», которая прослеживает ваши просмотры страниц от сайта через ваш сервер до собственного отчёта GA4 в реальном времени и проверяет путь к каждой подключённой рекламной платформе.
  • В Growth, Enterprise или Unlimited режим предпросмотра Tag Manager подключается к вашему серверному контейнеру так же, как к контейнеру, который вы запускаете сами.

Чего он не делает

  • Он не заменяет согласие. Запросу на ваш собственный домен нужно то же согласие, что и запросу на домен Google. Посетители, которые отказались, остаются отказавшимися: теги Google отправляют только то, что разрешает Consent Mode, а Meta, TikTok и другие платформы ничего о них не получают.
  • Он не делает так, чтобы GA4 совпадал со страницей контейнера. Analytics не учитывает посетителей, отказавшихся от cookie; ваш сервер считает каждый запрос. Разница — это ваш уровень согласия, а не потерянные данные.
  • Без вашего собственного домена он не может сохранить клик по объявлению. На бесплатном имени хоста signalhost.io ваши теги уже ушли с доменов Google, но cookie клика всё равно приходит с другого сайта, и Safari его не принимает. Сохранить клик позволяет именно ваш собственный домен на платном тарифе.
  • Он не вернёт посетителя, чей браузер вообще не выполняет скрипты, или того, кто уходит, не дождавшись загрузки страницы.

Кому он нужен, а кому нет

Он нужен вам, когда от цифр зависят деньги: вы запускаете рекламу в Google, Meta, TikTok или на других платформах и хотите, чтобы они учились на каждой продаже; вы продаёте онлайн, и число заказов в магазине расходится с GA4; ваша аудитория техническая, молодая или внимательная к приватности; или вы отчитываетесь перед клиентом, чей бюджет следует за дашбордом.

Скорее всего, он вам не нужен, если вы не запускаете рекламу, у сайта несколько сотен посещений в месяц и никто ничего не решает по этим цифрам. Analytics в браузере вполне достаточно, когда десять процентов в ту или другую сторону ничего не меняют.

Быстрее всего понять, к кому вы относитесь, — измерить. Бесплатный тариф — это десять тысяч запросов в месяц, и за него никогда ничего не списывается. Настройте его, а затем сравните неделю конверсий в GA4 и в ваших рекламных платформах с предыдущей неделей.

Перестаньте терять данные из-за блокировщиков

Начните бесплатно. Запустите первый контейнер за несколько минут.