Headless CMS: коли варто, а коли це зайве ускладнення
Як працює headless-архітектура, що вона дає бізнесу і в яких випадках звичайна CMS дешевша та зручніша. Порівняння популярних рішень.
Headless CMS продають як обов’язковий крок у «сучасну архітектуру». Насправді це компроміс: ви отримуєте швидкий фронтенд і нормальний API, а платите другим сервісом в інфраструктурі, складнішим прев’ю й вищим порогом входу для редактора. Нижче — як воно влаштоване технічно, у яких сценаріях реально окупається, коли перетворюється на зайве ускладнення, і чим популярні рішення відрізняються за вартістю володіння, а не за маркетинговою сторінкою.
~30%
надбавка до вартості розробки на старті
$0–99
типова місячна вартість хмарної headless CMS
1 API
на сайт, застосунок і партнерські інтеграції
3+
канали контенту, з яких підхід починає окупатися
Що таке headless і чим воно відрізняється від звичайної CMS
Класична CMS — це три речі в одній коробці: база контенту, адмінка й шаблони, які перетворюють контент на HTML. Headless прибирає третю частину. Лишається сховище та адмінка, а назовні вони віддають контент структурованим JSON через API. Що з цим робити далі — справа фронтенду: зібрати сайт на Next.js, віддати той самий текст у мобільний застосунок або на екран у шоурумі.
- 1
Редактор публікує матеріал
В адмінці він бачить не сторінку, а поля: заголовок, анонс, галерея, ціна, теги. Поля описані схемою, тож зламати верстку неможливо в принципі — її тут просто немає.
- 2
Контент стає доступним через API
CMS віддає структуровані дані по REST або GraphQL. Той самий запис одночасно доступний для сайту, застосунку, розсилки й будь-якої зовнішньої системи, яка вміє ходити по HTTP.
- 3
Фронтенд забирає дані й будує сторінки
Або під час збірки, або за першим запитом із подальшим кешуванням. Це ключовий момент: користувач отримує вже готовий HTML, а не результат запиту до бази в реальному часі.
- 4
CDN віддає готове
Сторінка лежить на межі мережі, поруч із користувачем. Звідси й типова відповідь за 100–300 мс без жодного кешувального плагіна — кешувати просто нічого, все вже статичне.
// Один і той самий запис — для сайту, застосунку й розсилки.
// revalidate тримає сторінку статичною, але не старшою за годину.
const post = await fetch(
`${CMS_URL}/api/posts?slug=${slug}&locale=${locale}`,
{ next: { revalidate: 3600 } },
).then((r) => r.json());Що це реально дає бізнесу
- Швидкість без боротьби. Сторінка віддається статикою, тому Core Web Vitals виходять зеленими за замовчуванням, а не після трьох ітерацій оптимізації плагінів.
- Один контент — багато каналів. Каталог, який ви ведете в CMS, годує сайт, застосунок, прайс для маркетплейсу й імпорт для партнера. Без копіювання вручну й без розбіжностей у цінах.
- Редизайн без переїзду контенту. Фронтенд можна переписати з нуля, не торкаючись бази. Це економить 30–50% бюджету наступного редизайну — контент і структура лишаються на місці.
- Менша поверхня атаки. Немає публічної адмінки на відомій адресі й немає плагінів із правами на запис у файли сайту. Сама CMS живе за окремим доменом і закрита автентифікацією.
- Реальна багатомовність. Локалі — це поле в схемі, а не третій плагін поверх двох попередніх. Що з цим робити далі, ми розбирали в матеріалі про багатомовні сайти.
Коли headless — зайве ускладнення
Це та частина, яку зазвичай не пишуть. Headless має цілком реальну ціну, і найчастіше її платять проєкти, яким вона не потрібна. Ознаки, за яких ми самі відмовляємо клієнту в headless.
Ознаки, що вам вистачить звичайної CMS
- Один канал — тільки сайт, і застосунку в планах немає
- До 30 сторінок, які оновлюються кілька разів на рік
- Немає розробника на підтримці: кожна дрібна правка вимагатиме деплою
- Редактор звик до візуального конструктора й категорично не хоче полів
- Бюджет проєкту до $2 000 — надбавка з’їдає чверть кошторису
- Потрібні складні форми, розрахунки чи членство «з коробки», де готова екосистема виграє
Headless вирішує проблему масштабу контенту. Якщо у вас її немає, він додає вам проблему масштабу інфраструктури — і жодної вигоди натомість.
Найболючіший пункт — прев’ю. У звичайній CMS редактор натискає «Переглянути» і бачить сторінку. У headless прев’ю треба окремо реалізувати на фронтенді, і зроблене абияк воно перетворює редакторську роботу на гру в вгадайку. Закладайте на це 8–16 годин розробки одразу, інакше через місяць отримаєте «поверніть нам як було». Загальне порівняння двох підходів за витратами є в розборі Next.js проти WordPress.
Рішення, які реально доходять до продакшена
| Рішення | Модель | Кому підходить | Підводний камінь |
|---|---|---|---|
| Sanity | Хмара, безкоштовний тариф, оплата за трафік API | Контентні сайти, блоги, складні структури | Рахунок росте разом із трафіком, схема описується кодом |
| Contentful | Хмара, корпоративні тарифи | Великі компанії, кілька команд і мов | Різкий стрибок ціни після безкоштовного тарифу |
| Strapi | Self-hosted, відкритий код | Коли дані мають лишатися на вашому сервері | Ви самі відповідаєте за оновлення, бекапи й аптайм |
| Payload | Self-hosted, живе поруч із Next.js | Проєкти, де потрібна кастомна логіка в адмінці | Молодша екосистема, менше готових рішень |
| WordPress як headless | Self-hosted, звичний редактор | Міграція з наявного WordPress без переїзду контенту | Ви тягнете за собою всі мінуси WordPress, крім швидкості |
Практичне правило вибору: якщо у вас немає людини, яка відповідає за сервери, беріть хмарне рішення й закладайте підписку в бюджет. Якщо є вимога тримати дані у себе або ви вже платите за VPS — self-hosted дешевший на дистанції, але переносить на вас оновлення й резервне копіювання. Ці години теж треба порахувати, і найчесніше зробити це разом із річним бюджетом підтримки.
Скільки це коштує і як ухвалити рішення
На старті headless дорожчий приблизно на 20–35% від вартості аналогічного сайту на звичайній CMS. Різниця йде на опис схем контенту, налаштування прев’ю, окреме середовище для CMS і зв’язування двох частин. Далі математика розвертається: наступний редизайн коштує менше, додавання каналу коштує майже нічого, а щомісячні витрати на плагіни зникають.
- 1Порахуйте канали. Один — беріть звичайну CMS. Два й більше або застосунок у планах на рік — headless виправданий.
- 2Порахуйте частоту публікацій. До десяти оновлень на місяць різниці не відчуєте; від сотні — структуровані поля економлять редактору години.
- 3Перевірте, хто підтримуватиме сайт. Без постійного розробника self-hosted headless стає покинутим сервісом за пів року.
- 4Заплануйте прев’ю та ролі доступу на етапі кошторису, а не «додамо потім». Потім це коштує вдвічі дорожче.
- 5Зафіксуйте формат експорту контенту в договорі. Головна перевага підходу — переносність, і вона має бути записана, а не малась на увазі.
Часті питання про headless CMS
Чи можна перевести наявний сайт на headless без втрати позицій у пошуку?
Так, якщо зберегти структуру URL, мета-теги, мікророзмітку й внутрішні посилання один в один. Ризик виникає тоді, коли разом із переїздом змінюють адреси сторінок і структуру розділів — тоді просідання майже гарантоване без коректних редиректів. Порядок дій і перелік того, що треба звірити до й після перемикання, зібрані в чеклісті SEO-міграції.
Чи зручно редакторам працювати з headless CMS?
Це залежить від того, наскільки добре описали схему полів і чи зробили прев’ю. Редактор працює з полями замість візуального конструктора: менше свободи, зате неможливо зламати верстку. Люди, які раніше вручну фарбували заголовки в редакторі, перший тиждень скаржаться, а потім зазвичай публікують швидше, ніж раніше.
Скільки коштує headless CMS щомісяця?
Хмарні рішення мають безкоштовні тарифи, яких вистачає невеликому сайту, а платні починаються приблизно від $15–99 на місяць і залежать від кількості користувачів та обсягу запитів до API. Self-hosted варіанти безкоштовні за ліцензією, але вимагають VPS від $10–20 на місяць плюс час на оновлення. Реальна вартість — це підписка або сервер плюс години розробника на обслуговування.
Чи підходить headless для інтернет-магазину?
Підходить, і для великих каталогів це часто найкращий варіант: товари віддаються з API, сторінки статичні, а залишки й ціни підтягуються окремим запитом. Складність у тому, що кошик, оплата й особистий кабінет потребують окремого рішення, тож бюджет на магазин зростає помітніше, ніж на контентний сайт. Що саме входить у такий проєкт, розписано в гайді з розробки інтернет-магазину.
Чи можна залишити WordPress і використовувати його як headless?
Так, WordPress має REST API з коробки, і це нормальний шлях міграції, коли редактори звикли до знайомої адмінки. Ви отримуєте швидкий фронтенд, але зберігаєте всі обов’язки з оновлення WordPress і його плагінів. Це компроміс для переходу, а не кінцева архітектура.
Коротко
- Headless розділяє сховище контенту й фронтенд: контент віддається як структурований JSON, сторінки збираються заздалегідь і лежать на CDN.
- Підхід окупається за двох умов: контент іде більш ніж в один канал або обсяг публікацій достатньо великий, щоб структуровані поля економили час.
- На старті це на 20–35% дорожче, натомість наступний редизайн і додавання каналів коштують суттєво менше.
- Прев’ю, ролі доступу й формат експорту контенту треба закласти в кошторис одразу — це три речі, через які проєкти повертаються назад на звичайну CMS.
Схожі матеріали
Next.js чи WordPress: що обрати для бізнес-сайту
Це не «сучасне проти застарілого». Це вибір між різними моделями витрат — розбираємо обидві.
Підтримка сайту: що входить і скільки це коштує на рік
Сайт — не разова покупка. Розкладаємо річну вартість володіння на конкретні позиції.
Як створити інтернет-магазин: платформи, оплати, доставка
Магазин — це не каталог з кнопкою. Розбираємо всі вузли, від чекауту до складської інтеграції.