11 open source tools compared. Sorted by stars. Scroll down for our analysis.
By Erik Loyd, SaaS CEO and former COO/CFO of an AWS Premier Partner.
| Tool | Stars | Velocity | Score |
|---|---|---|---|
Strapi Leading open source headless CMS, fully JavaScript | 73.2k | +28/wk | 89 |
Ghost Independent publishing platform with memberships and newsletters | 55.4k | +76/wk | 91 |
Payload Open source fullstack Next.js framework with backend superpowers | 44.8k | +41/wk | 88 |
Directus Flexible backend: turn your DB into a headless CMS or admin panel | 37.9k | +21/wk | 76 |
emdash EmDash is a full-stack TypeScript CMS based on Astro; the spiritual successor to WordPress | 12.4k | +31/wk | 88 |
mediawiki 🌻 The collaborative editing software that runs Wikipedia. Mirror from https://gerrit.wikimedia.org/g/mediawiki/core. See https://mediawiki.org/wiki/Developer_access for contributing. | 5.2k | +4/wk | 79 |
microfeed a lightweight cms self-hosted on cloudflare, for podcasts, blogs, photos, videos, documents, and curated urls. | 4.1k | - | 68 |
jetpack Security, performance, marketing, and design tools. Jetpack is made by WordPress experts to make WP sites safer and faster, and help you grow your traffic. | 1.8k | +1/wk | 64 |
sulu Core framework that implements the functionality of the Sulu content management system | 1.4k | - | 56 |
| 899 | - | 51 | |
| 573 | - | 50 |
Stay ahead of the category
New tools and momentum shifts, every Wednesday.
Strapi gives you a customizable CMS admin panel and API out of the box, with full control over your content backend. Build your content types, define relationships, get a REST or GraphQL API automatically. No coding required for basic use.
The self-hosted Community edition is free and covers most needs: content types, API generation, media management, i18n, webhooks, and role-based access. Strapi Cloud starts at $29/mo for the Pro plan. Self-hosting runs on Node.js with SQLite, Postgres, MySQL, or MariaDB. Docker works but isn't the default: the standard setup is npx create-strapi-app. Moderate ops burden because you're running a Node.js app with a database and media storage.
Solo developers: self-host for free. It's the best free headless CMS for small projects. Small teams: self-host or consider Strapi Cloud at $29/mo if you don't want to manage infrastructure. Growing teams: the Enterprise tier ($499/mo) adds SSO, audit logs, and review workflows.
The catch: Strapi v5 was a significant rewrite and plugin compatibility took a hit. The plugin ecosystem is still catching up. Also, Strapi's customization model (controllers, services, policies) has a learning curve beyond the no-code admin panel.
Ghost is a publishing platform for serious writers and publishers who want more control than Substack gives them. Blogging, newsletters, paid memberships, and a full CMS in one self-hostable package. Node.js stack, MIT licensed, runs on a single server. Setup takes about 30 minutes on a clean Linux server. The official CLI handles installation, SSL, and configuration. You need 1GB or more of RAM and a database. Updates through Ghost-CLI are clean. Managed hosting through Ghost.org removes the ops overhead and starts at $15/mo billed yearly. Solo creators and small publications can run Ghost free indefinitely, and the self-hosted version has zero feature restrictions. Ghost Pro makes sense when you would rather not own a server and your audience justifies the cost. Watch the member caps: the two cheapest Pro tiers both stop at 1,000 members. The catch: the theme ecosystem is smaller than WordPress and the plugin architecture is deliberately limited. Deep integrations or niche customizations mean building them yourself.
Payload is a CMS that runs inside your Next.js app. Define collections in TypeScript and you get an admin panel, REST and GraphQL APIs, auth, access control, drafts and versions, localization, and file uploads. The core is MIT and free, and that survived Figma buying the company in June 2025. Self-hosting is now the only path for a new project. Payload Cloud stopped taking signups after the acquisition and existing customers are parked until Figma ships a replacement. In practice you deploy a Next.js app plus Postgres or MongoDB plus object storage: Vercel with a Neon database, Cloudflare Workers with D1 and R2, or Docker on a $5 to $20 per month VPS. Solo and small teams: this is still the strongest free CMS for Next.js work. Medium teams should get an Enterprise quote before committing, because SSO, audit logs, the visual editor, and multiplayer editing all sit behind it and Payload does not publish the price. Teams that want the CMS decoupled from the app should look at strapi/strapi or directus/directus. The catch: Payload belongs to Figma now, and Figma bought it to power Figma Sites. The MIT license protects the code shipped today. It says nothing about which half of the roadmap gets built for self-hosters and which half becomes the hosted product Figma is assembling.
Directus wraps any SQL database and turns it into a headless CMS with an admin panel, REST and GraphQL APIs, auth, roles, and webhooks. Point it at Postgres, MySQL, SQLite, or SQL Server and the schema becomes your content model. Nothing to migrate, nothing to rebuild. That part hasn't changed. The license did. Version 12 moved to a custom source-available license with enforcement built into the product. Self-hosted instances without a license key now run a hard-limited Core tier: 3 user seats, 25 collections, 5 flows, no SSO. Companies under $5M revenue and 50 employees can request a free Open Innovation Grant key that removes the caps; bigger shops pay, with Team at $499/mo billed annually. Upgraded instances get a 30-day grace period, then SSO stops working and custom permission rules are ignored. If you qualify for the grant, Directus is still one of the best data-first CMS options: Docker deployment, your database stays yours, and the admin panel is polished enough for non-technical editors. If you don't qualify, price it against Strapi, Payload, and PocketBase before committing. The catch: this is the second license tightening in the project's history, and this one reaches into running instances. A CMS that can disable your SSO on a timer is a different risk profile from open source you control. Read the license before you build on it.
EmDash is a TypeScript CMS built on Astro that runs on Cloudflare Workers or plain Node.js, pitched squarely as the modern WordPress replacement for developers. Content is stored as structured Portable Text instead of HTML soup, plugins run sandboxed in isolated Workers, and there is a visual schema builder in the admin panel. MIT licensed and fully free. The Cloudflare-native path uses D1 for the database and R2 for media, which means near-zero ops if you already live on Cloudflare's edge. Node.js deployment works with local SQLite. Since the last look it has grown up noticeably: a WordPress import wizard for actually migrating off WordPress, passkey-first (WebAuthn) auth, full-text search, scheduled publishing, and an MCP server so AI agents can manage content directly. Developer-first teams comfortable with beta software should experiment here. Ghost is still the better pick for straight publishing today, and Payload is the more production-hardened TypeScript option. EmDash's edge is the Astro plus Cloudflare deployment story and now a credible migration path off WordPress. Solo devs on the edge stack: worth a real trial. Larger teams: wait for the plugin ecosystem to fill in. The catch: it is still beta, and the sandboxed plugins that make it interesting need a paid Cloudflare Workers plan (about $5 a month) to run dynamically. The foundation is stronger than it was, but the third-party ecosystem is thin, so you are still building most of what you need yourself.
MediaWiki is the software that runs Wikipedia, and you can run it yourself. It is a mature, extensible wiki platform: collaborative editing with full page history, templates, over 350 languages, and a deep extension ecosystem. If you want a knowledge base or internal wiki that scales to hundreds of millions of readers and has two decades of hardening behind it, this is the proven answer. GPL licensed and free. Self-hosting is a classic LAMP-style setup: PHP, a database (MySQL or MariaDB), and a web server. Getting a basic wiki up is genuinely simple, and it runs on modest hardware. The work comes later, with extensions, spam control, upgrades, and scaling, which is real but well-trodden ground with enormous community documentation. For a team or community that needs a serious collaborative wiki, MediaWiki is free, battle-tested, and hard to outgrow. Solo users often find it heavier than a personal notes tool warrants; it shines with many editors, not one. Larger organizations get the most out of it, and there are hosted providers if you would rather not run PHP yourself. The catch is that MediaWiki feels like what it is: enterprise wiki software built for Wikipedia's needs, not a slick modern docs tool. The editing experience and default look are dated next to Notion or a static docs site, and making it pretty takes skinning and extension work. Choose it for durability, scale, and openness, not for out-of-the-box polish.
microfeed is a CMS with no server to babysit. It runs entirely on Cloudflare's free tier: Workers for the code, R2 for media, D1 for the database. You publish podcasts, blog posts, videos, photos, or curated links, and everything comes out as a website, an RSS feed, and a JSON API at the same time. Total cost is your domain name. Setup means cloning the repo and deploying to your own Cloudflare account, and the docs now assume an AI coding agent can do most of it for you. There's an admin dashboard for humans and an official CLI built for agents to create and update content. It comes from the Listen Notes team, and the podcast DNA shows: feeds are first-class, not an afterthought. Solo publishers and side projects are the sweet spot. Ghost (TryGhost/Ghost) fits better when you want memberships and email. Teams needing roles, editorial workflow, or approvals should look elsewhere. The catch: you're married to Cloudflare. Not the code, the architecture. There is no move-it-to-a-VPS story, because Workers, R2, and D1 are the product.
Jetpack bolts the things WordPress does not do onto WordPress: backups, malware scanning, spam filtering, a CDN, site stats, social auto-posting, and downtime monitoring. This repo is the monorepo the whole suite is built from, GPL v2 or later, containing every Jetpack plugin plus the shared PHP and JavaScript packages behind them. Worth being clear about what the repo is for. Automattic says outright that if you are not developing against it, install from the prebuilt distribution instead. You cannot clone this into wp-content/plugins and have it work; it needs a build step and a symlink, or their Docker environment. The monorepo is for contributors and for anyone auditing what actually runs on their site. The free plugin is real: stats, CDN image and static file hosting, social sharing, downtime monitoring, and basic protection cost nothing. Paid is where backups, real-time scanning, and Akismet's higher volumes live. The catch is that Jetpack is a funnel. It is open source, and it is also the front door to WordPress.com's paid products, with upsells surfaced inside your admin. That is fair, Automattic has to fund this, but the plugin is not a neutral utility and it phones home to their infrastructure by design.
Sulu is an enterprise content management system built on Symfony, shipping releases since 2014. The pitch is multi-language and multi-site: one installation running several portals in several languages, behind an admin interface content editors can actually use. MIT licensed, no paid edition, no gated features. This repository is the core framework; to start a site you use the sulu/skeleton template instead. This is a Symfony application, not a CMS you install by uploading files. You need PHP 8.2 or newer, Symfony 6.4, 7.1, or 8.0, Doctrine, and a database, and the core alone declares more than eighty direct Composer dependencies. Developers already working in Symfony will find the structure familiar. Everyone else is learning a framework before they reach the CMS. Agencies building multilingual corporate sites are the audience, and Sulu says so itself. Solo developers and small teams who want a blog or a content API will be happier with Ghost, Strapi, or Payload, all of which run in a fraction of the time. Sulu earns its setup cost once you have several sites, several languages, and editors who need a real workflow. The catch is everything around the license. Sulu GmbH sells hosting through Sulu.cloud plus support, consulting, and training, and none of it has a published price, so every commercial conversation starts with a sales contact. The community is far smaller than Symfony's, so when you hit something strange you are reading source instead of finding an answer online.
Nesta is a file-based CMS: no database, no admin panel. You write pages in Markdown or Textile, organize them in folders, and Nesta serves them. It's closer to a static site generator that runs as a Ruby app than a traditional CMS. MIT license, Ruby. The project peaked years ago and development has effectively stopped. Pages are files on disk, categories are folder structures, and the templating uses Haml or ERB. It supports Markdown with metadata headers for titles, descriptions, and categories. Fully free. No paid tier, no hosted version. It's a Ruby gem: gem install nesta. The catch: Nesta is a historical artifact. It was relevant when static site generation was less mature. In 2026, Hugo, Astro, Next.js, and dozens of other tools do everything Nesta does with better performance, larger communities, and active development. Unless you have an existing Nesta site to maintain, there's no reason to start a new project with it. If you need a Ruby-based CMS, look at Middleman or just use Jekyll.
A content management system built on Laravel (PHP) with a modular architecture. If you build Laravel apps and need a CMS foundation with user management, roles/permissions, and a module system already wired up, VaahCMS gives you that starting point. It's designed more as a rapid development platform than a traditional CMS. You build modules that plug into the framework. The admin panel includes user management, role-based access, media management, and a taxonomy system. Modules and themes are installable through a built-in marketplace. Completely free under MIT. No paid tier. For a Laravel-based CMS, Statamic is more polished (free for solo, $259/yr for pro). For a full headless CMS that works with any stack, Strapi, Directus, or Payload CMS are all established with large communities. If you specifically need PHP, WordPress still dominates for a reason: the ecosystem is unmatched. Ghost is the best option for content-focused publishing. The catch: this is a very small project with near-zero community activity. The documentation exists but is thin. If you hit a wall, you're reading Laravel source code and figuring it out yourself. The admin UI feels dated compared to modern CMS options. VaahCMS fills a niche (Laravel-native modular CMS) but the ecosystem risk is too high for anything you need to maintain long-term.