Заявка нажата, а её нет: где теряются лиды между кнопкой и CRM
Между нажатой кнопкой и звонком менеджера — пять звеньев, и каждое ломается по-своему. Как проверить каждое самому и по каким цифрам видно, где именно утекает бюджет.
Между пальцем на кнопке «Заказать» и звонком менеджера — пять отдельных звеньев. Ни одно из них не кричит, когда ломается: бюджет списывается одинаково и тогда, когда форма принимает заявки, и тогда, когда она молча отклоняет номер с пробелами.
Начинать проверку стоит с формы. Не потому, что там всегда самая большая дыра — заранее этого никто не знает, — а из-за характера поломки. Форма ломается тихо и непрерывно, без каких-либо сигналов. Доставка в CRM ломается редко, зато сразу и на все заявки — это видно за день, если есть на что смотреть. Менеджер не ломается вовсе, он медленно ползёт: сегодня перезванивают быстро, через месяц — уже под вечер.
Звено 1. Форма на странице
Валидация телефона. Классика — регулярка, которая принимает только +380671234567. А человек вводит 067 123 45 67, 0671234567, 380-67-123-45-67 или номер другой страны. Проверка занимает несколько минут: открой свой лендинг с телефона и отправь заявку каждым из этих форматов подряд.
Хоть один не прошёл — убирай не маску, а отказ. Маска сама по себе не враг, она помогает вводить. Убивает жёсткая проверка, которая отбрасывает всё, что не совпало с шаблоном: вставленное из буфера 380671234567, пробелы, скобки, зарубежный номер. Поле должно принимать всё, похожее на номер, а нормализацию делай на сервере.
Имя и адрес. Проверка «только кириллица» режет людей с латинской раскладкой. Запрет апострофа режет Демьяненко, Вячеслава и Григорьева. Запрет дефиса — Ковальчук-Стороженко. Вместе с ними не пройдёт «улица Демьяна Коротченко». Это не экзотика, это обычные украинские данные.
Лишние обязательные поля. Для товарки достаточно имени и телефона. Email, город, отделение почты, комментарий — всё это выясняется при подтверждении звонком. Каждое дополнительное обязательное поле — ещё один момент, в который человек закрывает вкладку.
Капча. Она режет живых людей, и с этим нужно считаться. Но спам тоже не бесплатный: он съедает время менеджера, засоряет Telegram и CRM и портит статистику по источникам — ту самую, по которой ты потом ищешь утечку. Сначала поставь фильтры, которых человек не видит: скрытое поле-ловушка, лимит заявок с одного IP в минуту, отсечение отправок, случившихся быстрее, чем человек физически успел бы набрать номер. Капча — крайнее средство, когда заливка уже началась.
Состояние кнопки. Человек нажимает — ничего не меняется. Нажимает ещё раз, потом ещё. Дальше либо дубли в базе, либо уход со страницы. Минимум: кнопка блокируется сразу, показывает «Отправляем…», после успеха — отдельный экран благодарности.
Экран благодарности нужен человеку, чтобы он не нажимал повторно. А для аналитики единственное надёжное событие — это запись в твоей базе: клиентские события теряются при закрытой вкладке, оборванной сети и блокировщиках, поэтому всегда недосчитываются. И это не только про отчёты. Событие «заявка» кормит алгоритм рекламы — по нему он ищет похожих людей. Недосчитанное событие означает худшую оптимизацию показов, а не просто заниженную строку в таблице.
Звено 2. Отправка
Мобильный интернет — это лифт, подземный переход, маршрутка и одна риска сигнала. Запрос уходит и не доходит.
Повторные попытки здесь спасают, но только с ключом идемпотентности: форма один раз генерирует идентификатор заявки и шлёт его с каждой попыткой, а сервер по этому ключу отсекает повтор. Без ключа плохая сеть превращается в дубли, а дубль — это второй звонок тому же человеку и испорченная конверсия в отчёте.
Что проверишь сам: DevTools → режим Offline или Slow 3G → нажми кнопку. Страница молчит или показывает «успех», которого не было? Ровно так она ведёт себя у части твоего мобильного трафика.
Что спросить у платформы или разработчика, дословно:
- есть ли повторные попытки доставки и отсекаются ли дубли по ключу заявки?
- вижу ли я неудачные отправки, а не только успешные?
- где посмотреть счётчик доставленных?
Если ответов на эти вопросы нет — это и есть ответ.
Звено 3. Приём на сервере
Запрос дошёл, но запись не создалась: ошибка 500, ограничение длины поля, эмодзи в имени, антибот хостинга, который режет POST с определённых подсетей.
Проверка одна: логируются ли неудачные попытки. Если у тебя есть таблица только с успешными заявками, ты физически не можешь узнать, сколько их было на самом деле. Это тоже вопрос к платформе, а не к себе.
Звено 4. Доставка в Telegram и CRM
Это звено ломается редко, но сразу полностью — и именно поэтому его проверяют каждый день, а не «когда покажется странным».
Telegram. Бот не напишет тебе, пока ты сам не нажал /start. Дальше: бота заблокировали, его выгнали из группы, группа стала супергруппой и chat_id изменился, токен перевыпустили в BotFather. Telegram честно возвращает ошибку в ответ — но если этот ответ никто не читает, заявка «отправлена» только в твоём воображении.
CRM. Протух API-ключ. В воронке появилось новое обязательное поле, и сделка больше не создаётся. Превышен лимит запросов. Или худшее: вебхук возвращает 200, а внутри молча ничего не создаёт.
Что делать:
- каждый день одна тестовая заявка с именем «тест» — руками или по расписанию;
- две цифры рядом: создано заявок за сутки и доставлено в CRM за сутки;
- уведомление об ошибке доставки, а не только об успехе. Тишина не означает, что всё хорошо.
Звено 5. Менеджер
Заявка есть, звонка нет. Или звонок вечером, когда человек уже заказал там, где перезвонили сразу. Это звено невозможно починить кодом — только регламентом и контролем времени первого касания.
Минимум, который должен быть виден: статус заявки и время первого касания. Цель ставь себе сам, но по нашему опыту разумная планка в рабочее время — несколько минут, пока человек ещё смотрит в телефон. А заявка, которая висит в статусе «Новая» заметно дольше остальных, — это уже не очередь, это забыли.
Раз в неделю бери десяток заявок прошлой недели и звони сам. Два вопроса: звонили ли вам и предложили ли то, что вы заказывали. Считай долю тех, до кого никто не дошёл, — это и есть размер пятого звена в твоих цифрах, а не в чужих.
Как посчитать, где именно утекает
Нужна не одна цифра «конверсия», а лестница:
| Шаг | Откуда цифра |
|---|---|
| Уникальные посетители | аналитика лендинга |
| Нажатия «Заказать» | событие в аналитике, уникальные, не все клики |
| Заявка создана | твоя база |
| Заявка доставлена в Telegram/CRM | счётчик успешных доставок |
| Первый звонок | статус в CRM |
Клик — это намерение, а не «да». Тот же пользователь, который нажал трижды, даёт три события и фальшивый разрыв между кнопкой и заявкой, поэтому считай уникальные нажатия.
Дальше арифметика, которую каждый проверяет на своих данных. Допустим, за неделю у тебя сто уникальных нажатий. Если в базе при этом восемьдесят заявок — пятая часть интереса сгорела в форме или на отправке. Если из тех восьмидесяти в CRM доехало семьдесят — десять заявок ты оплатил и не увидел: проверяй токен, chat_id, обязательные поля воронки. А если звонков было пятьдесят — это уже не техника, а работа отдела продаж.
Сколько стоит расхождение между «создано» и «доставлено»? Не цену товара. Умножь её на свою конверсию заявки в подтверждённый заказ, при наложенном платеже — ещё и на процент выкупа, и уже это на маржу с единицы. Посчитай один раз — дальше будешь смотреть на этот счётчик каждый день без лишних объяснений.
Почему заявка должна сначала лечь к тебе
Самая распространённая ошибка в архитектуре: форма отправляет данные сразу в чужой вебхук — и больше никуда. Пока CRM живая, всё отлично. В момент, когда она недоступна, заявки не просто не доходят — их негде посчитать. Ты не узнаешь ни сколько их было, ни чьи это были номера.
Правильный порядок: сначала запись в собственную базу с временем, UTM и sub-метками; сразу экран благодарности человеку; и только потом доставка в Telegram и CRM. В LandEmpire форма работает именно так: заявка сначала ложится в собственную мини-CRM со статусами и выгрузкой в CSV и уже оттуда идёт в Telegram, вебхуки и KeyCRM. Не зашло в CRM — заявка всё равно у тебя, с номером и источником.
Что сделать сегодня
- Отправь заявку с собственного телефона всеми форматами, которыми люди реально пишут номер. Хоть один не прошёл — убирай не маску, а отказ: нормализуй номер на сервере.
- Выброси из формы все обязательные поля, кроме имени и телефона. Остальное спрашивает менеджер при подтверждении.
- Поставь ежедневную тестовую заявку и проверь два факта: пришла в Telegram, создалась сделка в CRM.
- Заведи две цифры рядом — «создано за сутки» и «доставлено за сутки». Расхождение умножь на конверсию в подтверждённый заказ, выкуп и маржу: это цена поломки.
- Позвони десяти клиентам прошлой недели и спроси, звонили ли им.
Соберите такой лендинг сами — за вечер
В LandEmpire есть готовые шаблоны под товарку, заявки падают в Telegram, домен подключается за пару минут, а статистика по UTM показывает, откуда пришла каждая заявка. Стартовый тариф бесплатный — карта на старте не нужна.
Создать лендинг бесплатно