What Is a Headless CMS, and Does Your Website Need One?

A content management system (CMS) is the part of a website where you edit text, images and pages without touching code. "Headless" describes how that system is connected to the site. It sounds technical, but the idea is simple, and it affects how easy your site is to run.
Traditional versus headless
In a traditional CMS, such as a standard WordPress site, the editing side and the public website are one system. Content is stored in a database, and the same software turns it into web pages using a theme.
In a headless CMS, the editing side only stores and manages content. It doesn't decide how anything looks. The website (the "head") is built separately and fetches the content it needs through an API. Examples include Sanity, Contentful and Strapi; WordPress can also be used this way.
Because the content isn't tied to one website, the same content can appear in several places: your website, a mobile app, an in-store screen or an AI assistant reading your product details.
What that means day to day
For editors, a well-set-up headless CMS is mostly forms. A service has a title, a short description, a list of what's included and some questions and answers. You fill in those fields, and the website decides how to lay them out.
That has a few practical effects:
- Editors can't accidentally break the design, because they're entering content, not arranging the page.
- Content stays consistent. A price or an address entered once appears correctly everywhere it's used.
- Previews show changes before they go live, in most modern systems.
- Developers can redesign the site without moving all the content again.
This website runs on Sanity. Our services, projects and these blog posts are all edited there, and the site updates within moments of publishing.
The advantages
- Speed. The public site can be pre-built and served from fast hosting, without a database on every page view. See Core Web Vitals explained for why that matters.
- Security. There's no public admin login on the website itself, which removes a common target.
- One source of content for many places, such as a website and an app.
- Structured content, which helps search engines and AI tools understand it. Structured FAQ data, for example, comes straight from fields in the CMS.
The trade-offs
- It needs a developer to set up. There's no theme to install; someone builds the website and connects it.
- Layout changes need a developer too, unless they've given you flexible page sections to work with.
- Plugins don't exist in the same way. Features like forms or search are built into the site or added as services.
- Some hosted CMSs charge by usage once you go beyond their free tier, so check the pricing against your team size and traffic.
Do you need one?
A headless CMS is probably a good fit if:
- you're having the site built by developers anyway, for example in Next.js
- you want the same content in a website and an app
- several people edit the site and you'd like them to work within clear fields
- speed and security matter more to you than installing ready-made plugins
A traditional CMS may suit you better if:
- you want to build and change the site yourself without a developer
- the site is simple and you need it live quickly on a small budget
- you rely on a particular plugin that would be costly to rebuild
If you're weighing the two for a new site, our comparison of Next.js and WordPress covers the wider choice. And if you'd like a site your team can update without calling us, that's how we build them; see web development.