НейробрейнВсе материалы

Мастер-класс · 14 октября 2026 · показ 2

Сколько стоит клиент — и куда исчезла часть выручки?

«Линия» — вымышленная B2B-компания. Сопоставим расходы, лиды и оплаты, сохраним возврат и проверим один неизвестный источник.

Учебные данныеСентябрь 2026 · RUBБез API и реальных платежей

1. Входы и правила

Лиды считаем по lead_id, заказы — по order_id, деньги — по transaction_id. Событие формы, квалификация и оплата обозначают разные шаги. Определения Метрики

Период: 1 сентября — 1 октября 2026, правая граница исключена, Москва. Это кассовый срез одной учебной когорты; поздние оплаты других когорт не показаны.

2. Запрос → алгоритм

  1. Проверить период, тесты и идентификаторы.
  2. Убрать точный повтор платежа; конфликт одного ID остановит расчёт.
  3. Связать платёж с заказом, заказ — с лидом и его сохранённым каналом.
  4. Посчитать каждую стоимость из числителя и знаменателя; неизвестное сохранить.
  5. Сверить общие суммы с отдельными строками и только затем интерпретировать.

Полный запрос для показа · Воспроизводимый Python

python3 calculate.py --check

3. Готовый учебный дашборд

Фильтр меняет показатели, воронку, сравнение каналов и строки оплат. На «Все каналы» ставки пересчитываются из общих числителей, а не усредняются.

Лиды → квалификация → первая оплата

Одна когорта; единицы — компании/лиды, не клики. Оплата относится к полностью оплаченному заказу, возврат показан отдельно.

Расходы и деньги после возвратов

Затраты Net revenue Возврат

Общая нулевая шкала в рублях для видимых каналов. Неизвестный расход не изображён нулевой полосой.

Числа и знаменатели выбранного среза

КаналЗатраты, ₽ЛидыКвал.Компании / заказыCPL, ₽CPQL, ₽CAC, ₽Платежи, ₽Возврат, ₽Net, ₽

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

ЗаказЛидКомпанияКаналПлатёж, ₽Возврат, ₽Net, ₽

4. Самопроверка

У L003 два события формы, но один лид. PAY001 встречается дважды — это одна транзакция. ORD003 сначала оплачен, затем полностью возвращён. ORD008 ожидает оплаты, ORDTEST — тест.

Проверяемый итог: 27 лидов, 16 квалификаций, 7 уникальных оплативших компаний; 336 000 −48 000 =288 000₽. Известный пул затрат —300 000₽.

18 выполненных проверок · Точный JSON · Таблица CSV

Проверки включают повтор платежа, конфликт ID, сверхвозврат и нулевой знаменатель. Они подтверждают арифметику и заявленные ограничения входов; визуальная приёмка выполняется отдельно.

5. Какой следующий шаг?

У одного оплаченного заказа источник не указан. Сначала найдём первичную запись L027 и проверим её источник. По семи учебным оплатам нельзя доказать причинный эффект канала или выбрать рекламный бюджет.

−12 000₽ после расходов привлечения — не прибыль. Себестоимость и налоги отсутствуют. Возврат не удаляет исторический факт первой оплаты из принятого определения CAC.

Готовая интерпретация

Источники, определения, границы

ПоказательИсточник и формулаОграничение
Лиды / квалификацииinput/leads.csv, distinct ID; qualified=trueТесты исключены. Статус квалификации задан учебной строкой.
CPL / CPQL / CACИзвестные затраты / лиды, квалификации, впервые оплатившие компанииНулевой знаменатель или неизвестный расход → null. Стоимость новой компании и стоимость заказа здесь совпали; в другом наборе могут различаться.
Net revenuepayment-events.csv, успешные платежи −успешные возвраты; dedupe transaction_idУчебный кассовый срез, не бухгалтерская выручка/прибыль. Только эта когорта.
КаналЗаказ → lead_id → первый сохранённый source; пустое → unattributedЭто принятое правило фикстуры, не автоматическая модель атрибуции Метрики.
Событияform-events.csv, отдельные event_id28 событий не равны 27 уникальным лидам; достижение цели отдельно от записи CRM. Целевое событие Метрики

Адаптированы метод и синтетическая воронка actual lesson07; пакет «Линии», возврат, платежные события и неизвестный источник добавлены специально для показа. Новая производная не является записью первоначального CLI-прогона. Происхождение и первичные ссылки · SHA исходных копий