Цена доставки на сайте должна собираться из себестоимости плюс решения о том, какую её часть вы сознательно берёте на себя. На практике она чаще всего назначается по памяти — «у соседей 300, поставим 300» — и дальше живёт годами, пока кто-нибудь не задастся вопросом, почему при растущем обороте не растёт прибыль.
Разрыв здесь больше, чем кажется. В модельном расчёте ниже одна городская доставка обходится в 721 ₽, а берут за неё 300 ₽. Разница в 421 ₽ не убыток — она покрывается маржой товара. Но при среднем чеке 2 400 ₽ и марже 30 % эта разница съедает 58 % всей маржи заказа, и решение о таком расходе никто сознательно не принимал.
Ниже — формула себестоимости по пяти составляющим, три способа тарификации с их последствиями, правило разбивки зон и вывод порога бесплатной доставки из маржи. Речь идёт о собственной курьерской развозке по городу; расчёт межгородской ставки за километр устроен иначе и разобран в статье про расчёт стоимости перевозки.
Себестоимость одной доставки: пять составляющих
Считаем собственную развозку: три машины, 40 адресов в день, 22 рабочих дня — 880 доставок в месяц, суммарный пробег 240 километров в день. Час водителя берём по 700 ₽ — это полная стоимость часа рядового сотрудника со взносами, отпуском и оснащением рабочего места. Топливо — 12 литров на 100 километров по 62 ₽ за литр, то есть 7,44 ₽ за километр.
Три замечания к этой арифметике. Первое: доля водителя — больше половины суммы, и это значит, что любая экономия на топливе несопоставима с экономией на времени в пути. Второе: постоянная часть — водитель и машина — не зависит от числа заказов, поэтому себестоимость доставки резко падает с ростом плотности; те же три машины на 48 адресах в день дают уже 610 ₽ вместо 721 ₽. Третье и главное — про последнюю строку.
Клиент не открыл дверь, не берёт трубку, передумал у порога, товар не подошёл — курьер везёт заказ обратно, а потом кто-то едет второй раз. При доле 7 % это добавляет 43 ₽ к каждому заказу, включая те, что доехали с первого раза: 37 840 ₽ в месяц на потоке 880 доставок. В тарифе эта сумма невидима, потому что клиент за повторный выезд обычно не платит. Считать её надо не по отдельным случаям, а размазанной по всему потоку — иначе себестоимость систематически занижена на 6 %.
Горизонтальная схема-формула из пяти блоков разной ширины, пропорциональной сумме, со знаками плюс между ними и итоговым блоком справа. Блоки подписаны: «Водитель, 3 × 8 часов × 22 дня» — 420 ₽ (самый широкий), «Машина: лизинг, ОСАГО, ТО» — 153 ₽, «Топливо, 5 280 км» — 45 ₽, «Упаковка» — 60 ₽, «Повторные выезды, 7 %» — 43 ₽ (выделен другой штриховкой с пометой «забывают чаще всего»). Итоговый блок «Себестоимость одной доставки» — 721 ₽. Под схемой строка вводных: «3 машины, 40 адресов в день, 22 дня, 880 доставок в месяц». Чертёжный стиль, подписи по-русски.
Три способа тарификации и что каждый делает с маржой
Способов назначить цену клиенту три, и выбор между ними — это выбор между простотой для покупателя и точностью для вас. Универсально правильного нет, но у каждого есть предсказуемое последствие.
| Способ | Что видит клиент | Что делает с маржой | Когда подходит |
|---|---|---|---|
| Фиксированная цена по городу | Одну понятную цифру на всех страницах | Дальние заказы дотируются ближними; при росте доли окраин маржа тихо проседает | Компактный город, разброс себестоимости внутри зоны меньше 25 % |
| По зонам | Свою цену после ввода адреса, обычно 3–4 значения | Каждая зона окупает себя; недобор становится осознанным и управляемым | Большинство случаев: город с разной плотностью и пробками |
| От веса и габаритов | Цену после сборки корзины, иногда неожиданную | Точнее всего, но снижает конверсию: цена меняется при добавлении товара | Крупногабарит, мебель, стройматериалы — там, где вес реально решает |
Разница между первым и вторым способом на нашей модели считается точно. При фиксированных 300 ₽ недобор составляет 421 ₽ с заказа, то есть 370 480 ₽ в месяц. При тарифах по зонам 400, 650 и 1 000 ₽ средневзвешенный тариф равен 535 ₽, недобор падает до 186 ₽ с заказа — 163 680 ₽ в месяц. Разница между двумя способами тарификации, при том же товаре и том же курьере, — 206 800 ₽ в месяц.
Зоны считаются по времени в пути, а не по районам
Административные границы к логистике отношения не имеют. Два соседних района могут отличаться по времени подъезда вдвое из-за одной развязки, а один и тот же район на разных берегах реки — втрое. Зоны строятся по двум признакам сразу: времени в пути от склада в рабочие часы и плотности заказов.
- 1Шаг 1. Возьмите фактические адреса за квартал
Не карту города, а свою выгрузку заказов: адрес, дата, время прибытия курьера. Триста-четыреста точек уже дают устойчивую картину, и она почти всегда расходится с интуицией.
- 2Шаг 2. Посчитайте фактическое время подъезда, а не расстояние
Километры обманывают: 8 км по набережной и 8 км через центр в будний день — это 15 и 45 минут. Берите медиану времени по каждому кусту адресов в те часы, когда вы реально ездите.
- 3Шаг 3. Сгруппируйте по времени и проверьте плотность
Зона А — до 25 минут в пути, зона Б — 25–50 минут, зона В — дальше. Дальше проверка: если в кусте меньше 8 адресов в день, он не отрабатывает выезд машины, даже находясь в 20 минутах, и должен попасть в более дорогую зону.
- 4Шаг 4. Посчитайте себестоимость в каждой зоне отдельно
В нашей модели получилось: зона А — 600 ₽ при 60 % заказов, зона Б — 820 ₽ при 30 %, зона В — 1 150 ₽ при 10 %. Средневзвешенная сходится с общей себестоимостью: 0,6 × 600 плюс 0,3 × 820 плюс 0,1 × 1 150 равно 721 ₽.
- 5Шаг 5. Назначьте тариф и осознанно решите, сколько дотируете
Тарифы 400, 650 и 1 000 ₽ означают, что вы доплачиваете 200, 170 и 150 ₽ на заказ соответственно. Это нормально — доставка часть маркетинга. Ненормально, когда размер этой доплаты никто не знает.
Условная схематичная карта города в чертёжном стиле, без узнаваемой географии. В центре отметка «склад», от неё расходятся три неровные зоны, границы которых явно не совпадают с прямоугольной сеткой кварталов и огибают реку и крупную магистраль. Зона А подписана «до 25 минут, 60 % заказов, себестоимость 600 ₽, тариф 400 ₽». Зона Б — «25–50 минут, 30 % заказов, 820 ₽, тариф 650 ₽». Зона В — «дальше 50 минут, 10 % заказов, 1 150 ₽, тариф 1 000 ₽». Отдельно в зоне А отмечен вырезанный кусочек с пометой «меньше 8 адресов в день — по тарифу зоны Б». Внизу подпись «средневзвешенная себестоимость 721 ₽». Подписи по-русски.
Порог бесплатной доставки выводится из маржи
Порог обычно берут у конкурентов или округляют до красивой цифры. Считается он элементарно: сумма заказа должна принести маржу, которая покрывает себестоимость доставки и оставляет целевой минимум прибыли. Возьмём целевой минимум в 300 ₽ с заказа.
Порог равен (себестоимость доставки плюс целевая прибыль) делённое на долю маржи в чеке. В нашей модели числитель — 721 ₽ плюс 300 ₽, то есть 1 021 ₽. Дальше всё зависит от маржинальности ассортимента, и разброс получается почти вдвое.
| Маржа в чеке | Расчёт порога | Порог с округлением вверх | Насколько это выше среднего чека 2 400 ₽ |
|---|---|---|---|
| 22 % | 1 021 ₽ ÷ 0,22 = 4 641 ₽ | 4 700 ₽ | +96 % |
| 30 % | 1 021 ₽ ÷ 0,30 = 3 403 ₽ | 3 500 ₽ | +46 % |
| 40 % | 1 021 ₽ ÷ 0,40 = 2 553 ₽ | 2 600 ₽ | +8 % |
Последняя колонка объясняет, зачем всё это считалось. Порог бесплатной доставки — не подарок покупателю, а инструмент увеличения чека: при марже 30 % он предлагает клиенту добрать корзину почти в полтора раза. При марже 22 % порог получается вдвое выше среднего чека, и это честный сигнал, что бесплатная доставка на таком ассортименте работать не будет: до неё дотянутся единицы, а остальные увидят недостижимую планку. Правильный ход в этом случае — не бесплатная доставка, а скидка на неё от определённой суммы.
Столбиковая диаграмма из трёх столбцов, ось Y — рубли. Столбцы подписаны по марже: «22 %» — 4 700 ₽, «30 %» — 3 500 ₽, «40 %» — 2 600 ₽. Через всю диаграмму горизонтальная пунктирная линия на отметке 2 400 ₽ с подписью «средний чек». Над каждым столбцом подпись превышения: «+96 %», «+46 %», «+8 %». Слева от диаграммы вынесена формула: «(721 ₽ себестоимость + 300 ₽ целевая прибыль) ÷ доля маржи». Столбец «22 %» помечен как «порог недостижим, нужна не бесплатная доставка, а скидка». Чертёжный стиль, подписи по-русски.
Что нужно технически, чтобы цифра считалась сама
Конструкция несложная, но у неё есть одно жёсткое требование: тариф должен считаться в одном месте и оттуда раздаваться всем, кто его показывает. Как только цена доставки живёт отдельно на сайте, отдельно в CRM и отдельно в голове у менеджера, она немедленно расходится.
- 1Справочник тарифов в учётной системе. Строка справочника — это зона, диапазон веса, срок доставки и способ; значение — цена и порог бесплатной. Справочник ведёт один человек, правки логируются. Это единственный источник истины по цене доставки.
- 2Определение зоны по адресу. Адрес клиента превращается в координаты и сопоставляется с границами зон. Ручной выбор зоны менеджером здесь недопустим: он ошибается в пользу клиента примерно в каждом десятом случае, и ошибка невидима.
- 3Обмен с сайтом. Сайт не хранит тарифы, а спрашивает цену по адресу и составу корзины. Тогда изменение тарифа применяется везде одновременно, а не «на сайте поправили, в CRM забыли». Общие правила такого обмена разобраны в статье про обмен остатками и ценами с сайтом.
- 4Обращение к службам доставки за расчётом. Для отправлений за пределы своей развозки цена берётся не из таблицы, а запросом к службе — у СДЭК, Яндекс Доставки и Почты России есть интерфейсы расчёта. Обязательно предусмотрите поведение при недоступности службы: показывать заранее заданную цену «от», а не ошибку.
- 5Учёт факта, а не только плана. Раз в месяц фактическая себестоимость пересчитывается по реальному пробегу и числу повторных выездов и сравнивается с тарифом. Без этой сверки конструкция устаревает за полгода: топливо подорожало, плотность заказов изменилась, а тариф остался прежним.
Когда всё это считать не надо
Четыре ситуации, в которых подробная тарифная модель — лишняя работа.
- Меньше 100 доставок в месяц. Разброс себестоимости на таком объёме случаен: одна дальняя поездка сдвигает среднее на десятки процентов. Считайте общую сумму расходов на доставку за квартал и делите на число заказов — этой точности достаточно, чтобы понять, дотируете вы доставку или нет.
- Доставка целиком отдана службе. Тогда ваша себестоимость — это счёт службы, и считать нечего. Работа сводится к другому: сверять счёт с фактическими отправлениями и следить, чтобы тариф на сайте не отставал от тарифа службы после его пересмотра.
- Компактный город и однородная плотность. Если разброс себестоимости между самой близкой и самой дальней доставкой меньше четверти, зоны не нужны: фиксированная цена проще для клиента и не искажает экономику.
- Доставка сознательно бесплатная как часть позиционирования. Тогда её всё равно надо посчитать — но не для тарифа, а чтобы знать, сколько стоит это решение. В нашей модели полностью бесплатная доставка съедает 721 ₽ из 720 ₽ маржи, то есть заказ уходит в ноль. Такое решение принимается осознанно и с расчётом на повторные покупки, а не по умолчанию.
И общее замечание, которое стоит держать в голове при любом варианте. Стоимость доставки — единственная строка в чеке, которую покупатель видит отдельно и оценивает как справедливую или нет. Поэтому она хуже всего переносит частые изменения: пересматривать тариф чаще двух раз в год не стоит, даже если расчёт показывает недобор. Дешевле убрать недобор через плотность маршрутов и сокращение повторных выездов — как это устроено на практике, разобрано в статье про контроль водителей и маршрутов.
