Craft CMS is a self-hosted content platform replacing WordPress and headless SaaS with clean relational modeling, native GraphQL, and Git project configs.
WordPress couples layouts to third-party plugins and stores configuration directly in runtime database tables. Craft CMS isolates content modeling into clean relational schemas and serializes architecture settings into version-controlled YAML files. For self-hosters and sysadmins, this turns site maintenance from firefighting database drift into a standard Git deployment pipeline.
WordPress manages content through generic post and postmeta database tables, relying on add-on plugins like Advanced Custom Fields for structured data and wp-cron triggered by web traffic for background jobs. Craft CMS models content as explicit database elements—entries, assets, and categories—with relational integrity in PostgreSQL or MySQL. Asynchronous workloads like image transforms, search indexing, and email delivery run in a dedicated CLI queue daemon (php craft queue/listen), preventing admin tasks from stalling page requests.
The operational difference is most visible during deployments. WordPress stores configuration in the database, forcing operators to run complex database syncs or risk overwriting production content. Craft CMS separates content from configuration through Project Config (config/project/), tracking schemas in Git. Running php craft up applies schema changes deterministically, while allowAdminChanges => false prevents configuration drift in production.
config/project/, applying schema updates via php craft up without database dumps.allowAdminChanges => false to enforce immutable infrastructure.queue/listen workers processing large batches of asset transforms can accumulate PHP memory, requiring supervisor restarts or Redis mutex locks to prevent hung jobs.Is Craft CMS free for personal self-hosting? Yes. Craft Solo is free for personal projects with a single administrator account, providing access to custom content modeling, Twig templates, and native GraphQL.
Craft CMS vs WordPress — which is more reliable to operate in production? Craft CMS is more reliable for DevOps pipelines because Project Config tracks schema changes in Git rather than mutable database records, enabling deterministic deployments.
Can Craft CMS run headlessly without rendering Twig templates? Yes. Craft CMS provides a native GraphQL API with token-scoped permissions to serve decoupled static site generators or mobile applications directly.
Craft CMS fits self-hosters and development teams that require Git-driven schema deployments and custom relational data modeling on private infrastructure, but it is the wrong choice for users seeking instant themes or no-code site creation. Active maintenance with updates pushed in late September 2026 and a commercial source-available model with a free perpetual Solo tier make it a dependable foundation for single-tenant homelab servers.
Lint, codegen, breaking-change checks and dependency management in one Git-native CLI. Open source, no registry lock-in.
Show that Craft CMS is listed as an open-source alternative. Paste into your README: