
Who Craft CMS is for#
Agencies building bespoke marketing sites
Use Craft CMS when clients need custom content types, editorial control, and designed templates rather than a generic builder.
Skip if:
The client wants a fully hosted no-code site with minimal development.
Teams needing headless content and templates
Use Craft when a project needs both Twig-rendered pages and GraphQL access for decoupled front ends.
Skip if:
Your team wants a pure hosted content API with no server maintenance.
Custom commerce publishers
Use Craft when editorial content and bespoke commerce need to live in one PHP CMS ecosystem.
Skip if:
A standard Shopify storefront covers the whole business.
The problem it solves#
Many CMS tools force teams into either rigid templates or hosted content APIs. Custom sites need content models that match the business, editorial controls that non-developers can use, and front-end flexibility for bespoke designs. Proprietary headless CMS products solve some of this, but they add vendor pricing and data dependency to a core publishing workflow.
How it solves it#
Custom content modeling
Craft uses a clean-slate content modeling approach that does not assume the content structure a project needs.
Twig templating and headless API
Twig templates support front-end development, while an auto-generated GraphQL API supports headless applications.
Self-hosted PHP application
Craft is a self-hosted PHP app that can connect to MySQL or PostgreSQL for content storage.
Plugin and commerce ecosystem
Craft includes a Plugin Store and a commerce platform for bespoke ecommerce experiences.
Strengths and trade-offs#
Strengths
- Developer-friendly content structuresCraft is strong when developers need content fields and templates to match a custom design rather than adapting to a generic page builder.
- Editorial UI with code controlEditors get a control panel while developers keep control over templates, GraphQL, plugins, and hosting.
- Flexible deployment modelSelf-hosting with PHP, MySQL, or PostgreSQL gives teams more infrastructure choice than fully hosted CMS products.
Trade-offs
- -Commercial license expectationsCraft CMS is source-available but not a generic permissive open source CMS. Teams should review Craft's project licensing and paid license requirements before choosing it for client work.
- -Requires PHP CMS ownershipCraft is not a no-code hosted site builder. Teams need developers who can manage templates, hosting, plugins, and upgrades.
What it's built on#
- Languages
- JavaScriptPHP
- Frameworks
- ReactVue
FAQ#
What is Craft CMS?
Craft CMS is a flexible self-hosted PHP content management system for custom digital experiences.
Does Craft CMS support headless development?
Yes. Craft CMS includes an auto-generated GraphQL API for building headless applications.
What database does Craft CMS use?
Craft CMS can connect to MySQL and PostgreSQL for content storage.
Similar open-source tools#
Payload CMS
Build code-first CMS backends with TypeScript schemas
TinaCMS
Open source headless CMS with inline editing and Git backend
Sulu
Enterprise-ready open source CMS built on Symfony
Grav
Flat-file CMS for fast, self-hosted websites.
Puck
Open source drag-and-drop page editor for any React app
Drupal
Open source CMS for enterprise and complex digital experiences

