Definition
Headless CMS
Also known as: API-first CMS, decoupled content platform
A headless CMS is a content management system that stores content as structured fields and delivers it over an API, leaving the presentation layer — website, app, feed, Markdown export — to be built separately. For answer engines it matters because the same fields that render the page can also generate JSON-LD, Markdown and llms.txt without the outputs drifting apart.
The "head" is the presentation layer that a traditional CMS bundles together with its editing interface and database. A headless system keeps the editor and the content store and drops the head: content is fetched through a REST or GraphQL API by whatever needs it, whether a website, a mobile app or a build script. Storyblok, Contentful and Sanity are typical examples. This site runs on Storyblok with a Next.js front end.
An answer engine only ever sees the output, but the quality of that output is decided by the content model. When the short answer, the FAQ items, the sources and the author are fields with validation rules, a page cannot be published without them, and the FAQPage and Person JSON-LD, the Markdown representation and the /llms.txt index are all generated from the same values as the visible text. Nothing is kept in sync by hand.
The guide content type on this site, abbreviated:
guide:
title: text
short_answer: textarea # 40–70 words; the Speakable target
body: richtext
key_takeaways: bloks[takeaway]
faq: bloks[faq_item] # emitted as FAQPage
sources: bloks[source] # emitted as Article.citation
author: reference[author] # emitted as Person
related_terms: references[glossary_term]The guide on modelling content for answer engines in a headless CMS walks through the model field by field.
Frequently asked questions
Why does a headless CMS help with AEO?
Because it forces content into named fields. A short answer, a list of FAQ items, a sources list and an author reference are separate fields rather than paragraphs inside one rich-text blob, so the build step can emit them as visible HTML, as schema.org markup and as Markdown from a single source. A traditional page builder makes that separation optional, and in practice it erodes.