CMS Workflows Editors Actually Use
How to design Sanity (and similar) studios so editors publish confidently — field structure, previews, validation, and the habits that prevent abandoned CMSs.
- cms
- sanity
- ux
- astro
- web development
A CMS fails quietly. The site launches looking sharp; six months later content is stuck in Google Docs because the studio feels hostile. Most of that isn’t the editor’s fault — it’s a workflow problem you can design for.
Optimize for the publish path
Editors care about one loop: find the thing → change it → see it → publish. Everything else is secondary.
Make that loop short:
- Documents named the way the client talks (“Exhibition”, not
showEntryV2) - Fields ordered by how they write (title → summary → body → media → SEO)
- Required fields only where empty content would break the page
- A preview that opens the real frontend URL for that document
If preview is “build locally and ask the developer,” you’ve already lost.
Structure beats freeform
Portable text / rich text is powerful. Unstructured dumping grounds are not. Prefer:
- Discrete fields for dates, venues, authors, tags
- References between artists, works, and events
- Image fields with alt text and hotspots where cropping matters
You’re not restricting creativity — you’re protecting consistency so listings, filters, and SEO don’t fall apart.
Validation is kindness
Soft warnings for missing SEO descriptions. Hard blocks for missing titles or hero images on pages that assume them. Explain why in the validation message, in the client’s language when you can.
Empty alt text on decorative images can be optional. Empty alt text on a gallery piece usually shouldn’t be.
Teach once, leave artifacts
A 30-minute walkthrough at handover isn’t enough. Leave:
- A one-page “how we publish” guide
- Screenshots of common tasks (new project, update homepage block, fix a typo)
- A named contact for “is this a bug or expected?”
Editors shouldn’t need to reverse-engineer the schema.
Kill the zombie content
Archive or unpublish flows matter. Without them, drafts and old events clutter search and confuse navigation. Give editors a clear “this is live / this is archived” state and reflect it on the frontend.
The success metric
Not “number of document types.” Success is editors shipping updates without Slack-ing a developer. Design the studio for that job — then the CMS earns its keep.