Трекінг-посилання і Кліки: кожен перехід - у дані

Трекінг-посилання - вхідні двері вашої воронки. Кожен платний перехід проходить крізь нього, за мілісекунди отримує click id, і все, що станеться далі - натискання Start, реєстрація, депозит - причіпляється до цього id. Якщо кліки фіксуються криво, нижче по воронці вже нічого не полагодити: це грошовий шар усієї системи.

Що таке трекінг-посилання

Кожна кампанія отримує персональний brandless-хост одразу при створенні: випадковий восьмисимвольний сабдомен на нейтральному домені, тож URL реклами не несе бренду трекера (модерація таке цінує). Будь-який шлях на цьому хості веде в ту саму кампанію, а класичний /r/campaign_id продовжує працювати як постійний запасний варіант для старих рекламних креативів. Посилання беріть на сторінці Кампанії: колонка «Посилання відстеження» показує хост із кнопками копіювання та відкриття; копіювання підтягує канонічний URL із сервера («Посилання відстеження скопійовано»).

Що фіксується на кліку

  • sub1-sub5 та ref_id - query-параметри, обмежені 255 символами кожен: кладіть туди крео, адсет, джерело або id із зовнішнього трекера. Клік ніколи не відхиляється через задовгий параметр - усе, що виходить за межу, просто обрізається.
  • Платформні click id: fbclid (Meta), gclid, gbraid і wbraid (Google, включно з iOS-privacy трафіком, який оминає gclid), ttclid (TikTok) - саме за ними серверні конверсії потім матчаться з кліком по оголошенню.
  • User agent фіксується на кожному кліку. Geo - дволітерний код країни, який визначається просто на редиректі: якщо проксі перед застосунком виставив заголовок X-Geo-Country, перемагає він, інакше країну беруть за IP відвідувача з локальної бази, вшитої в образ. Пошук іде в пам'яті, триває мікросекунди й редирект не затримує. Порожньо виходить лише тоді, коли IP справді ні у що не резолвиться: приватна чи службова адреса (локальні перевірки) або адреса, якої немає в базі. Від geo залежить і тариф - але не за клік (кліки безкоштовні завжди), а за платний лід, який із цього кліку виросте: списання бере geo, збережене в рядку кліку, і порожнє значення падає в найдешевший тир.

sub4-sub9, ref_id, ad-акаунт і платформні click id не винесені колонками таблиці Кліків - у самій таблиці видно sub1-sub3. Усе, крім платформних click id, показується в розгорнутому рядку та вивантажується в CSV. Щоб перевірити, що клік справді зловив fbclid чи gclid, дивіться далі по ланцюжку: шаблони URL постбеків приймають {sub4}, {sub5}, {platform}, {fbclid}, {gclid}, {gbraid}, {wbraid} і {ttclid} як макроси, і вони підставляються з того, що клік реально зафіксував.

Сам редирект - це 302 з бюджетом до 10 мс: запис кліку йде асинхронно, тож відвідувач не чекає на базу даних. Якщо в кампанії задано «URL редиректу», відвідувач одразу йде туди з підставленими {click_id} і {campaign_id}; інакше він потрапляє на hosted-лендинг, де натискання відкриває Telegram із click id, вплетеним у стартове посилання бота. Редиректять відвідувачів лише активні кампанії: кампанія на паузі, у чернетці чи в архіві відповідає 404. Сам клік при цьому записується і його видно на вкладці «Усі» сторінки «Кліки», але він позначається як неврахований - метрики Reports і Dashboard рахують лише кліки по активних кампаніях.

Робота зі сторінкою «Кліки»

  1. Відкрийте Кліки. Лічильник «Кліки» показує обсяг під поточними фільтрами. Це проста кількість рядків, а не охоплення: дедуплікації немає ні на записі, ні на читанні, тож якщо та сама людина клікнула двічі, це два кліки. Те саме число ви побачите у «Звітах» і в експорті CSV.
  2. Звужуйте вибірку фільтрами статус і кампанія та діапазоном дат у UTC; пошук охоплює ID, кампанію, sub1 і geo.
  3. Фільтри живуть в URL, тож скопійований адресний рядок передає колезі точнісінько той самий зріз - «кампанія X, FTD, минулий тиждень» стає посиланням, а не набором інструкцій.
  4. Колонки таблиці: Створено, Кампанія (за назвою), Sub1-Sub3, Geo, Статус, Дохід. Дохід - це підтверджена виплата за кліком; прочерк означає, що підтвердженої виплати немає, і це не те саме, що $0.00. На вкладці «Усі» в комірці статусу додатково з'являється бейдж «Неврахований» у кліків по неактивних кампаніях. Пагінація: 25/50/100 рядків або «Усі».

Фільтр статусу перелічує Клік, Лендинг, Старт, Лід, Депозит і FTD. Реєстрація - реальний крок воронки нижче, але чипу фільтра для неї поки немає - експортуйте CSV і відфільтруйте колонку статусу, якщо потрібно виокремити саме її.

Таблиця кліків із фільтрами і колонкою статусуТаблиця кліків із фільтрами і колонкою статусу

Статуси кліку

Клік проходить воронкою: Клік → Лендинг → Старт → Реєстрація → Лід → Депозит → FTD. Статус рухається лише вперед - пізня чи дубльована подія ніколи не відкотить FTD назад у Лід. Статуси просувають події: запускайте їх із вузлів «Тригер події» у Флоу або надсилайте серверно через events API.

Експорт CSV

«Експорт CSV» вивантажує кожен рядок, що відповідає поточним фільтрам, а не лише видиму сторінку: колонки id, campaignId, sub1-sub3, geo, status, createdAt, далі sub4-sub9, refId, adAccount і насамкінець revenue та tracked. Нові колонки завжди дописуються в кінець, тож таблиця чи імпортер, які читають за позицією, працюють і після релізів. Порожня комірка revenue означає «підтвердженої виплати немає», а не нуль. Зручно, щоб звести спенд проти FTD за sub1 у таблиці.

Поширені помилки

  • «Посилання раптово померло». Спершу перевірте статус кампанії - пауза чи архівування миттєво переводять посилання в 404, так і задумано. Кліки, що надходять при цьому, записуються як невраховані - вкладка «Усі» на сторінці «Кліки» показує, скільки трафіку продовжувало йти за мертвим посиланням.
  • Обрізані sub-параметри. Усе, що довше за 255 символів на параметр, відсікається, а клік усе одно проходить - тримайте мітки компактними.
  • Rate limit на тестах. Кліковий endpoint пропускає 60 запитів на хвилину з однієї IP; довбання з однієї машини поверне 429 і нічого не скаже про реальний трафік.
  • Пошук проти фільтрів. Рядок пошуку фільтрує лише вже завантажені на сторінці рядки; фільтри статусу/кампанії/дати роблять запит до сервера. На великих акаунтах спершу фільтруйте, потім шукайте.
  • Порожнє geo в частині рядків. Країну беруть за IP відвідувача, тому вона порожня там, де IP ні у що не резолвиться: ваші власні перевірки з приватної мережі та невелика частка адрес, яких немає в базі. Якщо порожня ціла кампанія, дивіться не на кампанію, а на те, що стоїть перед посиланням: проксі, який підмінює клієнтський IP.
  • Міст у зовнішній трекер. Якщо кліки йдуть далі в Keitaro чи подібний трекер, вставте {click_id} у «URL редиректу» кампанії, щоб потім можна було повернути конверсію назад.