Где открыть кофейню в Москве: разбор локации по пешему трафику и конкуренции
Взяли живую задачу — выбор места под specialty-кофейню — и прогнали три района через слои данных Омни Карт. Победил не самый людный адрес.
Чтобы понять, где открыть кофейню в Москве, мало посмотреть на проходимость улицы глазами. Анализ локации для бизнеса (в англоязычной практике — site selection) — это сопоставление нескольких слоёв данных по каждому адресу: пеший трафик с почасовым ритмом, число конкурентов в радиусе, демография тех, кто реально ходит мимо, и стоимость аренды. Мы взяли три района-кандидата и прогнали через слои. Самый высокий трафик оказался не у победителя. Выиграл деловой кластер: трафик там ниже, зато его ритм и аудитория совпали с форматом, а аренда вдвое дешевле.
Дальше по шагам, как мы к этому пришли и где этот метод честно врёт.
Задача: specialty-кофейня и три кандидата в разных концах города
Прежде чем смотреть данные, надо зафиксировать формат, иначе непонятно, какие цифры вообще важны. Берём небольшую specialty-кофейню: кофе навынос плюс 15 посадочных мест, площадь около 50 м², бюджет аренды до 400 тысяч рублей в месяц. Целевая аудитория 25-40 лет, средний и выше доход, основа выручки — это будний утренний и обеденный поток, выходные приятный бонус.
Это сразу определяет, какие цифры вообще важны. Для кофе навынос утром важен будний поток платёжеспособных людей, идущих на работу, а не вечерняя прогулочная толпа. Та же толпа была бы золотой для винного бара, но для нашего формата она проходит мимо не в то время. Дальше всё крутится вокруг этого: не «много ли тут людей», а «те ли это люди и в то ли время».
Три кандидата я подбирал так, чтобы они спорили друг с другом по разным осям:
- Неглинная улица, ЦАО. Премиальная центральная улица с ресторанами и барами, поток гуляющих и туристов. Плотно и дорого.
- Деловой кластер у Павелецкой, район Дубининской, граница ЦАО и ЮАО. Офисы, бизнес-центры, будний поток.
- Новый жилой район у Ходынского поля, САО. Свежая застройка, семьи, вечерние и выходные прогулки.
Три адреса в разных частях города и ключевые метрики рядом с каждым. Победитель подсвечен. Зелёная точка — ось работает на формат, жёлтая — спорно, красная — против. Дальше разбираем по очереди каждую ось.
Слой первый: пеший трафик, и почему важен ритм, а не объём
Первый слой — это пешеходный трафик с почасовой детализацией и разрешением около 100 метров. Запрос выглядит как footfall.flow(parcel, window='30d'), и в ответе не одно число, а профиль: сколько людей проходит в радиусе и в какие часы.
Объём (сколько людей за сутки) — это только половина дела. Вторая половина — это когда они идут и зачем. Для кофейни навынос будний утренний пик стоит дороже, чем такой же по высоте вечерний выходной поток. Утренний кофе по дороге в офис — это привычка с высокой повторяемостью, один человек возвращается двадцать раз в месяц. Вечерний прохожий в выходной зашёл погулять и в среднем не вернётся завтра.
По трафику кандидаты разложились так:
- Неглинная: 17 200 человек в день в радиусе 300 метров. Ровный день, сильный вечер, высокие выходные. Это досуговый профиль.
- Деловой кластер: 11 400 в день. Резкий пик в 8-10 утра, второй в обед в 13-14, будни сильно выше выходных. Это рабочий профиль, ровно под утренний кофе.
- Новый район: 15 800 в день. Утром в будни провал, пик вечером в 18-21 и в выходные. Прогулочно-семейный профиль.
Разрешение в 100 метров тут не формальность. Оно позволяет сравнить два угла одного перекрёстка, а не усреднять весь квартал в одну цифру, потому что поток на солнечной стороне с витринами и на глухой стороне у парковки отличается в разы.
Слой второй: конкуренция в радиусе, и где каннибализация, а где кластер спроса
Второй слой — это POI и конкуренция. Запрос poi.search(near=parcel, cat='coffee', radius_m=300) возвращает все кофейни и кафе рядом. Цифры:
- Неглинная: 38 кофеен и кафе в радиусе 300 метров.
- Деловой кластер: 14 кофеен.
- Новый район: 5 кофеен.
Здесь легко поймать ложный вывод «меньше конкурентов значит лучше». Высокая плотность кофеен бывает двух разных видов, и отличить их важнее, чем просто посчитать точки.
Первый вид — это каннибализация: все дерутся за один ограниченный поток, и новая точка отъедает выручку у соседей и у себя. Второй вид — это кластер спроса: место, где кофе пьют так много, что десяток точек живёт не мешая друг другу. На Неглинной 38 заведений делят досуговый вечерний поток, и новая кофейня встаёт в нём тридцать девятой за того же гуляющего. У Павелецкой 14 точек кормятся утренним офисным потоком, который воспроизводится каждый будний день, и это кластер спроса, в который можно встроиться с понятной нишей. У Ходынки всего 5 кофеен, и низкая конкуренция тут не подарок, а симптом: дневного спроса мало, поэтому туда никто и не пришёл.
Маленькая, но важная сноска про сами цифры. В радиусе именно 14 кофеен, а не сорок строк с дублями и давно закрытыми точками, потому что под слоем POI лежит нормализация: одна запись на реальный бизнес, призраки закрытых заведений отсеяны по падению трафика. Про то, как это устроено, у нас есть отдельная статья про нормализацию и дедупликацию. Если считать конкурентов по сырым источникам, цифра спокойно врёт в полтора раза, и весь дальнейший разбор едет.
Слой третий: кто реально ходит мимо
Третий слой — это демография: demo.profile(geo) отдаёт доход, возраст и состав домохозяйств поквартально. Тут вскрывается главная ловушка всего метода — разрыв между объёмом трафика и нужной аудиторией.
- Неглинная: сегмент A, медианный доход около 165 000 ₽, ядро 28-45. Платёжеспособно и попадает в цель по деньгам, но это в основном досуговая публика и туристы.
- Деловой кластер: сегмент B+, медианный доход около 132 000 ₽, ядро 25-40, офисные сотрудники. Точное попадание в формат.
- Новый район: сегмент B, медианный доход около 118 000 ₽, ядро 30-45, семьи с детьми. Доход нормальный, но ритм семейный: будним утром эти люди отвозят детей и уезжают на работу в другой район, а мимо кофейни идут вечером и в выходной с коляской.
Вот тут 15 800 человек у Ходынки и проигрывают 11 400 у Павелецкой. Суточная цифра больше, а кофейных будних покупателей в ней меньше, потому что поток складывается из людей, которые проходят мимо не в то время и не за тем. Высокий трафик звучит убедительно ровно до момента, когда смотришь, кто эти люди и когда они идут.
Слой четвёртый: аренда и кто владеет помещением
Четвёртый слой — это коммерческая недвижимость: estate.query(near=parcel, include=['owner','price']). Аренда по кандидатам:
- Неглинная: около 180 000 ₽ за м² в год. На 50 м² это около 750 000 ₽ в месяц только за помещение.
- Деловой кластер: 90 000 ₽ за м² в год. Около 375 000 ₽ в месяц, в бюджет влезает.
- Новый район: 72 000 ₽ за м² в год. Около 300 000 ₽ в месяц.
Аренда — это та ось, на которой Неглинная проигрывает вчистую. Чтобы отбить 750 тысяч в месяц на навыносе, нужен либо премиальный чек, либо оборот, который придётся отвоёвывать у 38 соседей за вечернюю прогулочную публику. У делового кластера аренда вдвое ниже, а спрос будний и повторяемый, поэтому юнит-экономика складывается без героизма. Тут есть нюанс по самому кластеру: 375 тысяч — это лот в переулке, а не прямо у выхода из метро. У вестибюля и на Садовом ставки уходят за 600 тысяч, и наш формат туда уже не помещается.
Слой недвижимости отдаёт не только цену, но и владельца с историей переходов права. По Неглинной слой показал два перехода собственника за три года, и агент пометил это риском. Логика та же и для аренды: частая смена владельца — это риск, что условия пересмотрят через год. У помещения в деловом кластере по нашему примеру один собственник шесть лет, и это спокойный сигнал. Демографические данные при этом обезличены и идут поквартально в соответствии с 152-ФЗ, конкретных людей в них нет.
Как это выглядит со стороны агента
Всё, что я выше расписал словами на четыре экрана, агент делает одним прогоном. Он сам дотягивается до слоёв, запрашивает каждый и собирает решение с обоснованием. Как именно агент достаёт эти слои (через MCP, REST или свой краулер) мы разбирали в отдельной статье про подключение данных к агенту, тут важен результат. Вот сокращённый лог по победителю и сжатый итог по двум другим адресам:
Тот же набор слоев, что я разбирал вручную, агент проходит за один прогон: тянет каждый инструмент, помечает статусы и собирает решение с обоснованием. Цифры синтетические, собраны для разбора.
Цифры тут синтетические, я собирал их для разбора. Но устроены они так, как ведут себя реальные слои, и логика принятия решения настоящая: агент не голосует за самую большую цифру, он сверяет каждую ось с форматом задачи.
Сводим оси вместе: почему выигрывает деловой кластер
Ни одна ось не решает в одиночку, и в этом вся соль. Неглинная выигрывает трафик и проигрывает всё остальное. Ходынка выигрывает аренду и проигрывает спрос. Деловой кластер не лидирует ни по одной отдельной метрике, кроме одной: совпадения ритма потока и аудитории с форматом. Именно это совпадение и перевешивает.
Три кандидата по пяти осям. Чем больше закрашенных точек, тем сильнее эта ось поддерживает формат кофейни. Победитель не лидер ни в одной строке — он лидер по ровности столбца: единственный без красных провалов.
Удобно увидеть это и на другой картинке, если положить кандидатов на две оси: пеший трафик по вертикали, число конкурентов по горизонтали. Наивная логика говорит искать угол «много трафика, мало конкурентов», и в этом углу сидит как раз Ходынка. Но именно она проигрывает, потому что низкая конкуренция там — это не свободная ниша, а отсутствие дневного спроса.
«людно + пусто»
Трафик против числа конкурентов. Размер точки — это аренда, цвет — совпадение ритма с форматом. Победитель не в наивном углу «много людей, нет конкурентов», а в зоне подтверждённого будничного спроса.
Где этот метод врёт: честно про ограничения
Без этого раздела текст был бы рекламой, а данные не всесильны. Слои отвечают ровно на один вопрос: есть ли по этому адресу нужный поток нужных людей в нужное время и по карману ли аренда. Они молчат про то, будет ли у вас вкусный кофе, приветливый бариста, узнаваемый бренд и нормальная операционка. Две кофейни на одном углу с одинаковыми данными живут совершенно по-разному именно из-за этого. Site selection снимает часть риска на входе, а не весь риск бизнеса.
Типовых ошибок интерпретации три, и все они про то, как красивая цифра обманывает.
Первая: путать объём трафика с нужной аудиторией. 15 800 человек у Ходынки — это не 15 800 утренних покупателей кофе. Смотрите почасовой профиль и демографию, а не только суточное число.
Вторая: считать конкуренцию злом. Иногда пустая улица пуста не потому, что место свободно, а потому, что спроса нет. А плотный кластер бывает признаком живого спроса, в который выгоднее встроиться, чем искать пустошь.
Третья: брать радиус по умолчанию. 300 метров в плотном центре и 300 метров вдоль широкого проспекта с редкими подземными переходами — это разная пешая доступность. Реки, железные дороги и шестиполосные магистрали режут реальный доступ, и трафик в двухстах метрах от вас физически может до вас не доходить.
И честно про сами данные. У только что открывшихся конкурентов уверенность ниже (про флаги уверенности тоже в статье про нормализацию), а пеший трафик — это модельная оценка по обезличенным панелям и источникам, а не перепись прохожих. Поэтому правильный вывод из всего разбора звучит не как «открывай здесь», а как «здесь паттерн лучше и риск ниже, иди смотри помещение ногами».
Что в сухом остатке
Выбор места для кофейни в Москве сводится не к одной красивой цифре трафика, а к совмещению слоёв. Победил не самый людный адрес, а тот, где ритм потока и аудитория совпали с форматом при вменяемой аренде. Неглинная — это лучший трафик и худшая экономика для навыноса. Ходынка — это дешёвое просторное место без дневного спроса. Деловой кластер у Павелецкой — это будний утренний поток платёжеспособных офисных людей, кластер кофеен как доказательство спроса и аренда вдвое ниже, чем на Неглинной.
Те же четыре слоя (пеший трафик, POI и конкуренция, демография, недвижимость) одинаково ложатся на выбор места под бар, пункт выдачи или аптеку, меняются только веса осей. Агент проходит их за один прогон, а человек принимает решение и идёт смотреть помещение. В первой статье мы разбирали, как данные о городе вообще становятся чистыми, во второй — как агент до них дотягивается, а тут показали, что из этого получается на живой задаче.