A headless CMS stores and manages content, then delivers it through an API to whatever front end you build, whether that’s a website, an app or both. The best choice depends on who edits the content and who hosts the system. For most teams, the shortlist is Sanity, Contentful, Strapi, Storyblok and Payload, with Contentstack and Directus for specific needs.
What “headless” means in practice
A traditional CMS such as WordPress both stores content and renders the pages. A headless CMS only does the first job. Developers fetch content over a REST or GraphQL API and render it with a framework such as Next.js, Nuxt or Astro. You gain freedom over the front end and can reuse content across channels. In return, you have to build and host the front end yourself, and editors lose some of the page-preview convenience they are used to.
The shortlist at a glance
| CMS | Hosting | Pricing model | Best for |
|---|---|---|---|
| Sanity | Hosted content store | Free tier, then per seat | Custom content models and real-time collaborative editing |
| Contentful | Hosted | Free tier, then paid plans | Larger organisations with many teams and locales |
| Strapi | Self-hosted or Strapi Cloud | Free open source, paid cloud | Teams that want an open-source Node.js CMS they control |
| Storyblok | Hosted | Free tier, then paid plans | Marketing teams that want a visual editor |
| Payload | Self-hosted | Free open source (MIT) | Developers building in Next.js who want code-first configuration |
| Contentstack | Hosted | Enterprise contracts | Enterprise digital experience programmes |
| Directus | Self-hosted or cloud | Source-available, free below a revenue threshold | Putting an API and admin UI on top of an existing SQL database |
| Headless WordPress | Any WordPress host | Free open source | Teams already on WordPress who want a modern front end |
Sanity
Sanity treats content as structured data, defined in code, and its editing studio is fully customisable. Several people can edit the same document at once. It suits teams with unusual content models. The downside is that a developer has to set up and maintain the studio, and its own query language, GROQ, takes some learning.
Contentful
One of the best-known hosted headless platforms, with strong localisation, roles and an app marketplace. It is built for organisations with many content teams. Costs rise quickly beyond the free tier, and the free tier carries restrictions on commercial use, so check the current terms.
Strapi
An open-source headless CMS built on Node.js. You can self-host it for free or use the paid Strapi Cloud. Strapi 5 is the current major version. It is a good fit when you want full control over hosting and data without writing a CMS from scratch. On the self-hosted version, you handle the upgrades and security.
Storyblok
Storyblok’s main selling point is its visual editor: editors see a live preview of the page and edit components in place. That makes it the easiest headless option for marketing teams that miss the WordPress editing experience.
Payload
Payload is code-first: you define collections and fields in TypeScript, and it installs directly into a Next.js app. It is MIT licensed and was acquired by Figma in 2025, and the open-source licence has stayed in place. It is popular with developers who would rather configure content in code than click through a dashboard.
Contentstack and Directus
Contentstack is an enterprise platform sold through sales-led contracts. It is aimed at large brands running content across many sites and channels. See the Contentstack notes for how it models content. Directus takes a different approach: it wraps an existing SQL database with an API and an admin interface, which is useful when the data already exists. Its licence is source-available rather than fully open source, and it is free for organisations below a set revenue level.
Headless WordPress
If your team already knows WordPress, you can keep it as the editing back end and serve content through the built-in REST API or a GraphQL plugin. Editors keep a familiar interface, and developers get a modern front end. The cost is two systems to run instead of one.
How to choose
- Who edits? Non-technical marketers lean towards Storyblok or Contentful. Developers comfortable in code lean towards Payload or Sanity.
- Who hosts? If you must self-host, use Strapi, Payload, Directus or WordPress. If you want no servers, use Sanity, Contentful, Storyblok or Contentstack.
- How will costs grow? Per-seat and per-record pricing gets expensive as teams and content grow. Model your second year, not your first month.
- Can you leave? Check how content exports before you commit. Moving between headless systems still means remapping content models.
Pricing and plan limits change frequently, so check each vendor’s current pricing page. If you are weighing a traditional CMS instead, see the WordPress notes and what Drupal and WordPress cost.