Directus vs Keystone
Directus is a closed-source headless CMS that you can host yourself or run on the vendor's cloud. Keystone is an open-source headless CMS that you host yourself. The table below sets them side by side on 28 features. They get a different status on 19.
- Directus Headless · Closed source · 18 of 28 built in
- Keystone Headless · Open source · 6 of 28 built in
Sources checked: Directus on 29 Sept 2026, Keystone on 29 Sept 2026. Plans and releases can change after those dates.
WAYF is an official Payload partner and top contributor. Every platform in the table is classified by the same published definitions, and each answer lists the vendor page it came from.
Feature comparison
| Platform | | |
|---|---|---|
| Overview | ||
| What it is | Source-available data platform and headless CMS that puts a Studio admin app and REST and GraphQL APIs over your own SQL database. | Open-source Node.js headless CMS from Thinkmill that generates a GraphQL API and an admin UI from a TypeScript schema. |
| Edition compared The product and release each column describes. | Directus 12, self-hosted core tier or licensed plans, with optional Directus Cloud Version 12.4.1, released 23 Sept 2026 | Keystone 6, open source, from the @keystone-6/core package Version 8.1.0, released 31 Aug 2026 |
| Vendor | Monospace Inc. directus.com | Thinkmill keystonejs.com |
| Licence | Closed source MSCL-1.0-GPL, source-available, GPL-3.0 after four years. Free under $5M revenue and 50 staff via the Open Innovation Grant | Open source MIT |
| Hosting | Self-hosting Vendor cloud Directus Cloud is a $99 per month add-on for Core and Team. Enterprise cloud on request. | Self-hosting No vendor cloud No managed hosting. Thinkmill offers enterprise support. |
| Built with | TypeScript, Node.js, Vue | TypeScript, Node.js, GraphQL, Prisma, Next.js for the admin UI |
| Database | PostgreSQL, MySQL, MariaDB, SQLite, MS SQL Server, Oracle, CockroachDB | PostgreSQL, MySQL, SQLite |
| Pricing Public list prices only. Hosting and implementation are extra everywhere. | Free to start Core free for 3 seats and 25 collections. Team $499 per month billed yearly or $599 monthly. Enterprise on request. | Free to start Free and open source. Enterprise support from Thinkmill on request. |
| Content modelling | ||
| Content model in code You define content types in files in your repository, review them like any other code and apply them from there. Imperative migration scripts alone count as limited. | Built in Schema snapshots are files in the repo, applied to an instance with the CLI. 16 | Built in Lists and fields are TypeScript config. 4 |
| Content model in the UI Admins can create and change content types and fields in the admin interface without writing code. | Built in | Not available |
| Reusable blocks Editors compose pages from reusable, typed components or blocks, and can reorder them. | Built in Page builders use many-to-any relations. 17 | Built in Component blocks inside the document field. 8 |
| Localization Editors translate content per locale inside the CMS, by field or by entry, without a separate site for each language. | Built in Translations field with related translation records. | Not available No locale support documented. Model translations yourself. 12 |
| Image transformations The CMS resizes, crops or converts images on request, through URL parameters or generated sizes, with no external service. | Built in URL parameters and saved presets. 13 | Not available Image field stores originals. The Cloudinary field hands resizing to Cloudinary. 711 |
| APIs and delivery | ||
| REST API A documented REST or JSON HTTP API returns content. | Built in | Not available GraphQL only. Custom REST routes through extendExpressApp. 4 |
| GraphQL API The vendor or an official module provides a GraphQL API for content. | Built in | Built in |
| Webhooks The CMS can call an external URL when content is created, changed or published. | Built in Through Flows. Core allows 5 Flows. 219 | Not available No webhook settings. Call URLs from hooks in code. 10 |
| Renders the website The CMS itself renders and serves the public pages through themes or templates. Headless-only products answer no. | Not available | Not available |
| Editorial workflow | ||
| Drafts Editors save changes as a draft and publish them later. The live version stays untouched until then. | Built in Content versioning with a draft per item. 6 | Not available |
| Scheduled publishing An editor can set a future date and time for content to publish or unpublish. | Limited No schedule field. An official guide publishes future items with a scheduled Flow. 14 | Not available |
| Version history The CMS keeps earlier versions of an entry, and editors can compare or restore them. | Limited Revisions kept 30 days on Core, 90 on Team, configurable on Enterprise. 2 | Not available |
| Preview Editors can see unpublished content rendered as it will appear on the site before publishing. | Built in | Not available |
| Visual editing Editors can click on the rendered page and edit content in place or in a side panel next to it. | Built in Visual Editor module. The site adds the Directus frontend library. 7 | Not available |
| Approval workflows Content moves through review stages you configure, such as draft, review and approved, with permissions per stage. | Limited Built from a status field and custom permissions, which need Team, Enterprise or the grant. 152 | Not available |
| Content releases Editors group changes across several entries and publish them together as one release. | Not available | Not available |
| Real-time co-editing Two or more editors can work on the same entry at once and see each other's changes live. | Built in Collaborative Editing with field locking. 8 | Not available |
| Access and governance | ||
| Custom roles Admins define their own roles with granular permissions instead of picking from a fixed set. | Built in Unlimited roles on Core. Custom access policies need Team, Enterprise or the grant. 220 | Limited Roles are access-control functions written in code. No role editor in the admin. 5 |
| Field-level permissions Admins can restrict access to single fields, on top of content types and entries. | Paid tier Custom permissions for fields and item rules need Team, Enterprise or the grant. 25 | Built in Field-level access control. 5 |
| Single sign-on Editors can sign in through SAML or OpenID Connect against a company identity provider. | Paid tier Team plan and up, or the grant. SAML, OpenID, OAuth 2.0 and LDAP. 211 | Not available The auth package covers password login. SSO means custom session code. 6 |
| Audit log The CMS logs who changed what and when across the whole installation, and admins can review the log. | Limited Activity log kept 30 days on Core, 90 on Team, configurable on Enterprise. 212 | Not available |
| Platform and extensibility | ||
| Multiple sites One installation or account can manage several separate websites or brands with shared users. | Not available | Not available |
| Extensible admin UI Developers can add their own components, views or fields to the editing interface. | Built in Extensions add interfaces, layouts, panels and modules. | Built in Custom admin pages, navigation and field views. 9 |
| Plugin marketplace The vendor runs an official directory or marketplace of installable extensions. | Built in Marketplace inside the Studio. 18 | Not available |
| Form builder Editors can build and publish forms and collect submissions without code. | Not available | Not available |
| Site member accounts The platform handles sign-up and login for public site users or members, separate from editors. | Built in API-only application users do not use Studio seats. 3 | Built in createAuth works on any list, including site users. 6 |
| AI writing assistant A first-party AI feature in the editing interface generates, rewrites or translates content. | Built in AI Assistant on every plan with your own OpenAI, Anthropic or Gemini key. 29 | Not available |
| Official MCP server The vendor publishes a Model Context Protocol server so AI agents can read or write content. | Built in Built in since 11.12. 10 | Not available |
Directus sources
Checked 29 Sept 2026. Directus 12, self-hosted core tier or licensed plans, with optional Directus Cloud.
- directus on the npm registry
- Directus pricing
- Directus docs: Licensing overview
- Monospace Sustainable Core License
- Directus docs: Access control
- Directus docs: Content versioning
- Directus docs: Visual Editor
- Directus docs: Collaborative Editing
- Directus docs: AI Assistant
- Directus docs: Directus MCP
- Directus docs: Single Sign-On
- Directus docs: Accountability
- Directus docs: Transform files
- Directus tutorial: Schedule future content with Flows
- Directus tutorial: Content approval workflows with custom permissions
- Directus tutorial: Promoting changes between environments
- Directus tutorial: Reusable blocks with many-to-any relationships
- Directus docs: Marketplace
- Directus docs: Send Directus webhooks to Clay with Flows
- Directus license, MSCL and v12 questions (Contensu)
Keystone sources
Checked 29 Sept 2026. Keystone 6, open source, from the @keystone-6/core package.
- @keystone-6/core on the npm registry
- Keystone releases on GitHub
- Keystone homepage
- Keystone docs: System configuration
- Keystone docs: Access control
- Keystone docs: Authentication
- Keystone docs: Image field
- Keystone docs: Document field demo
- Keystone docs: Custom admin UI pages
- Keystone docs: Hooks guide
- Keystone docs: Cloudinary image field
- Keystone documentation index (llms.txt)
Considering more platforms? Compare Directus and Keystone with the rest of your shortlist in the CMS comparison tool.
Where they differ
Directus and Keystone get a different status on 19 of the 28 features and the same status on 9. Directus has 18 built in on its baseline edition, Keystone has 6. Two matching statuses can still name different paid tiers or limits, so read the notes in the table before treating a row as equal.
- Licence
- Directus is closed source (MSCL-1.0-GPL, source-available, GPL-3.0 after four years. Free under $5M revenue and 50 staff via the Open Innovation Grant). Keystone is open source (MIT).
- Vendor cloud
- Directus has a vendor-run cloud. Keystone has no vendor-run cloud.
Built in on Directus, a different answer on Keystone 13
- Content model in the UI Directus: Built in. Keystone: Not available.
- Localization Directus: Built in. Keystone: Not available.
- Image transformations Directus: Built in. Keystone: Not available.
- REST API Directus: Built in. Keystone: Not available.
- Webhooks Directus: Built in. Keystone: Not available.
- Drafts Directus: Built in. Keystone: Not available.
- Preview Directus: Built in. Keystone: Not available.
- Visual editing Directus: Built in. Keystone: Not available.
- Real-time co-editing Directus: Built in. Keystone: Not available.
- Custom roles Directus: Built in. Keystone: Limited.
- Plugin marketplace Directus: Built in. Keystone: Not available.
- AI writing assistant Directus: Built in. Keystone: Not available.
- Official MCP server Directus: Built in. Keystone: Not available.
Built in on Keystone, a different answer on Directus 1
- Field-level permissions Directus: Paid tier. Keystone: Built in.
Built in on neither, with different answers 5
- Scheduled publishing Directus: Limited. Keystone: Not available.
- Version history Directus: Limited. Keystone: Not available.
- Approval workflows Directus: Limited. Keystone: Not available.
- Single sign-on Directus: Paid tier. Keystone: Not available.
- Audit log Directus: Limited. Keystone: Not available.
More comparisons
Full write-ups with worked examples and costs: Directus vs Payload.
Directus against other platforms
- Adobe Experience Manager vs Directus
- Contentful vs Directus
- Contentstack vs Directus
- CoreMedia Content Cloud vs Directus
- Craft CMS vs Directus
- DatoCMS vs Directus
- Decap CMS vs Directus
- Directus vs Drupal
- Directus vs EmDash
- Directus vs FirstSpirit
- Directus vs Framer
- Directus vs Ghost
- Directus vs HubSpot CMS
- Directus vs Hygraph
- Directus vs Instatic
- Directus vs Joomla
- Directus vs Kirby
- Directus vs Liferay DXP
- Directus vs Optimizely CMS
- Directus vs Payload
- Directus vs Prismic
- Directus vs Progress Sitefinity
- Directus vs Sanity
- Directus vs Sitecore
- Directus vs Squarespace
- Directus vs Statamic
- Directus vs Storyblok
- Directus vs Strapi
- Directus vs TYPO3
- Directus vs Umbraco
- Directus vs Wagtail
- Directus vs Webflow
- Directus vs Wix
- Directus vs WordPress
- Directus vs Xperience by Kentico
Keystone against other platforms
- Adobe Experience Manager vs Keystone
- Contentful vs Keystone
- Contentstack vs Keystone
- CoreMedia Content Cloud vs Keystone
- Craft CMS vs Keystone
- DatoCMS vs Keystone
- Decap CMS vs Keystone
- Drupal vs Keystone
- EmDash vs Keystone
- FirstSpirit vs Keystone
- Framer vs Keystone
- Ghost vs Keystone
- HubSpot CMS vs Keystone
- Hygraph vs Keystone
- Instatic vs Keystone
- Joomla vs Keystone
- Keystone vs Kirby
- Keystone vs Liferay DXP
- Keystone vs Optimizely CMS
- Keystone vs Payload
- Keystone vs Prismic
- Keystone vs Progress Sitefinity
- Keystone vs Sanity
- Keystone vs Sitecore
- Keystone vs Squarespace
- Keystone vs Statamic
- Keystone vs Storyblok
- Keystone vs Strapi
- Keystone vs TYPO3
- Keystone vs Umbraco
- Keystone vs Wagtail
- Keystone vs Webflow
- Keystone vs Wix
- Keystone vs WordPress
- Xperience by Kentico vs Keystone
Open the CMS comparison tool to put up to six platforms in one table.
We're booking content platform
engagements for 2026.
Twenty-five minutes to walk through the work and decide if we're the right team for it. Scoping and a fixed price come after.