0%
+7 916 093-77-88
Разбор проекта · Индустрия красоты

Приложение для сети салонов, которое заполняет окна в расписании

Как устроен проект, где главной задачей был не «сделать красиво», а вернуть клиентов, выпавших из своего цикла, и продать время, которое иначе простаивало.

Отрасль
Сеть салонов красоты и барбершопов
Масштаб
Мультифилиальная сеть, единая база клиентов
Срок запуска
10–14 недель до первого релиза
Стек и интеграции
Flutter, Node.js, PostgreSQL, YCLIENTS, ЮKassa

Задача бизнеса

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

Что мешало

Шесть проблем и что мы с ними сделали

Каждое решение здесь — ответ на конкретную потерю денег, а не пункт из типового ТЗ

Клиент отваливался незаметно

У каждого свой ритм визитов. Общая рассылка «мы соскучились» уходила всем одновременно и не работала ни для кого.

Система считает индивидуальный цикл каждого клиента по истории визитов: у одного окрашивание раз в шесть недель, у другого стрижка раз в три. За несколько дней до подхода срока приложение присылает напоминание — и сразу ведёт в запись к своему мастеру.

Если клиент выбился из цикла на треть срока, он попадает в отдельный сегмент, и сценарий возврата запускается с более весомым предложением. Это самая ценная точка контакта: человек ещё помнит салон, но уже начал искать альтернативу.

Пустые окна сгорали

Отмена за два часа — потерянные деньги. Администратор физически не успевает обзвонить тех, кому это время подошло бы.

Освободившийся слот запускает автоматический подбор: система смотрит, кто ходит именно к этому мастеру, у кого подошёл срок процедуры и кому подходит время по прошлым записям. Точечный push уходит короткому списку, а не всей базе.

Принципиальный момент: без скидки. Предложение — не «дешевле», а «есть окно у вашего мастера сегодня в 15:00». Скидка резала бы маржу на времени, которое и так должно быть продано по полной цене.

Клиент уходил вместе с мастером

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

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

Плюс сеть видит отток по конкретному мастеру в аналитике сразу, а не через квартал по выручке, и успевает предложить клиентам альтернативу до того, как они уйдут.

Скидки вместо лояльности

Единственным инструментом удержания была скидка. Она резала маржу и приучала клиента ждать акцию.

Заменили на механики, которые дают ценность, но не бьют по марже напрямую: баллы с ограниченным сроком (возвращают в нужное окно, а не просто снижают цену), уровни с приоритетной записью и абонементы с депозитом.

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

Администратор вместо продаж

Полдня уходило на подтверждения, переносы и ответы на «сколько стоит окрашивание».

Запись, перенос и отмена ушли в приложение, подтверждения стали автоматическими. Типовые вопросы о ценах и услугах закрывает ассистент на базе языковой модели, который отвечает строго по прайсу из системы и не выдумывает цифры.

Всё, что касается спорных ситуаций и претензий, по-прежнему уходит человеку — здесь цена ошибки выше экономии.

Сеть не видела себя целиком

Каждая точка жила своей жизнью. Сравнить загрузку и возвращаемость можно было только вручную сведя выгрузки.

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

Директор точки видит только свою, управляющий сети — всё. Роли и права разграничены, действия журналируются.

Почему интеграция с YCLIENTS, а не замена

Администраторы уже работали в YCLIENTS, и ломать привычный процесс ради приложения было бы вредительством: любая система, которая усложняет работу сотруднику, тихо саботируется и умирает за месяц.

Поэтому расписание, записи и касса остались на месте. Приложение стало клиентским слоем поверх: читает свободные слоты, создаёт записи и забирает историю визитов, а всё остальное живёт там, где жило.

Отдельная работа — синхронизация в обе стороны. Запись, созданная администратором вручную, должна мгновенно исчезать из доступных слотов в приложении, иначе два клиента займут одно время. Эта «невидимая» логика обработки конфликтов заняла заметную часть разработки.

Что получилось в приложении

  • Запись к своему мастеру с его расписанием, портфолио работ и списком услуг
  • Повтор прошлой записи в один тап — та же услуга, тот же мастер, ближайшее время
  • Абонементы и депозит с остатком на главном экране
  • Баллы, уровни и сгорание вместо постоянной скидки
  • История посещений с составами окрашивания и заметками мастера
  • Напоминания по личному циклу, а не по общему расписанию рассылок
  • Приглашение друга с бонусом обоим — самый дешёвый канал привлечения в отрасли
  • Предоплата записи для снижения числа неявок
Интерфейс

Ключевые экраны

Главный экран построен вокруг одного действия — записаться снова

Главный экран: повтор записи, баллы, ближайший визит
Выбор мастера и свободного времени
Абонементы и история процедур
Измерение

Как мы считали, сработало ли это

До запуска зафиксировали точку отсчёта — иначе доказать эффект невозможно

Частота визитов

Сравниваем поведение одних и тех же клиентов до и после установки приложения, а не пользователей с непользователями — иначе результат завышен самим отбором.

Процент выпадения

Доля клиентов, вышедших за свой цикл более чем на треть. Главная метрика проекта: именно она превращается в потерянную выручку.

Заполнение окон

Сколько освободившихся слотов удалось продать через автоматический подбор и какая часть из них ушла бы в простой.

Выручка на клиента в год

Итоговый показатель. Рост здесь означает, что механики работают, а не что клиенты просто перешли из звонков в приложение.

Про цифры результата. Мы публикуем метрики только после того, как проект отработал полный цикл сезонности и заказчик разрешил их показывать: в бьюти-сегменте выручка сильно колеблется от месяца к месяцу, и любая цифра за короткий период вводит в заблуждение. Если вам нужны конкретные показатели по похожему проекту — запросите, покажем под NDA на созвоне.

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

Было

  • Отвалившегося клиента замечали по выручке через квартал
  • Освободившееся окно чаще всего сгорало
  • Лояльность держалась на скидке и на личности мастера
  • Администратор занят подтверждениями, а не продажами
  • Данные по точкам сводились вручную в таблицах

Стало

  • Клиент, выбившийся из цикла, попадает в сценарий возврата сразу
  • Свободный слот автоматически предлагается подходящим клиентам
  • Баллы, абонементы и депозит привязаны к сети
  • Рутина автоматизирована, администратор работает с людьми
  • Дашборд по точкам, мастерам и сегментам в реальном времени
Выводы

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

Цикл важнее рассылки

Одно напоминание, попавшее в личный ритм клиента, работает лучше десяти массовых рассылок. И не выжигает канал push-уведомлений.

Персонал решает

Установки росли не от рекламы, а от того, объясняет ли администратор выгоду в момент оплаты. Это стоит закладывать в проект как отдельную задачу.

Депозит недооценён

Механика, о которой почти не думают на старте, а по влиянию на возвращаемость она обгоняет бонусные баллы.

У вас похожая сеть?

Посчитаем на ваших цифрах: сколько клиентов выпадает из цикла и сколько окон сгорает за месяц.

KatanaCode

Обычно отвечаем за 5 минут

Привет! 👋 Расскажите про задачу — подскажем, какое решение подойдёт и сколько это будет стоить.

Заявка отправлена!

Скоро перезвоним