Мост PostHog, Mixpanel & Amplitude

Продуктовая аналитика говорит, что произошло. MousePlayer показывает, почему. Мост связывает оба инструмента в двух направлениях: уход из воронки в одном клике от объясняющей его записи.

1. Проблема: числа без лиц

Продуктовая аналитика даёт воронку: 1 000 пользователей дошли до оформления, 620 ушли. Это точное измерение невидимой пока проблемы. Несколько записей из этих 620 обычно дают ответ за минуты — если перейти от диаграммы к нужным сеансам можно без экспорта ID и ручного поиска.

Мост продуктовой аналитики устраняет пробел. Он работает внутри mp.js и автоматически связывает системы:

  • Исходящее: каждое событие аналитики содержит свойство mouseplayer_session_url . Откройте событие, нажмите ссылку и смотрите сеанс.
  • Входящее: Идентификатор посетителя distinct_id считывается и сохраняется в сеансе MousePlayer, позволяя искать записи по тому же ID, что в PostHog, Mixpanel или Amplitude.

Код не нужен. Мост сам находит SDK аналитики. Вы не вызываете функции MousePlayer и не меняете отслеживание событий.

2. Включение

Способ А: панель (без кода)

  1. Откройте проект и вкладку Интеграции .
  2. Переключите Мост PostHog, Mixpanel & Amplitude в ON.
  3. Выберите свою платформу. Изменения сохраняются автоматически.

Настройка действует при следующей загрузке страницы сайта. Существующие сеансы задним числом не меняются.

Способ Б: ручная настройка скрипта

Для жёсткой настройки задайте два значения внутри window.mp_config:

<!-- MousePlayer SDK with the Product Analytics Bridge enabled --> <script> window.mp_config = { channel: 'YOUR_CHANNEL_ID', analytics_bridge_active: true, analytics_provider: 'posthog' // 'posthog', 'mixpanel' or 'amplitude' }; </script>

3. Действия для каждой платформы

У платформ разные API, поэтому мост использует привычный вызов каждой. Настройка не нужна — это следует выбору поставщика.

ПлатформаИсходящее (URL записи)Входящее (идентификатор)
PostHog posthog.register() — зарегистрировано как суперсвойство и добавляется ко всем последующим событиям posthog.get_distinct_id()
Mixpanel mixpanel.register() — такое же поведение суперсвойства mixpanel.get_distinct_id()
Amplitude setUserProperties() — задано как свойство пользователя getDeviceId(), с переходом на getInstance().options.deviceId в старом SDK

Суперсвойство и свойство пользователя: в PostHog и Mixpanel URL записи добавляется к последующим событиям: он есть у каждого после инициализации моста — но не у отправленных раньше при загрузке страницы.

4. Идентификация: от distinct_id к именованному сеансу

Входящую часть часто недооценивают. Без неё сеансы MousePlayer анонимны: их можно смотреть, но не ответить на запрос «покажите записи клиента, который ушёл на прошлой неделе».

После включения моста distinct_id из аналитики записывается в поле сеанса custom_user_id — то же поле, куда пишет ручной вызов SDK:

// The manual equivalent - you do NOT need this when the bridge is active mp('set', { user_id: 'your-internal-id' });

Если вы уже сами вызываете mp('set') , продолжайте. Явно заданный вами ID надёжнее, потому что это ваш первичный ключ, а не браузерный ID аналитики.

О конфиденциальности: передаётся лишь уже назначенный аналитикой ID. Почта, имя и другие личные поля SDK не читаются. Опишите обработку в своей политике и блокируйте скрипт инструментом согласия, если оно — ваше правовое основание.

5. Техническое поведение

SDK аналитики обычно загружаются асинхронно, нередко после начала работы mp.js . Поэтому единственная попытка при запуске не сработала бы на большинстве сайтов.

  • Мост повторяет попытку каждые 1.5 секунды, до десяти раз, прекращая после завершения обоих направлений.
  • Каждое направление завершается независимо, поэтому URL записи не отправляется повторно во время ожидания ID.
  • Если SDK не появился, мост молча прекращает попытки примерно через 15 секунд. Консоль пуста, запись сеанса продолжается без изменений.
  • Идентификаторы длиннее 128 символов игнорируются, а не обрезаются, чтобы не сохранять половину ID без возможности совпадения.

6. Проверка работы

  1. Откройте сайт в обычной вкладке и немного повзаимодействуйте.
  2. В аналитике откройте последнее событие и найдите свойство mouseplayer_session_url . Переход должен открыть запись.
  3. В MousePlayer откройте Обозреватель пользователей. Сеансы с ID показывают его вместо сгенерированного псевдонима.

Если ничего не появилось

  • Свойства нет у всех событий: проверьте загрузку SDK на странице и выбор соответствующей платформы. Выбор PostHog не прочитает Mixpanel.
  • Свойство лишь у поздних событий: это ожидаемо, см. раздел 3.
  • URL есть, ID нет: SDK ещё не назначил distinct_id , что нормально до идентификации пользователя. ID появится при последующей загрузке страницы.
  • Тестируете с входом администратора: некоторые установки исключают внутренний трафик. Попробуйте приватное окно.

Все названные товарные знаки принадлежат владельцам. У MousePlayer нет деловых отношений с поставщиками.