Термин «headless» всё чаще звучит на встречах с клиентами — обычно после разговора с маркетологом или знакомым разработчиком, который назвал его «современным подходом». Архитектура действительно мощная, но она решает конкретные задачи и приносит с собой дополнительную сложность. Мы делаем проекты и на классических CMS, и в связке headless-бэкенда с витриной на Nuxt или Next, поэтому попробуем честно описать, где граница между разумным решением и модой.
Что значит «headless» простыми словами
Классическая CMS — WordPress, 1С-Битрикс, OpenCart — это монолит: одна система хранит контент, содержит админку и сама формирует HTML-страницы, которые видит посетитель. Шаблоны сайта живут внутри CMS, и внешний вид неразрывно связан с системой управления. Это удобно, пока у вас один сайт и все страницы строятся по шаблонам этой CMS.
Headless CMS — это система управления без «головы», то есть без собственной витрины. Она хранит контент и отдаёт его через API в структурированном виде, например в формате JSON. А показывает этот контент отдельное приложение: сайт на Vue/Nuxt или React/Next, мобильное приложение, экран в торговом зале, чат-бот. Редактор работает в привычной админке, но его тексты и карточки могут одновременно появляться в нескольких местах.
Важно, что headless — это не конкретный продукт, а архитектурный подход. В роли headless-бэкенда может выступать специализированная система, изначально построенная вокруг API, а может и классическая CMS, у которой используется только админка и программный интерфейс. Например, WordPress и Битрикс умеют отдавать данные через API, и в некоторых проектах их удобно использовать именно так.
Как устроен такой проект
Классическая архитектура
- Одна система: данные, админка и шаблоны
- Один сервер, одна кодовая база
- Страница формируется CMS при каждом запросе или берётся из кеша
- Любой разработчик под эту CMS быстро разберётся в проекте
- Изменение дизайна затрагивает шаблоны внутри CMS
Headless-архитектура
- Минимум две системы: бэкенд с контентом и фронтенд-приложение
- Отдельный хостинг или процесс для витрины
- Витрина запрашивает данные по API и рендерит страницы
- Нужны компетенции и в бэкенде, и во фронтенд-фреймворке
- Витрину можно переделать, не трогая данные и админку
На практике между бэкендом и витриной часто добавляется ещё один слой — кеш или CDN, который хранит готовые страницы и раздаёт их максимально быстро. Страницы могут генерироваться заранее при публикации контента, на сервере при запросе или комбинированно: популярные — заранее, редкие — по требованию. Эти решения принимаются при проектировании и сильно влияют на скорость и стоимость проекта.

Какие задачи headless решает лучше классики
Один контент — много каналов
Если компания публикует одни и те же данные на сайте, в мобильном приложении, в терминалах самообслуживания и в партнёрских виджетах, headless избавляет от дублирования. Сеть фитнес-клубов «Импульс», которую мы приведём как условный пример, ведёт расписание занятий, описания программ и карточки тренеров в одной админке, а данные отображаются на сайте, в приложении для записи и на экранах в холлах клубов. Менеджер меняет время тренировки один раз — и оно обновляется везде.
Сложный интерактивный интерфейс
Конфигураторы товаров, калькуляторы с мгновенным пересчётом, каталоги с фильтрацией без перезагрузки страницы, личные кабинеты, похожие на приложения, — всё это удобнее делать на современном фронтенд-фреймворке. Классическая CMS тоже позволяет встроить такие элементы, но когда их становится много, шаблоны CMS начинают мешать, и разделение на бэкенд и витрину упрощает разработку.
Высокие требования к скорости
Витрина, собранная заранее и раздающаяся через CDN, отдаёт страницы за десятки миллисекунд независимо от нагрузки на бэкенд. Для медиа, крупных каталогов и сайтов с резкими всплесками трафика это ощутимое преимущество. Сама CMS при этом может работать на скромном сервере, ведь посетители к ней напрямую не обращаются.
Независимое развитие фронтенда и бэкенда
Когда над проектом работают отдельные команды, разделение позволяет им не мешать друг другу. Можно полностью обновить дизайн и витрину, не трогая админку и данные, или заменить систему управления, сохранив фронтенд.
Цена, которую приходится платить
Главный минус headless — сложность. Вместо одной системы появляются две или три, каждую нужно разрабатывать, разворачивать, обновлять и мониторить. Проект требует команды, которая уверенно владеет и бэкендом, и современным фронтендом, а также инфраструктурой для сборки и публикации. Стоимость разработки обычно выше на 30–60% по сравнению с аналогичным сайтом на классической CMS.
Многие вещи, которые в классической CMS работают «из коробки», в headless приходится делать заново. Предпросмотр страницы перед публикацией, визуальное редактирование, SEO-настройки, карта сайта, переадресации, формы, поиск по сайту — всё это нужно реализовать на стороне витрины. Редактор, привыкший видеть страницу так, как её увидит посетитель, может столкнуться с абстрактными формами полей, если предпросмотр не продуман.
Третий нюанс — SEO. Если витрина отрисовывает страницы только в браузере посетителя, поисковые роботы могут увидеть пустую страницу. Поэтому для публичных сайтов обязателен серверный рендеринг или предварительная генерация страниц. Nuxt и Next это умеют, но требуют правильной настройки — иначе можно получить сайт, который отлично выглядит у пользователей и почти не индексируется.
Если единственная причина выбрать headless — «так сейчас делают», почти наверняка лучше классическая CMS с хорошо сделанными шаблонами. Headless оправдан, когда вы можете назвать конкретную задачу, которую он решает, и посчитать её ценность для бизнеса.
Когда headless оправдан, а когда нет
| Ситуация | Рекомендация |
|---|---|
| Корпоративный сайт на 20–50 страниц с новостями | Классическая CMS — быстрее, дешевле, проще в поддержке |
| Лендинг под рекламную кампанию | Статический сайт или простая CMS |
| Контент нужен на сайте и в мобильном приложении | Headless — один источник данных для всех каналов |
| Магазин со сложным конфигуратором и интерактивным каталогом | Headless-витрина над платформой магазина |
| Медиа или крупный каталог с пиковыми нагрузками | Headless с генерацией страниц и CDN |
| Небольшая компания без своей IT-команды | Классическая CMS — меньше точек отказа |
| Несколько сайтов брендов с общим контентом | Headless — единая админка, разные витрины |
Гибридный путь: headless частично
Между крайностями есть компромисс, который мы часто предлагаем клиентам. Основной сайт работает на классической CMS, а отдельные сложные разделы — конфигуратор, личный кабинет, интерактивная карта объектов — сделаны как самостоятельные приложения на Vue или React, получающие данные из той же CMS через API. Так бизнес получает современный интерфейс там, где он действительно нужен, и не платит за усложнение всего проекта.
Пример: производитель модульных домов хотел дать клиентам возможность собрать дом из модулей, выбрать отделку и сразу увидеть цену. Весь корпоративный сайт мы оставили на классической CMS с обычными шаблонами, а конфигуратор сделали отдельным приложением, которое берёт модули и цены из админки. Разработка заняла на треть меньше времени, чем полный headless, а редакторы продолжили работать в привычной системе. Подобные проекты мы делаем в рамках услуги разработки корпоративного сайта.
Сколько стоит владение headless-проектом
Разработка — только часть расходов. Если используется облачная headless CMS, она обычно оплачивается подпиской, стоимость которой растёт вместе с числом редакторов, записей и запросов к API. Самостоятельно размещённая система бесплатна по лицензии, но требует сервера и администрирования. Витрина на Nuxt или Next с серверным рендерингом нуждается в собственном хостинге с поддержкой Node.js, а сборка и публикация — в настроенном конвейере развёртывания.
В итоге ежемесячные расходы на инфраструктуру и поддержку headless-проекта обычно в полтора–два раза выше, чем у сопоставимого сайта на классической CMS. Для бизнеса, которому архитектура приносит реальную выгоду — экономию на ручном дублировании контента, рост конверсии за счёт скорости, возможность быстро запускать новые витрины, — эта разница окупается. Для сайта, которому достаточно десятка шаблонных страниц, нет.
Как подготовиться к headless-проекту
Сформулировать каналы и сценарии
Где будет показываться контент, кто его редактирует, как часто он меняется. Без этого невозможно спроектировать модель данных.
Спроектировать модель контента
Описать типы данных и связи между ними: товары, категории, статьи, авторы, блоки страниц. В headless модель данных важнее, чем в классической CMS, потому что её используют несколько потребителей.
Выбрать стратегию рендеринга
Какие страницы генерируются заранее, какие — на сервере при запросе, как обновляется кеш после публикации.
Продумать работу редактора
Предпросмотр, черновики, планирование публикаций, права доступа. Это определяет, насколько удобно команде будет жить с новой системой.
Заложить поддержку
Две системы — два набора обновлений, мониторинга и резервных копий. Это нужно учесть в бюджете на годы вперёд.
Вывод
Headless CMS — сильный инструмент для проектов, где один контент публикуется в нескольких каналах, где нужен сложный интерактивный интерфейс или экстремальная скорость при высокой нагрузке. В этих случаях разделение админки и витрины окупает дополнительную сложность и стоимость.
Для большинства корпоративных сайтов, лендингов и небольших магазинов классическая CMS остаётся более рациональным выбором: дешевле, быстрее в запуске, проще в поддержке и не требует отдельной фронтенд-команды. Часто лучшее решение — гибрид, где современные технологии используются точечно. Если вы выбираете между вариантами, полезно также прочитать наш разбор CMS или самописного сайта — многие аргументы там пересекаются.
Нужен сайт или интернет-магазин?
Обсудим задачу, подскажем подходящую платформу и оценим сроки и бюджет — бесплатно и без обязательств.
Обсудить проект
