This chapter maps the nine platforms that define the modern headless and composable CMS market in 2026: Contentful, Sanity, Strapi, Storyblok, Hygraph, Payload, Directus, Prismic, and Contentstack. It compares them across architecture (SaaS vs. self-hosted, database model), content modeling philosophy (UI-driven vs. code-as-schema), API surface (REST, GraphQL, GROQ, and the new MCP layer), ecosystem maturity, and — critically — pricing posture, which is where these platforms differ most sharply. A large comparison matrix anchors the chapter, followed by a deeper read of each cluster and the strategic trade-offs an architect actually faces.
The headless CMS field looks crowded until you sort it on two axes that explain almost every other difference:
Mapping the nine platforms onto these axes:
| Schema in UI (editor-friendly) | Schema as code (Git-versioned) | |
|---|---|---|
| Pure SaaS | Contentful, Storyblok, Hygraph, Contentstack | Prismic (Slice Machine), partially Sanity |
| Self-hostable OSS | Strapi (UI), Directus (UI over SQL) | Payload (TS config), Strapi (also code) |
Sanity sits awkwardly across the grid: its Content Lake is a hosted SaaS datastore you cannot self-host, but the Studio and the schema are open-source code in your repo — a deliberate "managed backend, owned frontend" split.
| Platform | License / model | Datastore |
|---|
| Self-host? |
|---|
| Primary API |
|---|
| Schema definition |
|---|
| Visual editing |
|---|
| Native MCP / AI |
|---|
| 2026 entry pricing |
|---|
| Contentful | Proprietary SaaS | Proprietary (managed) | No | REST + GraphQL (CDA/CMA) | Hosted UI | Yes (Live Preview, Studio Experiences) | Open-sourced MCP server | Free tier; Team ~$300/mo; Premium/Enterprise custom |
| Sanity | Studio MIT; backend SaaS | Content Lake (proprietary) | No (backend) | GROQ + GraphQL | Code (JS/TS) in repo | Yes (Visual Editing, Presentation) | Hosted remote MCP (mcp.sanity.io) | Free; Growth $15/seat/mo; Enterprise custom |
| Strapi | OSS (community) + EE | Bring-your-own SQL (Postgres/MySQL/SQLite) | Yes | REST + GraphQL | UI or code | Plugin / preview | Native MCP route in development | Self-host free; Cloud from ~$29/mo; EE custom |
| Storyblok | Proprietary SaaS | Proprietary (managed) | No | REST + GraphQL (Premium) | Hosted UI (blocks) | Best-in-class real-time visual editor | AI features; MCP roadmap | Free Starter; Growth €99/mo; Growth Plus €349/mo |
| Hygraph | Proprietary SaaS | Proprietary graph | No | GraphQL-native (+ REST) | Hosted UI | Yes | Content federation feeds RAG | Free Hobby; Growth $199/mo; Enterprise custom |
| Payload | MIT open source | Bring-your-own (Postgres/MongoDB) | Yes | REST + GraphQL + Local API | Code (TypeScript config) | Yes (Live Preview, Vercel Content Link) | MCP-friendly; code-native | Self-host free (all features); Cloud add-on |
| Directus | BSL/OSS (free under grant) | Bring-your-own SQL (any) | Yes | REST + GraphQL | UI over existing SQL | Yes (Live Preview) | AI extensions | Self-host free (≤ $5M rev grant); Cloud from ~$15–25/mo |
| Prismic | Proprietary SaaS | Proprietary (managed) | No | REST + GraphQL | Code via Slice Machine | Yes (Page Builder, slices) | Slice-based; AI assist | Free; Starter $10/mo; Medium $150/mo; Platinum $675/mo |
| Contentstack | Proprietary SaaS (DXP) | Proprietary (managed) | No | REST + GraphQL | Hosted UI | Yes (Live Preview) | Automate + agentic ops | Custom only; annual contracts ~$30k–$200k+ |
Sources: vendor pricing pages and 2026 reviews from Hygraph, Storyblok, Sanity, Directus, Prismic, Contentful, plus comparative reviews (Lucky Media, G2, ElmapiCMS, Pooya Golchian).
Contentful remains the reference enterprise headless CMS. It is fully proprietary SaaS with no self-host option — your content lives in Contentful "spaces," each of which auto-generates a GraphQL schema from its content model. It exposes two main REST surfaces plus GraphQL: the Content Delivery API (CDA) for reads, the Content Management API (CMA) for writes, plus a Preview API and Images API. The GraphQL Content API is available on all current plans (legacy plans must upgrade). Pricing is the classic enterprise posture: a free tier for evaluation, a Team plan around $300/month, then Premium and Enterprise that are custom-negotiated and scale on API calls, content records, users, and locales. The footgun is the same one that has driven Contentful migrations for years — usage-based overages on records and API calls make costs unpredictable at scale. In 2026 Contentful has leaned into the agentic story by open-sourcing its MCP server so agents can perform content operations, and shipping Studio Experiences for visual composition.
Contentstack is positioned one tier up — as a full composable digital experience platform (DXP), not just a CMS. Its headless content core sits inside a broader suite (Automate for workflow, Launch for hosting, Lytics-derived personalization, and agentic operations). It is cloud-native, modular, and explicitly designed to be a replaceable piece inside a MACH (Microservices, API-first, Cloud-native, Headless) stack. Pricing is custom-only, with annual contracts commonly reported in the $30,000–$200,000+ range. It is the choice when the buyer is a large enterprise that wants personalization, multi-brand governance, and an SLA, and is the least relevant option for a startup or a single product team.
Sanity is the most distinctive architecture in the set. Its backend, the Content Lake, is a proprietary hosted document store you cannot self-host; it provides real-time sync, full revision history, and is queried with GROQ (Graph-Relational Object Queries) — a JSON-shaped query language that joins across documents and projects exactly the response shape your frontend needs — plus a GraphQL API. The other half, Sanity Studio, is open-source React (MIT) that lives in your repository, where you define your content model in JavaScript/TypeScript. This "managed data, owned editor" split is its signature trade-off: you get a polished real-time collaborative editor and zero database operations, but you are locked to Sanity's hosted Content Lake. Pricing starts free, with a Growth plan around $15/seat/month and custom Enterprise. In 2026 Sanity is arguably the AI-native leader: it ships a hosted remote MCP server at mcp.sanity.io (generally available) that lets agents in Cursor, Claude Code, and v0 run GROQ queries, patch documents, manage content releases, and deploy schemas with full schema awareness. It markets this as an "AI Content Operating System."
Payload is the code-first counterpoint and the fastest-rising open-source option. Payload 3.0 is a ground-up rewrite that installs directly into a Next.js app — the admin panel, API routes, and frontend can all live in one Next.js project. The schema is TypeScript config in your repo: collections, fields, access control, and hooks are code, version-controlled with your app. Its killer feature is the Local API — inside a React Server Component you query the database directly with zero HTTP overhead, which neither SaaS platforms nor most OSS competitors can match for the Next.js stack. It uses the Lexical rich-text editor (now stable, with inline references and block-level components) and supports Postgres or MongoDB. It is MIT-licensed and genuinely free when self-hosted — access control, localization, versions, live preview, and the admin panel are all included with no paid tier gating them. Strategic note: Payload was acquired by Figma in June 2025 to power the CMS layer of Figma Sites; the open-source MIT license and repo remain unchanged, but it is worth tracking the stewardship. Deployment is typically Vercel + Neon Postgres, or Docker/Railway/Render, or Cloudflare Workers.
The Payload-vs-Strapi decision is the central open-source question of 2026:
| Payload 3 | Strapi 5 | |
|---|---|---|
| Schema | TypeScript config (code) | Admin UI or code |
| Best fit stack | Next.js (installs into it) | Framework-agnostic |
| Local/no-HTTP access | Yes (Local API) | No |
| Non-technical model edits | No | Yes (UI) |
| GitHub stars | ~30k+ (faster-growing) | ~65k+ (larger) |
| Advanced access control | Free, function-based | Often Enterprise tier |
| License | MIT | OSS + Enterprise Edition |
The rule of thumb: Payload if your team is Next.js-native and wants schema-as-code; Strapi if non-developers must change the content model and you want framework independence.
Strapi 5 is the established open-source leader — battle-tested, with the largest community (~65k+ GitHub stars) and the richest plugin marketplace. It runs on a database you bring (PostgreSQL, MySQL, SQLite) and exposes both REST and GraphQL. Its defining advantage is that the content model can be edited from the admin UI, so non-engineers can add content types without touching code — though the same schema is also expressible in code. Strapi is free when self-hosted (you pay only for your server), with Strapi Cloud starting around $29/month and an Enterprise Edition that gates SSO, advanced RBAC, and audit logs behind custom pricing. On the AI front, Strapi is building a native MCP server directly into core — exposed as a route on the existing HTTP server, so the MCP endpoint is live whenever Strapi runs — but as of mid-2026 this is still in development.
Directus takes a fundamentally different premise: it is a real-time API and admin app that layers onto any existing SQL database, rather than owning the schema. Point it at a Postgres/MySQL/SQLite/others database and it instantly generates REST and GraphQL APIs plus an admin UI over your existing tables — making it as much a "data platform" / internal-tooling backend as a CMS. Licensing in 2026 is the Business Source License with a generous free posture: free to self-host forever for organizations under $5M revenue and 50 employees (the Open Innovation Grant), with a free Core tier and commercial licensing above that. Directus Cloud starts around $15–25/month. The economics are compelling — self-hosting Directus reportedly runs roughly €36/month all-in versus $300–500/month for Contentful/Sanity at comparable scale — at the cost of you owning the ops, backups, and scaling.
Storyblok wins the visual-editing category outright. It is proprietary SaaS, but its real-time visual editor is widely considered the best in the market — marketers see the rendered page and edit in place while developers retain full API-first control via REST (GraphQL is gated to Premium). Content is modeled as blocks (nestable components) configured in the hosted UI. The 2026 pricing ladder: a forever-free Starter (2 seats, visual editor, core API), Growth at €99/month (5 users, 4 locales, 400GB traffic), Growth Plus at €349/month (15 users, scheduling, 10 locales, SEO meta), and a custom Premium that unlocks the GraphQL API, AI SEO, SSO, and custom roles. Storyblok is the pick when marketing autonomy and WYSIWYG composition are the top requirement.
Prismic is the slice-based composable model. Its developer tool, Slice Machine, is a local tool where developers define reusable page sections ("Slices") as code — each Slice has a schema plus a corresponding frontend component — and push those definitions to the Prismic repository. Editors then assemble pages from those Slices in the Page Builder. This is a clean separation of concerns: developers own the building blocks (in code), editors own page composition (in UI). It is proprietary SaaS with REST and GraphQL APIs. Pricing in 2026: Free (1 user), Starter $10/month, Small $25/month, Medium $150/month, and Platinum at $675/month — notably affordable at the low end and priced per-feature/seat as you climb.
Hygraph is GraphQL-native from the ground up (it was formerly GraphCMS) and its differentiator is Content Federation: it can enrich CMS content with data pulled live from other services — PIM, DAM, commerce, or anything exposing REST/GraphQL — and serve it through a single unified GraphQL endpoint. Federation and custom workflows are baked into the core rather than bolted on as plugins, which makes Hygraph the natural choice for organizations stitching together legacy systems and multiple content sources behind one graph. Pricing: a free Hobby plan (3 seats, 2 locales, 500K API calls, 1,000 entries), Growth at $199/month (10 seats, 1M API calls, 10,000 entries, 1 remote source — federation unlocks here), and custom Enterprise for multiple federated sources, multitenancy, dedicated infra, and SLAs. The unified graph is also a strong substrate for RAG and agent retrieval, since federation gives a single queryable surface across heterogeneous backends.
Strip away marketing and three pricing philosophies emerge:
The market is bifurcating on how agent-ready each platform is — the central theme of this report:
mcp.sanity.io) that gives agents schema-aware read/write over the Content Lake.This MCP-and-RAG readiness layer is explored in depth in later chapters; for platform selection in 2026 it has become a first-class criterion alongside API shape and pricing.