Sveltia CMS vs Keystatic
Compare Sveltia CMS and Keystatic side-by-side. Explore setup, editing experience, non-technical usability, collaboration, Git workflow, and pricing.
Sveltia CMS
Git-Based CMSSveltia CMS is a free, open-source, Git-based CMS built as a complete modern rewrite and successor to Netlify/Decap CMS. It runs as a single-page app served from a CDN, stores content directly in your GitHub, GitLab, or Gitea/Forgejo repository, and focuses on editor UX, digital asset management, and first-class internationalization. It is currently in beta, with version 1.0 (GA) scheduled for late 2026.
Get Started with Sveltia CMSKeystatic
Git-Based CMSKeystatic is a free, open-source, Git-based CMS built by Thinkmill. It stores content as Markdown, Markdoc, MDX, JSON, or YAML files directly in your Git repository. The admin UI is bundled inside your application and reads from and writes to those files with no separate CMS server or database. Keystatic is code-first and TypeScript-native.
Visit KeystaticOverview
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| CMS type | Git-Based (open-source, MIT-licensed). Currently in beta; version 1.0 (GA) scheduled for late 2026. | Git-Based (open-source, MIT-licensed) |
| SSG support | Astro, Eleventy, Hugo, Jekyll, Next.js, Nuxt, SvelteKit, VitePress, Docusaurus, Middleman, Zola + framework-agnostic support for vanilla JavaScript sites | Astro, Next.js, Remix (first-party integrations). SvelteKit via community setup. Hugo, Jekyll, and 11ty not officially supported. |
| Pricing entry point | Free forever. MIT-licensed and free for personal and commercial use. No paid tier. | Free forever (core CMS). Keystatic Cloud Pro starts at $10/mo per team (3 users included, $5/mo per additional user). |
| Free plan | β Yes β The entire CMS is free and open source. No user, project, or feature limits. | β Yes β Core CMS is free forever with no cap. Keystatic Cloud Free allows up to 3 users per team. |
| Free trial (without credit card) | β Not needed β the CMS is permanently free. | β Not needed β the core CMS is permanently free. |
| Content security | β Yes β Highly secured. No database and no CMS server; the app runs client-side and content is stored as static files in your own Git repository. | β Yes β Highly secured. No database, no CMS server. Content stored as static files in your own Git repository. |
| Native language support | β Yes β The admin UI is localized in Bulgarian, Catalan, Croatian, English (US/UK/CA), Greek, Japanese, Portuguese (Brazil), Russian, and Ukrainian. It auto-detects the browser language and can be switched in settings. | β No β Admin UI is English only. No native language switcher, and i18n for content requires manual workarounds. |
| Mobile friendly | β Yes β Fully responsive with dedicated mobile and tablet support, QR code login, and installable as a progressive web app (PWA). | β οΈ Yes but β Mobile-first editing is listed as a feature, but multiple user reports note the interface isnβt fully optimized and can be complex on smaller screens. |
Setup & Configuration
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| Non-technical setup | β No β A developer must add two files to the project (admin/index.html and config.yml) and register an OAuth application with the Git provider before the CMS is usable. | β No β A developer must install the package, create a keystatic.config.ts file, and configure storage and authentication first. |
| Starter templates | β οΈ Yes but β The docs link to community templates for Astro, Eleventy, HonoX, Hugo, Jekyll, and Zola. These are third-party resources not reviewed by the Sveltia CMS team. | β οΈ Yes but β Official CLI starters exist for Astro and Next.js. A small number of community starters, no large library. |
| Edit schema modifier | β No β Collections and fields are defined in the config file (YAML, TOML, or JSON). No visual schema editor, though JSON Schema validation and IDE auto-completion are provided. | β No β Schema is defined entirely in code via keystatic.config.ts (TypeScript), edited outside the CMS. |
Editing Experience
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| Editor | Rich text (Lexical-based WYSIWYG) + Markdown + Code. Content is written out as Markdown, YAML, JSON, or TOML. | Rich text (WYSIWYG) + Markdoc + MDX + JSON/YAML. Auto-generated from your TypeScript schema. |
| Live preview system | β οΈ Yes but β A preview pane is included, and custom preview templates and styles can be registered through the JavaScript API. Matching the preview to your siteβs frontend requires developer setup. | β οΈ Yes but β Real-time previews via Next.js Draft Mode integration. Requires developer setup and is tied to that specific integration. |
| AI assistant integration | β οΈ Yes but β One-click AI translation via Anthropic, OpenAI, and Google Cloud Translation using your own API key. There is no general-purpose AI writing or rewriting assistant. | β No β No built-in AI assistant or content generation tool in the core CMS or Keystatic Cloud. |
| Collaborative editing | β No β No simultaneous multi-user editing. Collaboration happens through Git commits, and multi-user support with edge-function-based user management is planned for v2.0. | β οΈ Yes but β Multi-player editing is an experimental feature on Keystatic Cloud Pro. The core CMS has none, and simultaneous saves create unresolved Git merge conflicts. |
| iFrame embed preview | β No β Not documented or available out of the box. | β No β Not a built-in or documented feature. |
| Shortcode support | β Yes β Custom editor components can be registered through the JavaScript API to create reusable block-level components, alongside the built-in code-block and image components. | β Yes β Content components (custom blocks) are supported within Markdoc and MDX fields. |
| SEO tools | β No β No built-in SEO analysis, SERP preview, or content scoring. SEO fields must be modeled manually in the configuration. | β No β Only slug generation via the slug field type. No built-in SEO analysis, SERP preview, or scoring. |
| Dark mode | β Yes β Built-in light and dark themes. Follows the system preference by default and can be switched in app settings. | β No β No dark mode documented for the Keystatic admin UI. |
Non-Technical User Experience
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| Designed for non-technicals | β οΈ Yes but β The UI is modern, accessible, and editor-friendly once configured, but setup, schema changes, and authentication require a developer, and every editor needs a Git account. | β οΈ Yes but β Editors can use the visual admin UI once set up, but Keystatic is developer-first: all schema config and setup require a developer. |
| Version rollback | β οΈ Yes but β Entries are automatically backed up to browser storage while editing and can be restored as drafts. Full version history lives in Git, with no in-CMS Git rollback UI. | β οΈ Yes but β Every save is a Git commit, giving full history. No dedicated non-technical rollback UI. |
| Initial setup by non-dev | β No β A developer must create the admin files, write the config, and register an OAuth app first. | β No β A developer must install the package, define the TypeScript schema, and configure storage and authentication first. |
Media Management
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| Media management | β Yes β Built-in digital asset management with drag-and-drop uploads, folder structures, search and filtering, configurable file size limits, and automatic image optimization (WebP conversion, resizing, SVG minification). | β οΈ Yes but β Images upload and store in the Git repo via the image field. Keystatic Cloud Pro adds managed Cloud Images. No folder organization or renaming in the CMS UI. |
| External image URL support | β Yes β Multiple external storage providers can be used at the same time: Cloudinary, Uploadcare, Amazon S3 and S3-compatible services (Cloudflare R2, Backblaze B2, DigitalOcean Spaces, Scaleway, Supabase Storage), plus stock photos from Pexels, Pixabay, and Unsplash. | β οΈ Yes but β External URLs can be referenced in content fields. Keystatic Cloud Images serves via Cloudflare CDN with transform params; no native S3/Cloudinary plugin outside Cloud Images. |
Collaboration & Teams
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| User access | β No β Every editor needs their own Git account with write access to the repository, signing in via OAuth or a personal access token. Git Gateway and Netlify Identity are not supported. | β οΈ Yes but β Keystatic Cloud allows login without a GitHub account. Without Cloud, editors must authenticate directly via GitHub OAuth. |
| Custom roles | β No β No role management inside the CMS. Permissions are inherited from the Git providerβs repository access. Roles are planned for v2.0. | β No β No role-based access control at all, in the core CMS or Keystatic Cloud Free/Pro. All team members can access all projects in a team. |
| Organization management | β No β Each site gets its own admin instance. There is no centralized multi-project or multi-team dashboard. | β οΈ Yes but β Keystatic Cloud organizes projects into teams. Requires the paid Cloud tier for anything beyond a single project. |
| Branch workflows | β οΈ Yes but β A simple workflow (commit straight to a branch) and Open Authoring (external contributors submit pull requests) are supported. The Editorial Workflow is documented as βnot yet supported in Sveltia CMSβ and is planned before the 1.0 release. | β οΈ Yes but β Branch creation and switching happen inside the admin UI via GitHub mode. No built-in PR creation, review, or merge β thatβs done directly in GitHub. |
Git & Deployment
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| Git providers | GitHub, GitLab, and Gitea/Forgejo, plus a test backend and a local repository workflow. Bitbucket, Azure DevOps, and Git Gateway are explicitly not supported. | GitHub only via Keystatic Cloud. GitHub and local filesystem in self-hosted mode. No GitLab or Bitbucket. |
| Vendor lock-in | β No β No vendor lock-in. Content lives in your own Git repository. Self-hosted and fully open source under the MIT license. | β No β No vendor lock-in. Content is stored as static files (Markdown, YAML, JSON) in your own GitHub repository. Keystatic Cloud is optional. |
| Deployment | Content commits trigger builds on any connected CI/CD platform β Vercel, Netlify, Cloudflare Pages, GitHub Pages, and more. No built-in one-click deployment. | Works with any Git-connected CI/CD platform. No built-in one-click deployment. |
Accessibilities
| Feature | Sveltia CMS | Keystatic |
|---|---|---|
| Global search | β Yes β Instant full-text search across all collections, entries, and assets with Cmd/Ctrl+F, plus keyboard shortcuts for the content library (Alt+1), asset library (Alt+2), and new entries (Cmd/Ctrl+E). | β No β Only a per-collection filter by title or slug. No global cross-collection search. |
| Edit configs as code | β Yes β Configuration is written as code in YAML, TOML, or JSON, with JSON Schema validation, IDE auto-completion, TypeScript types, and a JavaScript API for customization. | β Yes β All configuration is done in code via keystatic.config.ts. |
| Mermaid diagram preview | β No β Not a built-in or documented feature in Sveltia CMS. | β No β Not a built-in or documented feature. |
There's a third option: Sitepins
Sveltia CMS and Keystatic are both free and open source, but both are developer-first: one needs a config file plus an OAuth app, the other a TypeScript schema, and neither gives you roles or a rollback UI. Sitepins is open source too (AGPL-3.0, on GitHub), and adds zero-config setup, a visual editor, an AI writing assistant, real-time collaboration, custom roles, and email invites for editors on a free forever plan.
Which one is right for you?
A quick summary to help you choose the right Git-based CMS.
Choose Sveltia CMS if:
- You want a config-file setup (YAML, TOML, or JSON) instead of writing TypeScript schemas
- You need GitLab or Gitea/Forgejo support, not GitHub only
- Your editors need dark mode, a localized admin UI, and real mobile support out of the box
- You publish multilingual content and want first-class i18n with one-click AI translation
- You want instant full-text search across every collection, entry, and asset
Choose Keystatic if:
- Your team is comfortable defining content schemas in TypeScript and wants type-safe content
- You're building with Astro, Next.js, or Remix and want first-party integration depth
- You want a stable, released CMS rather than one still in beta
- You want the admin UI bundled inside your own app rather than served as a separate SPA
- You want a cheap managed-cloud upgrade path ($10/mo for a 3-user team) with hosted images
Already using another CMS?
Whether you are coming from WordPress, Contentful, Sanity, or any other platform, our team is ready to help you migrate your content, structure, and workflows with zero downtime. Migration support is available for all users on the Team plan or the Lifetime deal. We handle the boring, tedious tasks so you can focus on launching as soon as possible.
Get Started with Sitepins
Get started for free today and discover easy, flexible, and full control over your content.