CriterionDrystone CMSSanity
Where content lives
Drystone CMSYour SQLite file, on your disk.
SanityTheir Content Lake. The data layer cannot be self-hosted.
Schema
Drystone CMSschema.yaml in git, plus a visual builder that edits the same file.
SanitySchemas in JavaScript, in git — Sanity does this very well.
Querying
Drystone CMSREST with filtering, sorting, field selection and ?populate=, plus an OpenAPI spec.
SanityGROQ: powerful, and a language your team has to learn separately.
Editor
Drystone CMSBlock editor with autosave, drafts, scheduled publishing and split-screen preview.
SanitySanity Studio, customisable in React, with strong real-time collaboration.
Price
Drystone CMSFree; you pay for your own server.
SanityA free tier, then per user, API request and bandwidth.
Lock-in
Drystone CMSNone. Export to JSON or Markdown with one command.
SanityDataset export exists, but GROQ, portable text and Studio do not move with you.
Real-time
Drystone CMSNot in v1: autosave and token-based preview, no live collaboration.
SanityReal-time multiplayer editing, and it is good at it.
Install
Drystone CMSOne binary, under a minute.
SanitySet up and deploy Studio; the back end is their service.