Коротко. Этапы сделки в воронке продаж описываются по одной схеме: событие входа, ответственный, обязательные поля, предельный срок и событие выхода. Этап заводят только там, где кто-то принимает решение и переход можно зафиксировать фактом, а не галочкой менеджера. Рабочий минимум — 5 этапов, для B2B с расчётом и согласованием — 6–7. В Битрикс24 и amoCRM это фиксируется стадиями, обязательными полями и автозадачами; перенастройка занимает один-два дня, автоматизация процессов — от 30 000 ₽.
Этап сделки — это решение, а не действие менеджера
Главная путаница возникает на старте: этапом называют то, что делает менеджер, — «позвонил», «отправил письмо», «напомнил». Это действия, их место в задачах и в истории коммуникаций. Этап сделки в воронке продаж отражает изменение состояния сделки, то есть решение, принятое клиентом или вашей стороной.
Проверка простая: у этапа должно быть внешнее событие входа, которое можно назвать вслух. «КП отправлено» — событие есть, документ ушёл. «Работаем с клиентом» — события нет, это состояние менеджера, а не сделки. Если этап нельзя подтвердить фактом (отправленный файл, подписанный договор, поступивший платёж, назначенная встреча в календаре), он превращается в галочку, а отчёт по такой воронке отражает аккуратность заполнения, а не реальность.
Второй фильтр — проскакивание. Если все сделки пролетают этап за минуту, он не отражает решение и подлежит удалению: детализация имитируется, а конверсия по нему всегда равна ста процентам.
Карточка этапа: пять полей описания
Каждый этап описывается одинаково, и это описание помещается в одну строку таблицы.
Событие входа. Что произошло, чтобы сделка попала сюда: поступила заявка, подтверждён объём и срок, отправлена спецификация, получено согласие ЛПР.
Ответственный. Один человек или одна роль. На этапе технического расчёта ответственным часто оказывается инженер, а не продавец — и если это не зафиксировано, сделка встаёт именно здесь.
Обязательные поля. Что должно быть заполнено, чтобы сделку можно было двинуть дальше: объём, адрес, срок, сумма, контакт ЛПР. Без такого требования данные не собираются никогда — не из вредности, а потому что при звонке некогда.
Предельный срок. Сколько дней сделка может находиться на этапе. Просроченные попадают в отдельный отчёт, а не стареют молча.
Событие выхода. Что считается переходом дальше. Формулировка должна совпадать с событием входа следующего этапа — иначе между ними образуется зазор, в котором сделки живут неопределённо долго.
Типовой набор этапов и как его сокращать
Универсального списка не существует, но каркас для B2B и производства выглядит так: новая заявка → квалификация → расчёт или спецификация → предложение отправлено → согласование с ЛПР → договор → оплата. Для услуг вместо расчёта — бриф или встреча. Для интернет-магазина воронка почти полностью автоматическая: заказ → подтверждён → оплачен → отгружен → доставлен.
Сокращают по двум признакам. Первый — статистика: если на этап за квартал приходит меньше 30–50 переходов, конверсия по нему случайна, и этап стоит объединить с соседним. Второй — проскакивание, о котором сказано выше. Обязательных этапов на самом деле три: заявка, квалификация и оплата. Всё остальное добавляется тогда, когда сделки регулярно застревают в промежутке и причина непонятна.
Как зафиксировать этапы в Битрикс24 и amoCRM
Настройка идёт в четыре приёма и занимает один-два дня.
Сначала — стадии: переименовываются под ваш процесс, лишние удаляются, порядок выстраивается по реальной логике. Названия пишутся результатом, а не процессом: не «работа с КП», а «КП отправлено».
Затем — обязательные поля на входе в стадию. Это единственный надёжный способ собрать данные: система просто не даёт двинуть сделку без заполненного объёма или суммы. Требований должно быть немного, два-три поля на этап, иначе менеджеры начнут вписывать «-» и качество данных обнулится.
Третий приём — автозадачи и сроки: задача на первый звонок в момент поступления заявки, напоминание через оговорённый срок после отправки предложения, контроль срока нахождения на стадии. Это и есть та часть, которую закрывает автоматизация процессов от 30 000 ₽: этап физически нельзя забыть.
Четвёртый — закрытие сделок. Отказ не является этапом воронки: это закрытие с обязательной причиной из фиксированного списка — дорого, не тот объём, сроки, выбрал конкурента, отложил проект. Через два-три месяца этот список превращается в карту возражений, из которой берутся гипотезы для сайта и рекламы.
Связь этапов с сайтом и аналитикой
Первые этапы воронки живут не в CRM, а на сайте: просмотр страницы, переход в форму, отправка заявки, звонок. Цель в Яндекс.Метрике фиксирует обращение, CRM — всё, что после. Чтобы склеить два слоя, в сделку передаются метки источника и идентификатор визита — тогда по каналу видно не только количество заявок, но и сумму оплат.
Мы собираем такой контур на связке Метрики и Битрикс24: настройка аналитики стоит от 20 000 ₽, сквозная схема с интеграцией CRM — от 80 000 ₽. Если формы на сайте не передают источник или заявка приходит только на почту, начинать надо с этого — иначе описанные этапы останутся схемой на бумаге. Смежные материалы собраны в разделе конверсия сайта, а вопросы к самой посадочной странице закрывает разработка сайта от 80 000 ₽ за лендинг.
Контроль качества данных
Описанные этапы работают ровно до тех пор, пока их заполняют. Три регулярные проверки занимают полчаса в неделю: сделки без движения дольше предельного срока, сделки с пустыми обязательными полями и закрытые отказы без указанной причины. Если хотя бы один из трёх списков стабильно длинный, отчёт по воронке пока нельзя использовать для решений — сначала чинится дисциплина, потом считается конверсия.
Чем этап сделки отличается от статуса задачи
Этап описывает состояние сделки и меняется по внешнему событию: отправлено КП, подписан договор, поступила оплата. Задача — это действие конкретного человека внутри этапа. Смешение приводит к воронкам вроде «позвонил → перезвонил → ещё раз позвонил», по которым невозможно понять, где сделка на самом деле.
Сколько обязательных полей ставить на этап
Два-три, не больше. Требуйте только то, без чего следующий этап невозможен: объём и срок перед расчётом, сумма перед предложением, реквизиты перед договором. Длинные обязательные формы менеджеры обходят прочерками, и данные становятся хуже, чем были без требований.
Нужен ли отдельный этап для отказов и «думает»
Нет. Отказ — закрытие сделки с причиной, а «думает» — это не состояние сделки, а отсутствие следующего шага. Вместо такого этапа ставится дата следующего касания: если её нет, сделка считается зависшей и попадает в отчёт по просрочке.
Как переносить активные сделки при смене этапов
Вручную и один раз, силами руководителя отдела вместе с менеджерами, за один подход. Автоматический перенос по правилу «старая стадия → новая» почти всегда даёт мусор, потому что старые названия были размытыми. Закладывайте на это неделю вместе с обсуждением.
Как проверить, что этапы описаны корректно
Возьмите десять закрытых сделок за прошлый месяц и восстановите их путь по карточкам. Если по истории видно, когда сделка вошла в каждый этап и почему вышла, описание рабочее. Если приходится спрашивать у менеджера, что тогда произошло, этапы описаны формально.
Через сколько после перенастройки можно смотреть конверсию
Через две-три недели при коротком цикле сделки и через квартал при длинном. Раньше данные несопоставимы: часть сделок пришла по старой схеме, часть по новой, и разница в конверсии отражает переезд, а не изменения в процессе.
Опишем этапы и настроим их в вашей CRM
Разберём реальный процесс продаж, соберём карточку каждого этапа с полями и сроками и покажем, что нужно донастроить в Битрикс24 или amoCRM, чтобы отчёт по воронке отражал факт. Экспресс-аудит бесплатный, развёрнутый — от 25 000 ₽.
Отправка заявки в CRM с сервера
Форма отправляет данные на свой обработчик, а он уже обращается к CRM. Так ключ доступа не попадает в браузер.
// обработчик на стороне сайта
add_action('wp_ajax_nopriv_send_lead', function () {
check_ajax_referer('lead_nonce', 'nonce');
$payload = [
'fields' => [
'TITLE' => 'Заявка с сайта',
'NAME' => sanitize_text_field($_POST['name'] ?? ''),
'PHONE' => [['VALUE' => sanitize_text_field($_POST['phone'] ?? '')]],
],
];
wp_remote_post(CRM_WEBHOOK_URL, [
'headers' => ['Content-Type' => 'application/json'],
'body' => wp_json_encode($payload),
'timeout' => 10,
]);
wp_send_json_success();
});