TikTok Events API: как передавать конверсии с сервера и не терять события

Как работает TikTok Events API, зачем нужны ttclid и _ttp, как не задвоить события с пикселем и как отправлять лиды, подписки и депозиты из трекера без кода.

Шаблон TikTok Ads во вкладке «Параметры» кампании трекера

Трафик из TikTok почти весь мобильный и открывается во встроенном браузере приложения. Человек смотрит лендинг пару секунд, уходит в Telegram или на сайт партнёрки — и конверсия случается там, где пикселя TikTok нет. В отчёте Ads Manager её не будет, и алгоритм учится на неполных данных. Events API передаёт такие конверсии в TikTok с сервера.

Что такое TikTok Events API#

Events API — серверный способ отправлять события в пиксель TikTok. Ваш сервер отправляет в TikTok запрос: событие, время, страница и данные, по которым TikTok найдёт клик по рекламе. Для этого нужны два значения: Pixel Code — код пикселя — и Access Token, который выдаётся в настройках пикселя.

События Events API и пикселя попадают в один и тот же пиксель. Их видно в Events Manager, по ним считаются результаты и обучается оптимизация.

Пиксель или Events API#

Пиксель TikTokEvents API
Откуда уходит событиеиз браузерас сервера
Блокировщики и ограничения браузерамешаютне влияют
Подписка в Telegram, депозит у партнёркине видитотправляет, когда о них узнает трекер
Нужен ли код на лендингеданет
Что даёт для сопоставленияcookie _ttpttclid, IP, браузер, _ttp из пикселя

TikTok рекомендует использовать оба способа сразу: пиксель на странице и Events API для главных конверсий.

Как TikTok сопоставляет серверное событие с кликом#

  • ttclid — ID клика по рекламе. TikTok добавляет его к ссылке объявления сам. Это главный параметр: по нему событие точно привязывается к объявлению. Поэтому редиректы и сокращатели ссылок не должны его обрезать.
  • _ttp — cookie, которую ставит пиксель TikTok в браузере. Её можно передать и в серверном событии.
  • IP и User-Agent посетителя.
  • external_id, email, телефон — только в виде хеша SHA-256.

Чем больше параметров совпадает, тем больше серверных событий TikTok засчитает рекламе.

Как не задвоить события#

Если одна конверсия ушла и из пикселя, и через Events API, TikTok объединит их при двух условиях:

  • одинаковое имя события, например CompleteRegistration;
  • одинаковый event_id.

В отчёт пойдёт событие, которое пришло первым. Если ID разные, TikTok посчитает две конверсии, и CPA в кабинете окажется ниже реального. Сроки, в которые TikTok сопоставляет события, описаны в справке TikTok «About event deduplication».

Одно событие пришло из браузера и с сервера с одинаковым event_id — рекламная сеть считает его один раз
Одно событие пришло из браузера и с сервера с одинаковым event_id — рекламная сеть считает его один раз

Какие события отправлять#

Что произошлоСобытие TikTok
Подписка на Telegram-каналSubscribe
Человек написал ботуContact
Регистрация у партнёркиCompleteRegistration
Депозит или покупка с суммойPurchase
Заявка с формыLead или SubmitForm
Нажатие главной кнопки лендинганапример, ClickButton или ViewContent

Для оптимизации выбирайте событие, которое случается достаточно часто. Депозиты редкие — оптимизируйтесь на регистрацию или подписку, а депозиты передавайте для отчётности и ROI.

Как настроить Events API в Lidvanto#

  1. Pixel Code и токен. В TikTok Ads Manager: Tools → Events → Web Events → ваш пиксель. Код — в карточке пикселя, токен — в настройках, кнопка Generate Access Token. Для проверки возьмите Test Event Code во вкладке Test Events.
  2. Пиксель в трекере. Трекер → Пиксели → пиксель TikTok: Pixel Code, Токен доступа, Test Event Code.
  3. Кампании. Отметьте кампании пикселя и включите у каждой API. Браузер добавит код пикселя на лендинги трекера — с ним появится _ttp и события кнопок.
  4. Правила событий. Вкладка Конверсии в кампании: событие трекера → имя события TikTok. Для кнопки лендинга выберите Лендинг и нажмите Найти кнопки на лендинге — трекер сам покажет кнопки страницы.
  5. Проверка. Отправить тест — событие появится во вкладке Test Events пикселя. Боевые события тестовый код не используют.

Что трекер делает сам:

  • запоминает ttclid из ссылки объявления и _ttp с лендинга;
  • добавляет IP, браузер и хеш ID посетителя;
  • даёт браузерному и серверному событию заявки общий event_id;
  • отправляет подписки, диалоги, регистрации и депозиты, которые пришли постбэком, — с суммой и валютой.

Подробно — Пиксели Meta и TikTok.

Бонус: метки TikTok в ссылке#

Кроме конверсий, трекеру нужно знать, с какого объявления пришёл клик. Во вкладке Параметры кампании выберите шаблон TikTok Ads. Трекер подставит макросы TikTok: кампанию __CAMPAIGN_NAME__, группу __AID_NAME__, креатив __CID_NAME__, ID объявления __ADID_V2__. Статистика трекера разложится по кампаниям, группам и объявлениям.

Шаблон TikTok Ads заполняет метки: название кампании, группы, креатива и ID объявления
Шаблон TikTok Ads заполняет метки: название кампании, группы, креатива и ID объявления

А если подключить кабинет TikTok, трекер подтянет ещё и расходы — ROI посчитается сам, без таблиц.

Частые вопросы#

Работает ли Events API без пикселя на лендинге?
Да. Серверному событию достаточно ttclid, IP и браузера, чтобы TikTok привязал его к клику. Код пикселя на лендинге добавляет _ttp и события на странице, с ним сопоставление точнее.

События видны в Test Events, но не в отчётах. Почему?
Тестовые события в отчёты не попадают — так задумано. Боевые события Lidvanto отправляет без тестового кода, они появятся в статистике пикселя.

Можно ли передавать в TikTok депозиты партнёрки?
Да. Партнёрка отправляет постбэк в трекер, трекер находит клик и отправляет Purchase с суммой в пиксель кампании.

Что будет, если ссылка объявления потеряет ttclid?
Событие уйдёт с IP и браузером, но TikTok сопоставит его хуже. Проверьте, что ссылка объявления ведёт прямо на ссылку трекера и параметры не обрезаются.