Git-based CMS: the questions people ask
Short answers, checked on . Each links to the profile that has the detail.
Is Netlify CMS the same as Decap CMS?
Yes. Netlify CMS was renamed Decap CMS in early 2023 when Netlify handed the project to new maintainers. The config.yml format, the collections and the admin UI carried over, so an existing Netlify CMS site keeps working after the package rename. What changed since: the Git Gateway login path is deprecated, sign-in is an OAuth app you run, and the 3.x line ships regular releases again. Decap Turbo, a hosted layer, is in closed beta.
Is Static CMS still maintained?
No. Static CMS was a community fork of Netlify CMS. Its repository is archived and the maintainer pointed users to Sveltia CMS or Decap CMS. That is why it is not on the ranking. If you run it, Sveltia ships a migration guide from Static CMS, and Decap accepts the same config.yml with small changes.
Which Git-based CMS work with GitLab, Bitbucket or Gitea?
Fewer than you would hope. GitHub is the default everywhere, and several tools stop there: Pages CMS, GitCMS, Outstatic, Spinal, Unfreez and Siteleaf are GitHub only. GitLab is supported by CMS Brew, Sveltia CMS, Decap CMS, CloudCannon, Nuxt Studio and, on paid tiers, Sitepins. Bitbucket is rarer: Decap CMS, CloudCannon and Netlify Visual Editor. Gitea and Forgejo: Decap CMS and Sveltia CMS. Front Matter CMS works on a local clone, so any host works. The table under this answer lists every tool.
| Tool | Git hosts |
|---|---|
| CMS Brew | GitHub, GitLab |
| Decap CMS | GitHub, GitLab, Bitbucket, Gitea, Azure DevOps |
| TinaCMS | GitHub with TinaCloud; other hosts with a self-hosted backend |
| Keystatic | GitHub, or local mode on the developer's machine |
| Sveltia CMS | GitHub, GitLab, Gitea and Forgejo |
| Pages CMS | GitHub only |
| CloudCannon | GitHub, GitLab, Bitbucket |
| Sitepins | GitHub; GitLab on paid tiers |
| Front Matter CMS | Any host. It works on a local clone |
| Outstatic | GitHub only |
| Nuxt Studio | GitHub, GitLab |
| GitCMS | GitHub only |
| Unfreez | GitHub only |
| Spinal | GitHub only |
| Netlify Visual Editor | GitHub, Bitbucket |
| Siteleaf | GitHub sync |
Do I need a build hook?
Usually not. A Git-based CMS writes a commit to your repository. If your host watches the repository, which Netlify, Vercel, Cloudflare Pages, GitHub Pages and most others do once the site is connected, every commit triggers a build and the change goes live when the build finishes. You need a build hook only when the host is not connected to the repository, when you publish on a schedule, or when the CMS commits to a branch the host does not watch.
Is a Git-based CMS a headless CMS?
In the strict sense, yes: the CMS has no front end of its own and your site renders the content. The difference is where the content lives. An API-first headless CMS keeps content in its own database and your site fetches it over an API at build or request time. A Git-based CMS keeps content as files in your repository and your site reads the files at build time. No API, no database, no content outside the repo. When people search for a Git-based headless CMS they mean this second kind.
Can a non-technical client use a Git-based CMS?
It depends on the tool. The free panels expect the editor to sign in with a GitHub or GitLab account and to work in a form that mirrors the config file. That is fine for a developer, and hard for a client who edits twice a year. Hosted tools remove the Git account: Pages CMS and Sitepins invite editors by email, CloudCannon adds visual editing, and CMS Brew is built for the client case with chat editing, per-field guards and one commit per publish. Pick by who edits, not by what you would enjoy.
What happens when two people edit at the same time?
Each save is a commit. Two people editing different files never collide. Two people editing the same file produce two commits; the second one lands on top of the first unless the tool detects the conflict. Tools with a draft flow avoid the problem: Decap CMS and Sveltia CMS open a branch and a pull request per draft, and CMS Brew and CloudCannon keep a review step on their paid tiers. For a two-person team this is rarely a problem in practice.
Where do images go?
Into the repository, next to the content, by default. That is simple and it is versioned, and it is also the limit: a repository full of large images gets slow to clone and build. Most tools let you point uploads at a media folder the site serves as static assets. Some connect an external media library instead. If your site is image heavy, check the media setup on the profile before you choose.
Can I roll back a change?
Always, because every change is a commit. A git revert restores the previous version and the host rebuilds. Some tools expose that as a button: CMS Brew has one-click revert per publish, Unfreez has undo per publish, and the draft-based tools let you close the pull request before it merges. Version history is the git log, which is longer and more exact than most content databases keep.
How much does a Git-based CMS cost?
From nothing to a few hundred dollars a year. Decap CMS, Sveltia CMS, Pages CMS, Keystatic, Front Matter CMS and Nuxt Studio are free and open source. GitCMS is a one-time $49 per site. Unfreez is €90 per site per year. CMS Brew and Spinal are $39 a month. CloudCannon starts at $55 a month with per-user pricing on top. The ranking table lists every price as the vendor printed it on the check date.
Not answered here? The guide explains how the commit flow works, and the methodology explains how the ranking is made.
