Content modeling defines the shape content must follow
In a headless CMS, content modeling means setting fields and rules before anyone writes an entry. Draftbase turns that into a typed content type. Not a loose habit someone has to remember. The same rules apply whether an entry comes from the dashboard or the API.
Pick a field type, name it, and mark it required — the JSON schema updates live.
{
"id": "headline",
"type": "text",
"required": true
}What is content modeling
Content modeling means defining the structure content will follow before anyone writes it. That covers four things. What fields exist. What type each field is. What values count as valid. How entries relate to each other. A blog post might have a title, a slug, a body, and a link to an author. Each field gets its own type and rules. The model is written once. Whoever owns the schema writes it. Every new entry has to match it.
Without a model, every page becomes a blob of HTML. Nothing stops an editor from skipping a title. Or pasting an image where a date belongs. A CMS with no model can only store text. It can't tell you the text is wrong. Two editors on one team can end up with two different shapes for the same content. Nobody notices until a template breaks. The problem grows with every new editor added. There's no shared rule to check work against. Fixing it later means checking every entry by hand.
This is also where content mapping and rules start. Once fields and types are set, you can map the same field the same way, every time. You can also control who edits what, and when it goes live. Dates, authors, and categories become a typed field, not free text. A category stored as a real field can be filtered and searched. A category typed into a paragraph cannot. Teams lean on this daily. A model lets them check content at scale. No need to open every entry by hand. It also changes how content moves between systems. A modeled entry can move field by field. Every value has a known type on the other end. A loose blob has to be parsed and guessed at each time it crosses a system. Each guess is a new place for the data to drift.
How Draftbase implements content modeling
Draftbase turns the four parts of a content model into real settings on a template. Fields, types, rules, and links between entries. This isn't a doc someone has to maintain by hand. Each piece maps to a control in the schema editor. A field is done once its type, its rules, and its default value are set. There's no second system to keep in sync. The schema is the source of truth for what an entry can hold.
Typed field schema
Eight field types cover most content shapes: text, rich text, number, boolean, date, media, reference, and JSON. Each field is picked once, in the schema editor. It then applies to every entry created after that.
Field-level validation
Any field can be marked required. Text fields also support regex presets: URL, email, handle, hex color. Plus a min/max length and custom patterns. Each with an error message editors actually see.
Draft/publish + revisions
Every entry holds draft and published states. Every save creates a revision. A schema change or a bad edit is a rollback, not an incident.
Read-only delivery API
Published entries are served over a key-gated delivery API, separate from the management API. Every React frontend gets the model you actually defined.
The reference field is what makes content modeling relational, not flat. An author, a category, or a related post can be linked by reference. Not pasted in as text. A field can allow one reference, or a list of them. Text fields carry the most rules. A field can be marked as a slug. Or locked to a fixed set of values shown as a dropdown. Or checked against a pattern, with a custom error message. Fields can also be marked localized. Each language gets its own value under one schema. No separate template per locale needed. Number fields support min and max bounds. Text fields support a min and max length, on top of any pattern that applies. A field can also carry a default value and help text. A new entry starts pre-filled. An editor sees why a field exists without asking on Slack. None of this needs a plugin or a third-party layer. It's part of how a template is defined. The same rules apply every time. Whether an entry comes from the dashboard, the MCP server, or the API. Who can edit a template? Who can publish an entry? Both sit on top of this same schema. It's not a separate layer someone has to reconcile by hand.
Content modeling vs. unstructured content
The gap between structured and unstructured content shows up in four places. Do values get checked? Can entries safely link to each other? Do changes leave a trail? Can content be reused elsewhere? Generic headless CMS platforms close part of that gap. Draftbase closes the rest, with revision history built into the schema itself. Tracking changes isn't a bolted-on feature here — it's part of the model. The table below lines up all three approaches on those same four points.
| Approach | Unstructured (HTML blob / freeform WYSIWYG) | Generic headless CMS schema | Draftbase templates |
|---|---|---|---|
| Validation | None — errors surface at render time | Basic required-field checks | Typed fields plus regex/length validation at write time |
| Relationships between content | Manual linking, breaks silently | Reference fields, no revision awareness | Reference fields plus revision history |
| Governance / audit trail | None | Depends on vendor | Draft/publish states plus entry revisions built in |
| Multi-channel reuse | Requires re-authoring per channel | API makes it possible | API makes it possible, same as generic headless |
Multi-channel reuse looks the same for a generic headless schema and for Draftbase. Both expose an API. Call that row a wash. The other three rows are where skipping content modeling costs you. That usually shows up as a broken link. Or an edit nobody can trace, found weeks later. A reference field that points at a deleted entry is a bug. You can find it and fix it. A hardcoded ID pointing at that same deleted entry is a bug too. Nobody notices, until a page breaks.
Why content modeling matters more as teams scale
Manual content work slows teams down as they grow. 47% of teams call slow, manual content work their biggest problem. (Source) That's from a Content Science survey, cited in Storyblok's 2025 CMS report. A defined model removes that manual step. Checks and structure run once, in the schema. Not by hand on every entry. A small team can get by on shared habits about how content should look. A larger team, with editors across time zones, can't. Rules about who publishes what tend to show up as a team grows too. A model with draft and publish states, plus a change log, meets that need. No separate tool bolted on later.
Structured content pays off in dollars too, not just time saved. 86% of headless CMS users in a Netherlands survey said they saw more return after the switch. (Source) That return tends to add up. A well-built template gets reused on every new channel a team adds. A loose blob has to be rewritten each time. The upfront cost of modeling content is small and fixed. Skipping it costs more. More editors, more channels, more entries added on top of a loose structure.
Start content modeling in minutes
Define a template with typed fields and validation, then publish an entry against it. The model you set on day one is what every future entry has to follow.
Frequently asked questions
What is content modeling?
Content modeling is the practice of defining the structure content will follow — its fields, field types, validation rules, and relationships to other content — before anyone starts writing. It replaces a freeform HTML blob with a schema editors fill in, so every entry of the same template has the same shape by construction rather than by convention.
What field types does Draftbase support?
Eight: text, rich text, number, boolean (shown as "Yes/No" in the editor), date, media, reference, and JSON. Each type carries its own validation options, and text fields can additionally be restricted to a slug format, a preset list rendered as a dropdown, or a regex pattern with min/max character length checks.
Can one template reference another?
Yes, via the reference field type. A blog post's author field can reference an entry in an authors template, and the field can optionally allow multiple references instead of just one — useful for a post with several co-authors or a product tied to several categories.
Does content modeling replace content governance?
No, it supports it. A schema defines what fields can exist and what values they'll accept, but governance — who can publish, what changed, and when — comes from Draftbase's draft/publish states and per-entry revision history sitting on top of that schema. One without the other leaves a gap: a validated field with no audit trail, or an audit trail over data nobody validated.
How is content modeling different from database schema design?
They're related but not identical. A database schema optimizes for storage and query performance. A content model optimizes for what an editor sees in a form and what a frontend can safely render — validation messages, help text, and field labels matter as much as data types, since a person, not just a query planner, has to work with the result.