Все материалы
Продуктовая аналитикаматериалстарт

Воронка продаж: что это, этапы и как посчитать конверсию

Воронка продаж — путь клиента от первого контакта до оплаты по этапам. Этапы для B2C и B2B, конверсия шагов и сквозная, пример на данных и частые ошибки.

КейсПрактика25 сентября 2026 г.10 мин

Основатель сервиса видит в отчёте: за квартал три тысячи регистраций, платят меньше восьмисот. Маркетинг говорит, что лиды хорошие, продукт — что пользователи не доходят до оплаты. Чтобы спор перестал быть спором, нужна воронка продаж. Воронка продаж — это путь клиента от первого контакта до оплаты, разбитый на этапы, с числом клиентов на каждом из них. Конверсия между соседними этапами показывает, где теряется больше всего людей, а сквозная — какая доля входа доходит до денег. Воронка отвечает на вопрос «где мы теряем», но не на вопрос «почему».

Коротко

Воронка — модель пути клиента. Она полезна, пока все этапы определены одинаково для всех, кто её читает.

  • У каждого этапа должно быть проверяемое условие входа: событие, статус сделки, дата.
  • Конверсию считают двумя способами: от предыдущего этапа и от входа. Первая ищет узкое место, вторая показывает итог.
  • Воронку строят по когорте, которой хватило времени дойти до конца. Иначе свежие клиенты занижают конверсию.
  • Открытая и закрытая воронка дают разные числа. В примере ниже — 774 и 325 оплат на одних и тех же людях.
  • Чинить начинают там, где много потерь и есть понятная гипотеза, а не там, где самый низкий процент.

Что такое воронка продаж простыми словами

Представьте, что вы стоите у входа в магазин и считаете: зашли 1000 человек, до полки с товаром дошли 400, взяли товар в руки 150, заплатили 60. Каждая следующая цифра меньше предыдущей, и если нарисовать их полосами, получится воронка. На каждом этапе часть людей уходит, и задача — понять, на каком уходит неоправданно много.

Единица воронки — клиент или сделка, а не событие. Если один человек пять раз открыл страницу тарифов, на этапе «смотрел тарифы» он один. В B2C чаще считают людей, в B2B — сделки: одна компания может вести две сделки на разные продукты.

Термин пришёл из продаж, но тот же инструмент в продукте называют продуктовой или конверсионной воронкой. Разница в этапах: в продажах это статусы сделки в CRM, в продукте — действия в интерфейсе. Для подписочного сервиса обе картины часто совпадают: регистрация, первое полезное действие, оплата.

Этапы воронки продаж в B2C и B2B

Универсального списка этапов нет. Их выбирают так, чтобы между соседними этапами было одно решение клиента или одно действие продавца. Ниже — типичные варианты, от которых удобно отталкиваться.

Типичные этапы и условие перехода
МодельЭтапыКак понять, что этап пройден
Интернет-магазинвизит → карточка товара → корзина → оформление → оплатасобытия на сайте, заказ со статусом «оплачен»
Подписочный сервис, B2Cрегистрация → первое полезное действие → пробный период → оплата → продлениесобытия в продукте и платёжной системе
B2B, продажи через менеджералид → квалификация → встреча или демо → предложение → договор → оплатасмена статуса сделки в CRM с датой
Услуги с заявкойзаявка → звонок → замер или консультация → смета → оплатастатус заявки и отметка менеджера

Как посчитать конверсию воронки продаж

Конверсий в воронке две. Конверсия шага — доля тех, кто перешёл на этап, от тех, кто был на предыдущем. Сквозная — от тех, кто вошёл в воронку. Третья полезная величина — потери в людях: процент ничего не говорит о масштабе, если не знать базу.

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

Три числа для каждого этапа
конверсия шага = N(этап) ÷ N(предыдущий этап); сквозная = N(этап) ÷ N(вход); потери = N(предыдущий) − N(этап)

N — число уникальных клиентов или сделок одной когорты. В закрытой воронке сквозная конверсия = произведение конверсий всех шагов до этапа.

Пример воронки продаж на данных

Учебная база SQL-курса — подписочный сервис. Воронка продаж в нём: регистрация → создал рабочее пространство (workspace_created) → создал первый отчёт (report_created) → оплатил. Первая оплата наступает через 3–20 дней после регистрации, поэтому берём тех, кто зарегистрировался с 1 июня по 10 августа: у каждого было не меньше 20 дней до конца данных 30 августа. Таких 3283.

Конверсия шагов, сквозная конверсия и потери
ЭтапКлиентовОт предыдущегоОт регистрацииПотеряно
Регистрация3283—100%—
Рабочее пространство199660,8%60,8%1287
Первый отчёт129064,6%39,3%706
Оплата (открытая)77460,0%*23,6%516*
Оплата после отчёта (закрытая)32525,2%9,9%965
Воронка продаж учебной базы, регистрации 1 июня – 10 августа

Открытая воронка: на этапе «Оплата» все, кто заплатил, независимо от предыдущих шагов. Сквозная конверсия — 23,6%.

Регистрация100% от входа
Создал рабочее пространство61% от входа
Создал первый отчёт39% от входа
Оплатил24% от входа
Воронка продаж по зрелой когорте: открытый и закрытый вариант
with cohort as (
  select user_id, signup_date
  from users
  where signup_date <= date '2026-08-10'   -- у всех было ≥ 20 дней, чтобы заплатить
),
steps as (
  select c.user_id,
         min(e.event_time) filter (where e.event_name = 'workspace_created') as workspace_at,
         min(e.event_time) filter (where e.event_name = 'report_created')    as report_at,
         (select min(p.paid_at) from payments p where p.user_id = c.user_id) as paid_at
  from cohort c
  left join events e using (user_id)
  group by c.user_id
)
select
  count(*)                    as signups,
  count(workspace_at)         as workspace,
  count(report_at)            as report_open,
  count(paid_at)              as paid_open,
  count(*) filter (where report_at > workspace_at)            as report_closed,
  count(*) filter (where report_at > workspace_at
                     and paid_at >= report_at::date)          as paid_closed
from steps;
* Почему 60,0% — не конверсия шага

774 оплаты делятся на 1290 отчётов, но среди этих 774 есть люди, которые отчёт не создавали. Такое отношение не описывает переход «отчёт → оплата». Настоящий переход для тех, кто создал отчёт, — 325 из 1290, то есть 25,2%.

Открытая и закрытая воронка: почему числа разные

Открытая воронка считает на каждом этапе всех, кто его прошёл, независимо от предыдущих. Закрытая, или последовательная, — только тех, кто прошёл все предыдущие этапы по порядку. В нашей когорте все отчёты созданы после рабочего пространства, поэтому на третьем этапе оба варианта дают 1290. Расходятся они на оплате: 774 против 325.

Разница — 449 человек, которые заплатили, не создав первый отчёт. 259 из них не создали даже рабочее пространство. Для продукта это важная находка: этапы, которые казались обязательным путём к оплате, таковыми не являются. Больше половины оплат приходят в обход.

Какой вариант выбрать, зависит от вопроса. Если нужно понять, сколько денег принесла когорта, — открытая: оплата есть оплата. Если нужно проверить, работает ли задуманный путь «пространство → отчёт → оплата», — закрытая. Подробно SQL обоих вариантов и выбор окна разобраны в статье про воронку в SQL.

Время между этапами

Воронка без времени неполная. От регистрации до первой оплаты в учебной базе проходит от 3 до 20 дней, медиана — 11, у половины плательщиков — от 7 до 16. Это длина цикла сделки, и от неё зависят два решения.

Первое — когда воронку можно считать. Когорта, зарегистрированная меньше 20 дней назад, ещё не закончила путь, и её конверсия в оплату будет занижена. Второе — когда вмешиваться. Если клиент не заплатил за 16 дней, он уже медленнее трёх четвертей плательщиков, и это повод для напоминания или звонка. В B2B то же самое считают по датам смены статусов сделки: медианное время на этапе «предложение» подсказывает, какие сделки зависли.

Сколько дней проходит от регистрации до первой оплаты
select median(first_paid - signup_date) as median_days,
       quantile_cont(first_paid - signup_date, 0.25) as p25,
       quantile_cont(first_paid - signup_date, 0.75) as p75,
       min(first_paid - signup_date) as min_days,
       max(first_paid - signup_date) as max_days
from (
  select u.user_id, u.signup_date, min(p.paid_at) as first_paid
  from users u
  join payments p using (user_id)
  group by u.user_id, u.signup_date
) t;

Воронка продаж по каналам

Общая воронка усредняет каналы, у которых разные проблемы. Разбивка по users.channel на той же зрелой когорте показывает, что платный поиск теряет людей в самом начале: рабочее пространство создают 36,7% пришедших оттуда против 75,7% из рекомендаций. Дальше каналы почти не отличаются: от пространства к отчёту переходят 62–66% в каждом.

Воронка по каналам, регистрации 1 июня – 10 августа
КаналРегистраций→ пространствоПространство → отчётОплатилиСквознаяМедиана дней до оплаты
organic128267,2%66,2%34426,8%12
referral76175,7%62,0%23931,4%11
paid_search64136,7%63,4%6910,8%11
partner59954,1%66,0%12220,4%13

Как построить воронку продаж: пошагово

Порядок подходит и для CRM, и для продуктовых событий.

  • Запишите этапы словами и для каждого — проверяемое условие: какое событие или статус, с какой даты.
  • Выберите единицу: человек, компания или сделка. Не смешивайте их в одной воронке.
  • Выберите когорту входа, например регистрации за месяц, и окно, за которое клиент должен дойти до конца.
  • Решите, открытая воронка или закрытая, и напишите это в подписи к графику.
  • Посчитайте людей, конверсию шага, сквозную конверсию и потери.
  • Разбейте по каналу, устройству, тарифу и сравните с прошлыми когортами.

С какого этапа начинать улучшения

Самый низкий процент не всегда главное место. Смотрите на потери в людях и на то, насколько реально их вернуть. В нашей воронке больше всего теряет первый шаг, регистрация → рабочее пространство: 1287 человек. Из них 406 пришли из платного поиска, хотя этот канал даёт всего пятую часть регистраций.

Отсюда две гипотезы разной стоимости. Продуктовая: упростить создание пространства для всех, и тогда каждый процентный пункт на первом шаге — это 33 человека на следующем этапе. Маркетинговая: разобраться, кого приводит платный поиск и что ему обещает реклама. Вторая дешевле проверить: достаточно посмотреть запросы и посадочные страницы.

Второй шаг, пространство → отчёт, теряет 706 человек, но улучшать его ради оплаты рискованно: как показала закрытая воронка, больше половины платящих отчёт не создают. Связь отчёта с оплатой сначала нужно проверить экспериментом.

Частые ошибки

Самая частая — смешать в одной воронке тех, кто уже мог дойти до оплаты, и тех, кто зарегистрировался вчера. По всей базе конверсия в оплату — 19,8%: 912 из 4613. По зрелой когорте — 23,6%. Разницу создают последние две недели регистраций, у которых конверсия 9,6% и 2,1%: они просто ещё не успели заплатить.

Доля оплативших по неделе регистрации, %

Данные заканчиваются 30 августа. Регистрации последних двух недель не прошли цикл в 3–20 дней, поэтому их конверсия занижена.

Оплатили, %
  • Незрелый хвост. Считайте воронку по когортам, которым хватило времени, или показывайте конверсию «за N дней от входа».
  • Грязные этапы в CRM. Менеджеры переводят сделку сразу из «лида» в «договор», перезаписывают дату смены статуса, держат мёртвые сделки открытыми. У каждого этапа должен быть критерий входа, у CRM — журнал смены статусов, у сделок — правило закрытия по сроку.
  • События вместо людей. Пять открытий страницы тарифов — один человек на этапе, а не пять.
  • Разные окна на разных этапах. Если корзину считают за сутки, а оплату за неделю, пропорции между шагами меняются без изменений в продукте.
  • Процент без базы. Конверсия 80% на этапе, через который прошли 20 человек, почти ничего не значит.

Что читать дальше

Для продуктовой воронки с последовательными шагами и окнами есть отдельный разбор SQL. Потренируйтесь в песочнице: постройте воронку продаж только для тарифа team и посмотрите, отличается ли время до оплаты.

Продолжить чтение
Вся библиотека
Продуктовая аналитика24 сентября 2026 г.11 мин
Ровные повторяющиеся столбики, над которыми тянется одна длинная полоса

MRR и ARR: что это, как считать и что они скрывают

MRR — регулярная выручка активных подписок, приведённая к одному месяцу, ARR — та же величина в годовом масштабе. Как посчитать MRR в SQL, что делать с просроченными оплатами, чем MRR отличается от денег за месяц и из чего складывается его изменение.

Читать материал
Продуктовая аналитика24 сентября 2026 г.11 мин
Ряд одинаковых точек, из которого часть точек отделяется и уходит за край

Churn rate и retention rate: что это и как посчитать отток

Churn rate — доля клиентов, которые ушли за период, из тех, кто был в его начале. Как посчитать отток клиентов и retention rate в подписке и в бесплатном продукте, чем customer churn отличается от revenue churn, как перевести месячный отток в годовой и где ошибаются со знаменателем.

Читать материал