Best / Headless CMS

Best open-source Headless CMS

The best self-hosted headless-CMS split in the c17.io catalog is Payload for an MIT TypeScript admin (the published Contentful / Sanity / Prismic / DatoCMS path), Strapi Community when you want that MIT Node admin — skip Cloud and ee/, Ghost when the job is an MIT publication rather than an API — /compare/ghost-vs-payload, and Directus when you want that data studio (MSCL-1.0-GPL, not OSI). This is not Contentful's every Compose SKU, Sanity's every GROQ pack, Prismic's every slice machine, or DatoCMS's every CDN SKU. A site you publish stays on /best/cms.

Open the stackStart on Railway

Ranked picks

  1. 1

    Payload

    MIT TypeScript headless CMS — the c17 Contentful / Prismic / DatoCMS path. /compare/payload-vs-strapi.

    When to pick it: Collections next to a Next.js app.

    45,291 stars in the catalog

  2. 2

    Strapi

    MIT Community Edition. Cloud is the meter /replace/strapi-cloud leaves. /compare/payload-vs-strapi.

    When to pick it: A Node admin the team already knows.

    73,323 stars in the catalog

  3. 3

    Ghost

    MIT publisher already on /best/cms. /compare/ghost-vs-payload.

    When to pick it: A site and members, not a headless API.

    55,549 stars in the catalog

  4. 4

    Directus

    A database as an API. License is MSCL-1.0-GPL, not OSI.

    When to pick it: A source-available data studio, not the OSS path.

    38,544 stars in the catalog

How they compare

ToolLicenseSelf-hostBest for
PayloadMIT LicenseMediumCollections next to a Next.js app.
StrapiMIT LicenseMediumA Node admin the team already knows.
GhostMIT LicenseEasyA site and members, not a headless API.
DirectusMSCL-1.0-GPLMediumA source-available data studio, not the OSS path.

Related pages

FAQ

Payload or Strapi?
Payload if you want the published TypeScript path. Strapi Community if you want that admin — /compare/payload-vs-strapi.
Prismic or DatoCMS?
Same published headless API — /replace/prismic and /replace/dato-cms.
Is this WordPress?
WordPress.org stays on /best/cms. This page is a content API.
Are these free?
Payload and Strapi Community are MIT. Ghost is MIT. Directus is source-available. You pay hosting. Template users never pay c17.
How do I deploy it?
Open /stacks/directus-cms. Persist Postgres and uploads. Rebuild the three types you query.

Stack of the Week

Get one stack a week that replaces a SaaS bill.

Sponsor this page