Hybrid headless CMS

One CMS. Web pages and JSON.

A hybrid headless CMS delivers the same content as finished web pages or as structured data. In Forrit, content types, entries and pages are managed once. The HTML channel serves complete pages built from your components, and the JSON channel serves pure JSON to apps and custom front ends.

Illustration: one content source in Forrit CMS published through the HTML channel to websites and through the JSON channel to apps and custom front ends, from a separate delivery tier.

01 · Definition

What is a hybrid headless CMS?

A hybrid headless CMS delivers the same content in two ways: as finished web pages, or as structured data for any front end. It combines the page-based editing of a traditional CMS with the structured content and API delivery of a headless one.

In Forrit, both ways start from the same content types, entries and pages, and every change goes through the same governed workflow.

How hybrid headless works in Forrit

  1. Model content once with content types and entries

  2. Organise it into pages

  3. Publish through the HTML channel, the JSON channel, or both

  4. Serve each channel from a delivery tier separate from the CMS

Illustration: hybrid headless combines the pages and editing of a traditional CMS with the structured content and API delivery of a headless CMS.

What hybrid headless gives you

  • Managed web pages

    Forrit renders complete web pages from your components, ready for marketing sites and large web estates.

  • Headless JSON

    The same content is delivered as pure JSON for apps and custom front ends.

  • One content model

    Content types, entries and pages are managed once, whichever channel delivers them.

  • One governed workflow

    Task branches, preview, approval and audit history apply to every change, in both channels.

02 · Compared

How does hybrid headless compare with traditional and headless CMS?

A traditional CMS keeps the page but ties content to one website. A pure headless CMS frees the content but often loses the page. Hybrid headless is designed to keep both.

How hybrid headless compares with traditional and pure headless CMS.
CapabilityTraditional CMSHeadless CMSForrit hybrid headless
Page-based editingYesOften limitedYes, in both channels
Structured, reusable contentLimitedYesYes, with content types and entries
JSON and API deliveryRarely nativeYesYes, through the JSON channel
Front-end freedomTied to the CMSYesYes, or let Forrit render the pages
Preview in contextYesOften custom-builtYes, in Forrit or in your own front end
Page-level SEO and metadataYesOften assembled from other toolsYes, on every page and in the JSON
Delivery separated from the CMSUsually coupledYesYes, with one-way Airlock Publishing

Generalised categories, not named products. Individual platforms vary.

03 · Two delivery channels

What is the difference between the HTML and JSON channels?

The difference is who renders the experience. Through the HTML channel, Forrit renders complete web pages from your component templates. Through the JSON channel, Forrit delivers the content as pure JSON, and your own front end renders it.

Everything behind the channels is shared: the same content, the same pages, the same workflow and the same separate delivery tier. Read more about how Forrit keeps the page in a headless setup.

Choosing a channel

  1. Use the HTML channel when Forrit should render the site

  2. Use the JSON channel when your own front end renders it

  3. Use both when a website and an app share content

Illustration: the HTML channel serves a complete web page rendered by Forrit; the JSON channel serves structured data that your own front end renders.

Channel capabilities

  • HTML channel

    Complete web pages

    Forrit renders full pages from your component templates. Developers extend them with the .NET SDKs.

  • HTML channel

    Fast launches from shared components

    Launch new sites and pages from components and templates you already have, with no separate front end to maintain.

  • JSON channel

    Pure JSON, any framework

    Content with no markup, ready for React, Next.js, mobile apps, .NET or any other front end.

  • JSON channel

    Pages, routes and SEO as data

    Pages, routes, navigation and SEO metadata are delivered as data. Request whole pages or individual entries.

  • Both

    Same governance in both

    Content types, entries, pages, task branches, preview, approval and localisation work the same in either channel.

  • Both

    Separate delivery tier

    Both channels are served by dedicated delivery services, with one-way Airlock Publishing from the CMS.

04 · Which to choose

Which channel suits which project?

The right channel depends on who renders the experience. Here is how the choice usually plays out for common projects.

Which Forrit delivery channel suits common project types.
ProjectChannelWhy
Marketing websiteRun by the marketing teamHTML channelEditors build pages from approved components, with no separate front end to maintain.
Estate of many sitesRegional, brand or product sitesHTML channelNew sites launch from shared components and templates, under central governance.
Customer mobile appiOS, Android or cross-platformJSON channelThe app reads structured content and page data, and renders it natively.
Custom front endNext.js, React or similar, built in-houseJSON channelDevelopers keep their framework. Editors still get pages and page-level SEO.
Website and app togetherSharing product contentBoth channelsOne content team and one approval process support both experiences.

Both channels can run side by side, from the same content and the same approval process.

05 · Pages in both channels

How does a page work in each channel?

In the CMS, a page is the same whichever channel publishes it. Editors build it from components and entries, add its route and SEO metadata, and send it for approval.

When it is published, the HTML channel uses each component's HTML template to render the complete page. The JSON channel uses each component's JSON template to output the page as data, and your front end renders it.

One page, two outputs

  1. Editors build the page from components and entries

  2. The page is approved and published once

  3. HTML channel: Forrit renders the complete page from component templates

  4. JSON channel: your front end receives the page as JSON and renders it

Illustration: one page with its SEO title published as rendered HTML through the HTML channel and as data through the JSON channel.

What stays the same

  • Same editing experience

    Editors build and manage pages the same way, whichever channel publishes them.

  • Same SEO and metadata

    Page titles, descriptions and metadata travel with the page in both channels.

  • Preview before publishing

    Preview pages in Forrit, or render draft JSON from the task branch in your own front end.

Go deeper

One content platform, delivered your way.

See how Forrit keeps the page in a headless setup, explore the full CMS, and find out how both channels are protected.

  • Forrit CMS

    Headless CMS

    How Forrit keeps the page in a headless CMS: preview, page-based authoring, page-level SEO and one JSON response per page.

    • Product

      Forrit CMS

      Create, govern and reuse content across your digital estate, with structured content, visual page building and headless delivery in one CMS.

      • Structured content
      • Reusable components
      • 550+ locales
    • Key benefit

      Security

      Seven layers of protection, from edge security and Airlock Publishing to secure development and ISO 27001 assurance.

      Hybrid headless questions, answered

      Want to see it in action?

      Book a demo

      Last updated