7 хв читанняІнтеграції

Відстеження посилань Mixpanel: кліки коротких посилань як події

Відстеження посилань Mixpanel з Elido: кожен клік по короткому посиланню стає подією link_click на боці сервера. Налаштування, властивості, обмеження ідентифікації і як це перевірити.

Marius Voß
DevRel · edge infra
Діаграма відстеження посилань Mixpanel: клік по короткому посиланню виходить з редиректу Elido як подія link_click на боці сервера і потрапляє в перегляд Events Mixpanel

Відстеження посилань Mixpanel в Elido - на боці сервера і однонапрямлене: щоразу, коли хтось клікає одне з ваших коротких посилань, Elido надсилає подію link_click на кінцеву точку track Mixpanel з вашим токеном проєкту. Подія несе slug посилання, ID посилання, країну і пристрій відвідувача, ціль, куди його направили, і мітку часу. У браузері відвідувача нічого не виконується, тож блокувальники реклами і банери згоди його не торкаються.

Заковика - ідентичність. Кожна подія прив'язана до посилання, а не до людини, тож ви можете рахувати і сегментувати кліки в Mixpanel цілий день, але не можете простежити людину, що клікнула, у вашому продукті лише за цією подією. Я покажу, для чого це годиться, як налаштувати, як перевірити в перегляді Events, і місця, де я б обрав щось інше.

Якщо ви ще визначаєтеся, що тегувати, перш ніж щось із цього робити, наріжний гайд наскрізне відстеження UTM - кращий відправний пункт. Mixpanel бачить лише те, що несе посилання.

Що Elido надсилає в Mixpanel на кожен клік

Один клік, одна подія. Пересилач будує пакет з однією подією і надсилає POST на /track на хості прийому, що відповідає налаштуванню Data residency інтеграції (api.mixpanel.com для US, api-eu.mixpanel.com для EU, api-in.mixpanel.com для India), автентифікований токеном всередині властивостей, саме так API прийому Mixpanel очікує отримувати події на боці сервера.

Ось повний payload, скорочений лише щодо значення токена:

[
  {
    "event": "link_click",
    "properties": {
      "token": "<your project token>",
      "distinct_id": "elido-link-4711",
      "workspace_id": 12,
      "link_id": 4711,
      "slug": "spring-26",
      "country": "DE",
      "device": "mobile",
      "destination": "https://shop.example/spring?utm_source=newsletter",
      "time": 1790000000,
      "ip": "203.0.113.24"
    }
  }
]

Це все. Короткий список, і навмисно.

ВластивістьЩо вона міститьЩо з нею робити в Mixpanel
slug / link_idЯке коротке посилання клікнулиВимір розбивки для кожного звіту
destinationURL-адреса, на яку направили цього відвідувача, після будь-яких правил маршрутизаціїВизначайте, який гео- чи пристроєвий варіант спрацював
country, deviceВизначено на редиректіСегментуйте, не покладаючись на власне припущення Mixpanel
ipАдреса відвідувачаMixpanel визначає місто і регіон, а потім відкидає її
distinct_idelido-link-<link_id>Прочитайте розділ про ідентичність, перш ніж використовувати Uniques

Варто знати дві деталі. destination - це вже визначена ціль, тож якщо розумне посилання надсилає iPhone на App Store, а всіх інших - на ваш сайт, ви побачите обидві URL-адреси. А UTM-теги подорожують лише всередині цього рядка цілі; окремих властивостей utm_source чи utm_campaign немає, тож якщо вам потрібні вони як колонки, доведеться створити похідну властивість у Mixpanel. Це та єдина річ у налаштуванні, яку я зробив би з першого дня.

Очевидні боти, краулери, що самі себе видають у user agent, фільтруються на редиректі і ніколи не доходять до Mixpanel.

Налаштування інтеграції з Mixpanel

Все налаштування - два поля. Щоб надсилати клікові події в Mixpanel, вам потрібен проєкт Mixpanel і його токен проєкту, що живе під Project Settings у Mixpanel; токен - це ключ для запису, призначений для вбудовування, тож вставити його у вендора - це нормально. Не вставляйте API-секрет - це інший рядок, і не він потрібен пересилачу.

  1. У вашому робочому просторі Elido відкрийте Integrations і оберіть картку Mixpanel.
  2. Натисніть Connect Mixpanel, вставте токен у Project Token і оберіть Data residency: US (за замовчуванням), EU або India, відповідно до значення Data Residency у налаштуваннях вашого проєкту Mixpanel. Збережіть. Elido шифрує токен при зберіганні і ніколи не показує його вам повністю знову.
  3. Зачекайте кілька хвилин. Налаштування інтеграції робочого простору коротко кешуються на боці пересилання, тож перші кліки після збереження можуть ще не бути надіслані.
  4. Клікніть одне зі своїх посилань з телефону.

Перемикача для окремого посилання немає. Після підключення пересилається кожен клік у робочому просторі, що підходить команді, яка живе в Mixpanel, і не підходить робочому простору, що хостить короткі посилання для двадцяти непов'язаних клієнтів. Якщо це про вас, спершу розділіть клієнтів на окремі робочі простори.

Перевірка перегляду Events, перш ніж довіряти чомусь

Те, що Mixpanel раніше називав Live View, тепер називається переглядом Events, під Data в лівій навігації, і гайд Mixpanel з дебагу рекомендує саме його як першу зупинку для цього завдання. Відкрийте його, відфільтруйте за link_click, потім торкніться вашого короткого посилання з телефону, що не в офісному Wi-Fi.

Потік кліку короткого посилання в Mixpanel: відвідувач торкається посилання, редирект Elido відповідає першим і записує клік, пересилач надсилає подію link_click на кінцеву точку track Mixpanel для регіону Data residency, встановленого в Elido (US, EU або India), з однією повторною спробою, і подія з'являється в перегляді Events Mixpanel

Ви маєте побачити подію протягом секунд. Розгорніть її і перевірте три речі: slug збігається з посиланням, яке ви торкнулися, country - там, де насправді телефон, а власні місто і регіон Mixpanel заповнені з ip. Якщо місто показує дата-центр, ваш тест пройшов через VPN.

Кнопка Test connection на панелі інтеграції надсилає одну подію link_click, позначену elido_test: true, і показує відповідь Mixpanel під кнопкою. Корисно, але не доказ: кінцева точка track Mixpanel приймає будь-який токен і ніколи не перевіряє резидентність, тож зелений результат із неправильним токеном чи неправильним регіоном все одно означає, що у ваш проєкт нічого не потрапляє. Подія, яку ви бачите від реального кліку, - єдиний доказ, який я б прийняв.

Чому distinct_id прив'язаний до посилання і що це ламає

Ось обмеження ідентичності, сказане прямо. distinct_id - це elido-link- плюс ID посилання, тож кожен клік по spring-26 належить одному синтетичному «користувачу» Mixpanel.

distinct_id Mixpanel для кожного посилання: три різні відвідувачі клікають те саме коротке посилання, і всі три події link_click поділяють distinct_id elido-link-4711, тож Mixpanel рахує одного користувача, поки SDK Mixpanel на посадковій сторінці бачить три окремі пристрої з UTM-тегами

Підсумки працюють. Розбивки за slug, країною, пристроєм і ціллю працюють, так само як і тренди в часі. Ламаються три речі:

  • Uniques на link_click рахують посилання, а не людей. Кампанія з 40 000 кліків на двох посиланнях показує двох унікальних користувачів.
  • Воронки, що починаються з link_click і закінчуються вашою подією реєстрації, не з'єднаються, бо реєстрація належить іншому distinct_id.

Є й третя, з якою більшість команд ніколи не стикається. Mixpanel застосовує ліміти hot shard у 200 тисяч подій на distinct_id на день, і понад це події перейменовуються в $hotshard_events. Одне посилання, що по-справжньому стає вірусним, може перетнути цю межу, і оскільки ID прив'язаний до посилання, вдаряє саме по ньому.

Чому не ID для кожного відвідувача? Бо редирект не знає, хто відвідувач, і я б радше не встановлював cookie на домені, який відвідувач ніколи не обирав відвідати. Чесний компроміс.

Прив'язка кліків коротких посилань до користувачів робочим способом

Патерн, що працює, використовує обидві половини для того, у чому кожна хороша. Хай серверна подія Elido дає вам повну кількість кліків, включно з кліками людей, що пішли до завантаження вашої сторінки. Хай SDK Mixpanel на вашій посадковій сторінці обробляє ідентичність.

Розмістіть UTM-теги на цільовій URL-адресі. JavaScript-бібліотека Mixpanel відстежує параметри UTM за замовчуванням і записує значення першого дотику в профілі, тож коли цей відвідувач пізніше реєструється, і ви викликаєте identify, кампанія прив'язується до реальної людини. Клік короткого посилання і перегляд посадкової сторінки тоді поділяють значення кампанії, а не ID користувача, і ви з'єднуєте їх за utm_campaign у звіті. Це з'єднання на рівні кампанії, грубіше за з'єднання на рівні користувача, і я вважаю, що це правильний рівень для цих даних у будь-якому разі.

Хочете бачити підсумки кліків і сесії посадкової сторінки поруч? Очікуйте, що вони не збігатимуться; кліки коротких посилань проти сесій GA4 пояснює, чому той самий розрив з'являється в будь-якому інструменті аналітики, включно з Mixpanel.

Якщо саме цього налаштування вам бракувало, підключіть робочий простір і надішліть наступну кампанію через брендовані посилання.

Де це не дотягує сьогодні

Три прогалини, ранжовані за тим, наскільки ймовірно вони вас вкусять.

IP-адреса відвідувача подорожує в кожній події. З EU-резидентністю вона йде на хост прийому ЄС; за замовчуванням у США - на кінцеву точку в США, і гайд з резидентності даних в ЄС розглядає, як це зважити. Щодо сторони Mixpanel, зокрема того, як перевірити резидентність вашого проєкту, див. Резидентність даних Mixpanel у ЄС.

Доставка - найкраща спроба, не гарантія. Невдалий POST отримує одну повторну спробу через секунду, а потім відкидається, а події не несуть $insert_id, тож повтор після повільного успіху може порахувати двічі.

У події немає ні реферера, ні браузера, а кліки, які редирект позначає підозрілими, все одно пересилаються. Перевіряйте дашборд аналітики кліків, коли вам потрібне саме це.

Конверсії сюди не входять. Відстежуйте дохід там, де живе ваш ID користувача.

Пов'язане в блозі

Поширені запитання

Як надсилати клікові події в Mixpanel з короткого посилання?

Вставте токен вашого проєкту Mixpanel в інтеграцію Mixpanel у вашому робочому просторі Elido і збережіть. Відтоді кожен клік по посиланню в цьому робочому просторі надсилається на боці сервера в Mixpanel як подія link_click, з slug, ID посилання, країною, пристроєм і ціллю як властивостями. На редиректі не виконується жоден JavaScript.

Яку назву події використовує Elido в Mixpanel?

Подія називається link_click, і назва фіксована. Будуйте свої звіти на цій назві. Якщо ви бачите на старіших сторінках Elido згадку іншої назви події, довіряйте тому, що приходить у ваш перегляд Events, бо саме це - реальний payload, який надсилає пересилач.

Чи може Mixpanel прив'язати клік по короткому посиланню до відомого користувача?

Не з самої пересланої події. Elido встановлює distinct_id як одне значення для кожного посилання, тож кожен клік по одному посиланню виглядає як той самий користувач Mixpanel. Щоб дістатися реальної людини, додайте UTM-теги на ціль і дозвольте SDK Mixpanel на вашій посадковій сторінці підхопити їх, а потім ідентифікуйте користувача там, як зазвичай.

Чому мої кліки Elido не з'являються в Mixpanel?

Перевірте три речі по порядку. Токен має бути токеном проєкту з правильного проєкту, а не API-секретом. Дайте кілька хвилин після збереження, перш ніж перший клік буде переслано. Нарешті, якщо ваш проєкт Mixpanel використовує EU або India Data Residency, встановіть таку саму резидентність в інтеграції Elido: події, надіслані на неправильний хост прийому, взагалі не приймаються.

Чи пересилає Elido конверсії в Mixpanel теж?

Інтеграція з Mixpanel охоплює лише кліки; окремої події конверсії в payload сьогодні немає. Для доходу відстежуйте покупку з вашого власного бекенду чи SDK Mixpanel з вашим реальним ID користувача. Саме там живе ідентичність, тож конверсія потрапляє на правильний профіль замість заповнювача для кожного посилання.

Чи зберігає Mixpanel IP-адресу відвідувача, яку надсилає Elido?

Згідно з документацією Mixpanel про геолокацію, властивість ip події використовується для визначення країни, регіону і міста, а потім відкидається, перш ніж подію збережуть. Тож ви отримуєте розташування на рівні міста для кожного кліку в Mixpanel, але сам IP не має з'являтися як властивість, придатна для запитів.

Спробуйте Elido

Вставте URL - отримайте коротке посилання

Без реєстрації. Посилання живе 30 днів. Зареєструйтесь, щоб зберегти назавжди.

Безкоштовно, без реєстрації · 2 на день

Спробуйте Elido

URL-скорочувач із хостингом у ЄС: власні домени, глибока аналітика, відкритий API. Безкоштовний тариф - без кредитної картки.

Теги
mixpanel link tracking
send click events to mixpanel
mixpanel short link clicks
mixpanel server-side tracking
mixpanel distinct_id
link click analytics

Читати далі