Что было до сайта

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

Рынок вокруг выглядит одинаково. Безликие каталоги техники, у половины позиций «цена по запросу». Прораб, которому надо продолбить 60 м² бетонного пола, должен сам догадаться, сколько кубов в минуту ему нужно и во сколько это встанет.

Спрос здесь аварийный. Технику ищут, когда работа уже встала, и звонят первым двум-трём подрядчикам, которые показали цену и сказали «привезём сегодня». Выигрывает тот, кого проще понять за минуту разговора.

Сначала разбор ниши, потом код

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

Считали по цифрам. На Яндекс.Услугах по Петербургу нашлось 132 владельца компрессоров: поле плотное, но разрозненное. Цена смены дизельного компрессора с молотками на момент разбора держалась в диапазоне от 9 700 до 13 800 ₽. Нишу оценили по 8 осям: спрос, аварийность интента, барьер входа, сезонность и другие. Итог около 6,9.

!
Нейропоиск процитирует то, чего у клиента нет

Сначала сайт и файл llms.txt перечисляли типовой ассортимент проката: электрические компрессоры, генераторы, тепловые пушки. Как у всех конкурентов в выдаче. Потом выяснилось, что подтверждена ровно одна позиция: дизельный компрессор с отбойными молотками на прицепе. Остальное из разряда «вроде есть». Переписали: в llms.txt появились два раздела, «подтверждено, есть в наличии» и «уточняется наличие», а в прайсе у неподтверждённых позиций стоит пометка. Причина простая. ChatGPT и Алиса цитируют буквально, слово в слово. Заявка на технику, которую никто не привезёт, это сорванный заказ и испорченная репутация в первый же месяц работы. Коммит так и назван: «не выдаём неподтверждённое за факт».

Бренд и сайт без CMS

Название придумали от сути: БАРРЕНТ, это bar (давление) плюс rent (аренда). Проверили свободный домен, Роспатент по классам 7, 37 и 39 и 2ГИС на тёзок в городе. Палитра графит плюс сигнальный оранжевый, фавикон-манометр нарисован на чистом CSS без картинки.

Сайт статический, но собирается он сам. Есть один файл-реестр со списком страниц: адрес, заголовок, описание, канонический URL. Генератор проходит по списку, склеивает общую шапку, подвал и служебную «голову» с содержимым страницы и раскладывает готовый HTML по чистым адресам.

Смысл этого для владельца сайта практический. Правка в шапке делается один раз и сразу появляется на всех страницах. Новая страница добавляется одной строкой в реестр. Стили вшиваются в страницу при сборке, поэтому первый экран рисуется без второго запроса к серверу. Весь генератор занял 51 строку, стилей на сайте 392 строки, скриптов 104, внешних библиотек нет ни одной.

  • 6 страниц в реестре плюс две обязательные по 152-ФЗ
  • 15 секций на главной: герой, парк техники, задачи, калькулятор, зоны подачи, FAQ, форма
  • режим превью: та же сборка, закрытая от индексации, чтобы показывать заказчику до запуска
  • автодеплой: разработчик делает push, примерно через 2 минуты изменения на боевом сайте

Калькулятор смены считает по задаче

Клиент в этой нише техники не знает и знать не обязан. Он знает свою работу: сколько квадратов вскрыть и к какому числу.

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

Весь прайс вынесен в один объект в коде. Цены меняются одной правкой, без вёрстки и без разработчика на каждую цифру.

Чтобы находили и люди, и нейросети

Классическое SEO закрыли на всех страницах: разметка Schema.org, sitemap, чистые адреса, отдельная флагманская страница под самый частый запрос про компрессор с отбойными молотками. В разметке 18 вопросов FAQ, 5 блоков хлебных крошек, 6 объектов услуг.

Отдельным слоем сделали GEO, видимость в нейропоиске. Файл llms.txt с фактурой для ИИ и robots.txt, где 16 поисковых и ИИ-ботов пущены явно: ChatGPT, Claude, Perplexity, YandexGPT, Applebot и другие.

Заявка доходит до человека. Форма уходит на серверный обработчик, оттуда уведомление в Telegram и во внутреннюю CRM. Плюс коллтрекинг с подменой номера, чтобы видеть, какой канал даёт звонки. Счётчик Метрики грузится отложенно: по первому касанию или через 3,5 секунды после загрузки.

Где споткнулись

Красивое меню, которое ничего не решало. Двухколоночная мега-панель «Техника» смотрелась солидно, но шесть пунктов в ней вели на один и тот же адрес. Переделали в обычный список услуг: флагманская позиция наверху с бейджем «Самая частая заявка» и своей страницей, смежные форматы уходят в хаб, неподтверждённая техника приглушена в отдельный блок «Также в парке».

Вёрстка не ждала фотографа. Каждая картинка вписана в макет как именованный слот: пока файла нет, на его месте видна подпись с описанием кадра, и макет не разъезжается. Это позволило верстать и готовить графику параллельно. Итоговые кадры гибридные: реальные фото техники там, где они были, остальное сгенерировано по жёсткому ТЗ на единую документальную стилистику. Серое небо, мокрый асфальт, грязная рабочая техника, лица не читаются.

Замена фото под тем же именем не доходит до посетителя. Сервер отдаёт картинки с длинным кешем, и браузер месяц показывает старый файл. Решили это в генераторе: он сам дописывает к адресу каждой картинки короткий хеш её содержимого. Обновил файл, адрес сменился, кеш сбросился сам, без просьб «нажмите Ctrl+F5».

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

  • без favicon.ico именно в корне сайта Яндекс.Вебмастер не видит иконку, сколько современных форматов ни подключай
  • правки в собранном HTML затираются следующей сборкой: править нужно исходный файл стилей, это записано в README и в задании для внешнего исполнителя
  • побочная находка: во время SEO-аудита нашёлся баг в нашем же инструменте обхода сайтов, заголовки ответа он сохранял в одном регистре, искал в другом, поэтому обход вставал на первой странице. Починили одной строкой, теперь работает на всех проектах

Частые вопросы

Можно ли сделать сайт за один день?

Да, если нишу разобрали заранее и сайт собирается без CMS. В этом кейсе за один рабочий день появились название БАРРЕНТ, шесть страниц, калькулятор смены и боевой домен compressor-spb.ru. Весь генератор сайта занял 51 строку, внешних библиотек нет ни одной.

Зачем сайту аренды спецтехники калькулятор стоимости?

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

Как попасть в ответы ChatGPT и Алисы?

Нужны факты в машиночитаемом виде и открытый доступ ботам. На сайте лежит файл llms.txt с фактурой, в robots.txt явным списком пущены 16 поисковых и ИИ-ботов, на страницах стоит разметка Schema.org с 18 вопросами FAQ. Писать в этих файлах можно только подтверждённое: нейросети цитируют буквально, слово в слово.

Что такое llms.txt и зачем он нужен сайту?

Это текстовый файл с фактами о компании для нейропоиска. В кейсе БАРРЕНТ он разделён на два блока: подтверждённая техника и позиции с неподтверждённым наличием. Так ChatGPT или Алиса не пообещают клиенту то, что ему никто не привезёт.

Нужна ли CMS для сайта по аренде техники?

В этом кейсе обошлись без неё. Есть реестр страниц, генератор склеивает шапку, подвал и содержимое и раскладывает готовый HTML по чистым адресам. Правка в шапке делается один раз и появляется везде, новая страница добавляется одной строкой. Разработчик делает push, примерно через 2 минуты изменения на боевом сайте.