Серверная настройка TikTok Events API через Google Tag Manager
Браузерный пиксель теряет события из-за блокировщиков рекламы и ограничений cookie. Серверная настройка TikTok Events API в контейнере GTM возвращает потерянные сигналы и повышает качество матчинга. В руководстве разобраны генерация токена, настройка контейнера, конфигурация тега, дедупликация и тестирование.
Зачем нужна серверная настройка TikTok Events API?
Когда пользователь совершает конверсию, браузерный пиксель отправляет клиентский запрос в TikTok. Блокировщики перехватывают этот запрос. Safari ITP удаляет идентификаторы. Итог: неполные данные о конверсиях, низкий match rate и неточные ставки.
Серверный контейнер GTM принимает событие на вашем поддомене, обогащает его хешированными данными клиента и пересылает в эндпоинт TikTok Events API. Запрос уходит с сервера, поэтому браузерное расширение не способно его заблокировать.
Команды, уже использующие серверный тегинг для Meta, найдут архитектуру знакомой. Как Meta обрабатывает серверные события под AEM, разобрано в руководстве по Facebook Aggregated Event Measurement.
Предварительные требования
Перед началом убедитесь, что у вас есть:
- Аккаунт TikTok for Business с хотя бы одним пикселем в Events Manager.
- Аккаунт Google Tag Manager с серверным контейнером, который уже получает события из веб-контейнера.
- Права администратора в TikTok Events Manager и GTM.
- Пользовательский поддомен (например,
metrics.yourbrand.example), направленный на серверный контейнер.
Если серверный контейнер еще не развернут, у Google есть пошаговые инструкции в документации по серверному тегингу.
Шаг 1: Генерация токена доступа Events API
- Откройте TikTok Events Manager и выберите нужный пиксель.
- Перейдите в Settings, прокрутите до секции Events API.
- Нажмите Generate access token.
- Скопируйте токен сразу - TikTok показывает его только один раз.
- Сохраните токен в менеджере секретов или серверной переменной GTM. Никогда не встраивайте его в клиентский код.
Токен привязывает события к пикселю. При ротации все серверные теги со старым токеном прекращают доставку, пока вы их не обновите.
Шаг 2: Настройка эндпоинта серверного контейнера
В веб-контейнере GTM задайте URL серверного контейнера в конфигурации тега Google:
// Конфигурация gtag.js
gtag('config', 'G-XXXXXXX', {
transport_url: 'your-container.example',
first_party_collection: true
});Замените your-container.example на поддомен, привязанный к серверному контейнеру. После этого все поддерживаемые теги веб-контейнера ретранслируют хиты на ваш эндпоинт, а не на сторонние домены напрямую.
Шаг 3: Добавление тега TikTok Events API в серверный контейнер
- В серверном контейнере GTM откройте Templates и найдите в галерее "TikTok Events API" (авторы: Stape или AddingWell).
- Создайте тег на основе этого шаблона.
- Заполните обязательные поля:
| Поле | Значение |
|---|---|
| Pixel Code | Идентификатор пикселя из Events Manager |
| Access Token | Токен, сгенерированный на шаге 1 |
| Event Name | Переменная GTM, маппящая имя входящего события |
- В секции User Data сопоставьте хешированные идентификаторы:
{
"user_data": {
"em": "{{SHA256 Email}}",
"ph": "{{SHA256 Phone}}",
"external_id": "{{SHA256 UserID}}"
}
}- Настройте триггер на нужные события (Purchase, AddToCart, CompleteRegistration и т.д.).
Тег хеширует идентификаторы алгоритмом SHA-256 перед отправкой. TikTok отклоняет незахешированные email или телефон.
Тем, кто предпочитает управляемое решение без ручной обвязки тегов, MOST автоматизирует маршрутизацию конверсий между TikTok, Meta и другими платформами из единого дашборда.
Шаг 4: Включение дедупликации событий
Без дедупликации каждая конверция приходит дважды: от браузерного пикселя и от серверного тега. TikTok засчитывает обе, завышая показатели.
Решение - общий event_id. Сгенерируйте UUID в момент конверсии и прикрепите его к обоим вызовам:
// Клиентский пиксель (веб-контейнер)
ttq.track('Purchase', {
value: 49.99,
currency: 'USD'
}, {
event_id: '{{Event UUID}}'
});В серверном теге передайте тот же UUID через поле event_id. Логика дедупликации TikTok сопоставляет по комбинации event_id и event_name в окне 48 часов.
Подробное объяснение взаимодействия дедупликации с окнами атрибуции - в статье Дедупликация событий.
Шаг 5: Проверка через тестовые события Events Manager
- В TikTok Events Manager откройте Test Events.
- Введите URL сайта и нажмите Start testing.
- Выполните тестовую конверсию на сайте.
- В ленте убедитесь, что видите:
- Событие с источником Server.
- Значок дедупликации, если браузерный пиксель тоже сработал.
- Сматченные идентификаторы (email, телефон) с оценкой качества.
Если событие показывает только источник Browser, серверный тег не срабатывает. Проверьте ошибки в режиме предпросмотра GTM.
Events API позволяет отправлять веб-события напрямую с вашего сервера в TikTok, обеспечивая более надежный и приватный канал данных.
Устранение типичных проблем
| Симптом | Вероятная причина | Решение |
|---|---|---|
| Ноль серверных событий в Test Events | Тег не срабатывает | Откройте GTM Preview, проверьте точное совпадение имени события в триггере |
| События доходят, но match rate = 0% | Данные не хешированы | Оберните email и телефон в SHA-256 перед передачей в тег |
| Дубли в отчетах | Отсутствует event_id | Генерируйте UUID на каждую конверсию и передавайте в пиксель и серверный тег |
| Ошибки 401 в логах сервера | Токен отозван или истек | Перегенерируйте токен в Events Manager и обновите переменную GTM |
При работе с несколькими рекламными аккаунтами или кампаниями на разных платформах Pixel Activator дает бесплатный способ валидировать срабатывание пикселя до масштабирования бюджета.
Следующие шаги
- Добавьте стандартные события AddToCart, InitiateCheckout и CompleteRegistration. Полный список имен и параметров - в справочнике стандартных событий TikTok.
- Следите за показателем Event Match Quality в Events Manager еженедельно. Целевое значение - выше 6.0.
- Если параллельно работаете с Meta CAPI, выстройте единую архитектуру серверного трекинга, чтобы обе платформы использовали одну стратегию UUID.
