#1★ TOP PICK
Directus
An instant API and admin app over any SQL database you already have.
72
SOURCE-AVAILABLEBusiness Source License 1.1 (source-available; free under a revenue threshold, converts to GPL in time)SELF-HOSTLOCAL-FIRST
Directus takes a different route: point it at a SQL database — new or existing, with your own schema — and it generates a REST and GraphQL API plus an admin interface on top, without owning or altering your data model. That matters most for the very common case where content already lives in a database that other systems also use. Around 37k stars. The licence needs stating precisely: Directus uses the Business Source License 1.1, which converts to GPL after a delay and is free below a revenue threshold — source-available rather than open source, despite frequent mislabelling.
Strengths
- +Works over an existing SQL database without changing your schema
- +Instant REST and GraphQL APIs plus a genuinely good admin interface
- +Your data stays in your own database, readable by anything else
- +No per-record or per-API-call metering
Trade-offs
- −Business Source License — not open source, and commonly mislabelled
- −A revenue threshold applies before a commercial licence is needed
- −Self-hosting means running a database and an application server
- −Fewer enterprise workflow features than Contentful
Free to self-host under the BSL revenue threshold. Directus Cloud and commercial licences are paid. #2
Markdown files in Git
For developer-owned content, the CMS may be the thing to remove.
99
OPEN SOURCEN/A — plain files in your own repositorySELF-HOSTLOCAL-FIRST
Worth asking before choosing any of the above: does non-technical staff actually edit this content? A great many headless CMS deployments serve documentation and marketing pages maintained entirely by developers — content that could be Markdown files in the repository, reviewed in pull requests, deployed by CI, with no server, no API call metering and no vendor. Every modern framework reads Markdown natively. This is not a product; it is a scope check, and it is the right answer more often than the category admits.
Strengths
- +No CMS, no database, no API, no per-record billing — nothing to run
- +Content reviewed in pull requests alongside the code it describes
- +Complete version history for free
- +Every modern framework reads Markdown natively
Trade-offs
- −Non-technical editors cannot realistically contribute
- −No media library or scheduled publishing
- −Structured, relational content becomes awkward quickly
- −Wrong answer the moment a marketing team needs access
Free. There is nothing to host. #3
Ghost
If it is a publication rather than an app, this is probably the answer.
95
OPEN SOURCEMITSELF-HOSTLOCAL-FIRST
Ghost is a publishing platform rather than a general content API: posts, pages, newsletters, memberships and paid subscriptions, with an editor writers genuinely like. MIT, around 55k stars, run by a non-profit foundation. It is listed because a real share of teams evaluating a headless CMS are building a blog or a publication, and for that job a purpose-built tool with newsletters and payments already included beats assembling the same thing from a content API and three integrations.
Strengths
- +MIT, run by a non-profit foundation — no vendor to change terms
- +Newsletters, memberships and paid subscriptions built in
- +The best writing and editing experience in this comparison
- +Can be used headlessly via its Content API
Trade-offs
- −Built for publications, not general structured content
- −Content modelling is far less flexible than Directus or Strapi
- −Node and MySQL to operate when self-hosted
- −Wrong tool for an application's content layer
Free and open source to self-host. Ghost(Pro) hosting is paid. #4
Payload
A CMS that installs into your Next.js app rather than beside it.
93
OPEN SOURCEMITSELF-HOSTLOCAL-FIRST
Payload is a TypeScript-native CMS that runs inside your Next.js application: the config is code, the types are generated, and there is no separate service to deploy or keep in sync. For a team already building in Next.js that removes an entire moving part, and the developer experience is the best in this comparison by a clear margin. MIT licensed with around 44k stars. The constraint is the same as the strength — it assumes Node and, in practice, Next.js, so it is the wrong answer for a team that is not there.
Strengths
- +MIT with no carve-outs — the cleanest licence here
- +Installs into your Next.js app; no separate service to run
- +Config as code with generated TypeScript types
- +Excellent admin interface out of the box
Trade-offs
- −Assumes Node and effectively assumes Next.js
- −Younger than Strapi with a shorter enterprise record
- −Smaller plugin ecosystem
- −Not suitable if your front end is not JavaScript
Free and open source. Payload Cloud is an optional paid hosted tier. #5
Strapi
The established open headless CMS, with the largest community.
86
OPEN SOURCEMIT core, with enterprise features under a separate commercial licenceSELF-HOSTLOCAL-FIRST
Strapi is the most widely deployed open-source headless CMS: a content-type builder, REST and GraphQL APIs, role-based permissions, internationalisation and a large plugin marketplace. Around 73k stars. It is the safe choice in the sense that most problems you hit have already been asked about somewhere. Licensing is mixed and worth checking against your needs: the core is MIT, but a number of enterprise features — SSO, audit logs, advanced permissions — sit under a separate commercial licence.
Strengths
- +Largest community and plugin ecosystem of any open headless CMS
- +Content-type builder that non-developers can use
- +REST and GraphQL out of the box
- +Mature, with years of production deployments
Trade-offs
- −SSO, audit logs and advanced permissions are commercial
- −Major version upgrades have been disruptive historically
- −Heavier to run than Payload
- −Single-vendor governance
Community edition free and self-hostable. Enterprise and Cloud tiers are paid.