DrystoneCMS

Drystone CMS vs. Ghost
For more than articles alone.

Ghost is one of the few CMSes that is genuinely fast and genuinely pleasant to write in. It is also deliberately narrow: posts, pages, tags, authors. The moment your content stops looking like a blog, you meet that boundary.

Get started See the comparison

The short version

If you publish articles with a newsletter and paid members, Ghost does that better than Drystone — it is what it was built for and it is complete at it. If you are building a site with products, locations, vacancies or anything else alongside articles, you are not modelling that in Ghost, you are modelling around it. Drystone just lets you write the structure down.

Point by point

Drystone CMS next to Ghost.

CriterionDrystone CMSGhost
Content modelling Drystone CMSFree-form collections and singletons, every field type, relations 1-1, 1-n, n-n. GhostPosts, pages, tags and authors. Custom types do not exist.
Headless Drystone CMSHeadless from the start; a delivery API with an OpenAPI spec. GhostThere is a Content API, but the shape stays that of a blog.
Database Drystone CMSSQLite built in, in production too. GhostMySQL required for production installs.
Install Drystone CMSOne binary, no runtime around it. GhostNode plus MySQL, or their managed hosting.
Writing Drystone CMSBlock editor with autosave, drafts, scheduled publishing and preview. GhostAn excellent editor — this is what Ghost has been good at for years.
Newsletter & members Drystone CMSNot included; connect your own service through webhooks. GhostBuilt in, including paid subscriptions. A genuine strength.
Schema in git Drystone CMSYes, schema.yaml is the source of truth. GhostNot applicable: the model is fixed by the product.
Backup Drystone CMSCopy one file, plus the media folder. GhostA JSON export plus the content folder plus the database.

What Ghost does well

  • One of the best writing experiences available, and well configured out of the box.
  • Newsletters, members and paid subscriptions are fully part of the product.
  • Fast without tuning, with SEO basics that are simply correct.
  • A mature theme ecosystem if you do not want to build a separate front end.

Where it hurts in practice

  • No free-form content modelling: anything that is not a post or a page does not fit.
  • The Content API stays blog-shaped; headless is not the starting point.
  • MySQL required, with the maintenance that comes with it.
  • Extending happens outside the CMS, because the core is fixed.

Honest advice

When you are better off staying with Ghost.

Stay with Ghost if…

Choose Ghost if your publication is a blog or a newsletter: articles, authors, tags, subscribers and payment in one product. Rebuilding that with Drystone plus separate services leaves you with more moving parts than Ghost has by default.

Choose Drystone if…

Choose Drystone the moment something arrives alongside articles — products, projects, vacancies, locations — or the moment your front end takes on a life of its own and the CMS should purely be a data layer.

Switching

From Ghost to Drystone, in four steps.

  1. Export your Ghost site (Settings → Migration) — that gives you JSON with posts and metadata.
  2. Describe articles, authors and tags as collections in schema.yaml, with relations between them.
  3. Import the JSON and move the images from content/images into the media folder.
  4. Wire your newsletter service to a webhook on publish, if you used that feature.

Install it now

Frequently asked

What people ask before switching.

Does Drystone have newsletters and member management?

No. That is deliberately kept out of the core; you connect the service you already use through a webhook on publish. If the newsletter is your product, Ghost is the better choice.

Is the editor as good as Ghost's?

That level is the explicit goal: block-based, distraction-free, with autosave, drafts, scheduled publishing and version history with restore. Ghost has spent years polishing theirs and is still a reference for pure writing.

Can I reuse my Ghost theme?

No — Handlebars themes belong to Ghost. Drystone delivers data, not pages. Build your front end in Astro, Next or plain HTML; you fetch the same content from the delivery API.