Marketing stops waiting
A campaign page ships without a deploy, which is the outcome most teams thought headless would give them by itself.
WHAT REPLACES THE THEME EDITOR
Going headless removes the Shopify theme editor, so editorial content needs somewhere else to live. A headless CMS such as Sanity or Contentful holds the campaign pages, editorial and brand content, Shopify holds products, inventory and orders, and the front end composes both. The point is that your content team and your catalogue stop blocking each other.
IN SHORT
A content system with no front end of its own. It stores structured content and serves it over an API, so the same campaign can render on a web storefront, a native app or an in-store screen. In a headless Shopify build it holds everything that is not a product, and the front end composes the two.
| Sanity | Contentful | |
|---|---|---|
| Editing interface | Studio is code in your repo | Hosted app, configured not coded |
| Content modelling | Very flexible, easy to over-model | More prescriptive, harder to get wrong |
| Suits | Teams with a developer close by | Large content teams wanting guardrails |
| Preview | Built by you, integrates deeply | Built in, less customisable |
| Localisation | Field-level, flexible | Locale-level, structured |
| Cost shape | Usage-based, cheap at low volume | Seat and space based |
Who writes, who approves, who schedules, and what they currently work around. A content model built from an org chart rather than the real workflow is the one that gets abandoned.
Products, variants, prices and inventory stay in Shopify. Campaigns, editorial, guides and landing pages live in the CMS. Anything ambiguous gets assigned deliberately rather than ending up in both.
Reusable blocks rather than page-shaped documents, so a campaign built this quarter can be recomposed next quarter without a developer.
The CMS stores a product handle; the front end resolves it at render time. Prices and availability therefore cannot go stale, because they were never duplicated.
Draft content rendered through the actual front end at a shareable URL. This is the single feature that decides whether a CMS is adopted or worked around.
Who can publish, what needs review, and how a scheduled campaign goes live at 9am without a developer awake. Configured before launch, not retrofitted after the first mistake.
A campaign page ships without a deploy, which is the outcome most teams thought headless would give them by itself.
Products referenced rather than copied, so the CMS can never show a price Shopify disagrees with.
The same structured content renders on web, app and screens without being rewritten for each.
Drafts render through the real front end, so an editor can see the page before anyone else does.
We have built the Shopify-side version of this repeatedly — section libraries that let merchandisers compose pages without a developer, and full store and content management for brands like Mighty Jaxx, where the publishing workflow matters as much as the storefront. A headless CMS is the same problem with the theme editor removed.
Clients from the roster whose work this page describes. Each links to what we actually built.
Moonglow sells jewellery set to the moon phase of a date that matters to you. We built Find Your Moon: the customer enters a date of birth or other significant date, the store renders that moon phase, and it drives the personalised product.
Effectively yes, unless your site is purely catalogue with no editorial. The moment you leave Liquid you lose the theme editor, and asking marketers to file a ticket for every landing page is how a headless project quietly fails six months after launch.
Sanity is more flexible and its studio is code you own, which suits teams with a developer close by. Contentful is more prescriptive and easier to hand to a large content team. Both work; the wrong answer is picking one before modelling your content.
In Shopify. Splitting product data across two systems creates a reconciliation problem that never goes away. The CMS holds what sits around the product — stories, guides, campaign pages — and references products rather than duplicating them.
A headless CMS, and nothing else does the job. The theme editor is the tool merchandisers use to compose pages, and it only exists for Liquid themes. Without a replacement, every landing page becomes a developer ticket, which is how headless projects lose their internal support.
For modest editorial needs, yes, and it is worth considering — metaobjects keep everything in one admin and cost nothing extra. They run out when you need rich editorial layout, scheduled campaigns, multi-locale content or a review workflow, which is where a dedicated CMS earns its licence.
By never putting them there. The CMS holds a product reference; the front end fetches price and availability from Shopify at render time. If a price appears in two systems, one of them is eventually wrong, and it is always the one nobody is watching.
Shopify’s own React framework and hosting — the shortest path to headless that keeps you inside supported territory.
A custom front end on Next.js or your existing stack, reading catalogue and cart from the Storefront API.
Moving an existing theme to a headless front end without losing URLs, SEO or the merchandising your team relies on.
NEXT STEP
Most stores that ask about headless have a theme or app problem instead. A senior engineer will tell you which one you have, at no cost.