Девять форм, один pipeline — и атрибуция, которая выдерживает проверку
Каждая форма на наших собственных сайтах пишет в один и тот же backend. Он сообщает, что произошло на самом деле, вместо фиксированного «успешно», и отслеживает реальный источник лида, не путая страницу приземления с источником трафика.
Операционная проблема
Каждая форма лида на собственных сайтах LATYNEX — запросы на расчёт, assessment, контактные формы, передачи от AI-консультантов, приём заявок на видеомонтаж — рисковала стать своим изолированным островом с собственным пониманием того, что такое «лид», без общего способа понять, откуда он реально пришёл.
Почему готовые инструменты не подходили
Lead pipeline, который сообщает об успехе вне зависимости от того, что произошло на самом деле, подрывает доверие в момент первого скрытого сбоя — а большинство наспех собранных обработчиков форм делают именно это. Отдельно, большинство настроек атрибуции путают страницу, на которую попал лид, с тем, откуда посетитель пришёл на самом деле — это даёт дашборд, который выглядит информативным, но отвечает не на тот вопрос.
Что построил LATYNEX
Общий backend за каждой формой лида: сначала сохранение, идемпотентность (двойной клик или повтор не создаёт дублей), модель статусов, отражающая реальность, а не фиксированное «успешно». Поверх — система first-touch/last-touch атрибуции, которая читает referrer, UTM-параметры и click ID платной рекламы на сервере, нормализует их в реальную метку источника трафика (Google Ads, ChatGPT, LinkedIn, Direct, Unknown — Unknown показывается, а не скрывается), и хранит идентификатор посетителя/сессии только если посетитель реально дал согласие на аналитику.
Как это работает
Каждый лид сохраняется до попытки доставки. Если сохранение не удалось, а доставка прошла (или наоборот) — запись помечается для ручного восстановления с reference ID и отдельным операционным алертом; система никогда молча не сообщает об успехе. Редактирование PII в логах проверяется автотестами, включая отдельный тест на отсутствие PII в логах. Admin-дашборд агрегирует по источнику трафика, странице формы и качеству лида полностью на SQL-стороне сервера — никогда не отдавая сырые строки в браузер.
Как мы используем это внутри
Мы нашли реальный баг в собственном процессе с помощью именно этой системы: 04.08.2026 первая версия дашборда считала «ещё не анонимизирован» равным «реальный лид», что кратко показало 6 самоописанных тестовых заявок (буквально названных «AUDIT TEST — DELETE ME» в собственных полях, оставшихся от предыдущего раунда QA) как реальные коммерческие лиды по Digital. Мы поймали это, вручную проверили каждую затронутую запись и перестроили логику классификации вокруг явного, управляемого человеком статуса `confirmed_real` / `confirmed_test` / `uncertain` / `unreviewed` — отсутствие анонимизации больше не означает «реальный». Это исправление уже в работе.
Что подтверждено
Объединяет 9 типов лидов в одном pipeline, покрыто 30+ автотестами, проверено в production в августе 2026 — включая реальный инцидент, когда сохранение данных временно стало недоступно, и pipeline корректно сообщил о деградированном состоянии вместо ложного успеха. Система ручной классификации real/test/uncertain работает, логируется в аудит и была применена на реальном инциденте с качеством данных, а не только гипотетически.
Что намеренно не заявляется
Мы пока не утверждаем, что эта система атрибуции говорит нам «какой канал маркетинга работает лучше всего» — текущий объём лидов через подтверждённо-реальную классификацию слишком мал (сейчас однозначное число), чтобы этот вывод что-то значил, и дашборд явно показывает «insufficient data» вместо вводящего в заблуждение процента при недостаточной выборке. Мы также не заявляем об отсутствии багов — инцидент выше раскрыт, а не скрыт, потому что именно исправление и есть доказательство.
Как эту архитектуру можно адаптировать
Любой бизнес с более чем одной точкой захвата лидов (форма на сайте, чат-виджет, лендинг под кампанию) сталкивается с теми же двумя проблемами: свести их в один pipeline и понять, откуда лид пришёл на самом деле, не гадая. Паттерн «сначала объединить, явно классифицировать, никогда не подделывать успех» напрямую переносится на CRM-интеграцию и lead operations для других компаний.
Что подтверждено
- ✓9 типов лидов объединены в одном pipeline, 30+ автотестов, проверено в production в августе 2026
- ✓Реальный инцидент (деградация хранилища) корректно показан вместо ложного сообщения об успехе
- ✓Ручная классификация real/test/uncertain внедрена и использована для исправления реального бага с качеством данных на той же неделе
Что намеренно не заявляется
- –Пока нет вывода «лучший канал маркетинга» — выборка слишком мала, и дашборд честно об этом сообщает
- –Не система без багов — инцидент с классификацией от 04.08.2026 раскрыт, а не скрыт