Headless Next.js or Traditional CMS? How to Make the Architecture Decision That Fits the Business

How to choose between headless Umbraco with Next.js and a traditional CMS architecture based on performance, personalisation, governance, operating cost and the marketing roadmap.

Headless CMS vs traditional CMS is not a choice between the newest technology and an outdated approach. The right architecture is the one that supports the organisation’s customer experience, marketing ambitions, governance model, delivery capability and long-term operating costs. A headless Umbraco architecture with Next.js is the stronger choice when decoupled delivery creates clear business value; a traditional Umbraco architecture is often the better fit when one content-rich website, integrated marketing capabilities and a simpler operating model matter more.

 

In a recent architecture review, the Next.js baseline was already in place and headless Umbraco appeared to be the modern, defensible choice. Testing that approach against future personalisation, hosting, security, maintenance and governance requirements changed the recommendation. The team ultimately chose a conventional Umbraco MVC architecture because it supported the full roadmap with less unnecessary complexity and operational risk.

 

The review was not a theoretical debate about frameworks. It tested headless Umbraco with Next.js against the practical demands of performance, personalisation, hosting, security, maintenance and cost. The decoupled model offered flexible caching, clear separation of concerns and the potential to keep serving cached experiences during a CMS outage. The question was whether those advantages justified the additional complexity across the organisation’s full roadmap.

 

The outcome reframed the architecture discussion around a harder question: which approach could support the organisation’s full roadmap without introducing unnecessary complexity, cost and operational risk?

“We need to be very clear about who is responsible for what, and where we are integrating.”
Simon Buerger, Technical Director at Bluegrass Digital

The false simplicity of “headless versus traditional”

Headless CMS architecture separates content management from presentation. In an Umbraco implementation, content can be delivered as structured data through the Content Delivery API and rendered by a separate application such as Next.js. That separation can be valuable when the same content must serve multiple websites, apps, kiosks or other digital channels, or when the experience behaves more like a product than a conventional publishing site.

 

A traditional CMS architecture does not mean a static, dated website. With Umbraco MVC, the CMS and presentation layer are part of the same application, while interactive features can still use APIs and lightweight JavaScript where they improve the experience. Search filters, comparison tools and dynamically loaded results do not automatically require an entirely decoupled architecture.

 

The choice is not between innovation and convention, but between different distributions of complexity. Headless places more responsibility in the contracts between APIs, caching, preview, deployment and observability across two applications. MVC concentrates the platform in one codebase and deployment model, but requires disciplined back-end performance, clean model-view-controller boundaries and deliberate handling of interactive experiences.

Performance is an outcome, not an architecture

Next.js has genuine performance strengths. Static rendering, caching, streaming and partial prerendering can make routes feel immediate by serving a static shell while dynamic content resolves. Client-side navigation can also create a smoother sense of continuity than repeated full-page loads. For experience-led products, those benefits may materially affect the architecture decision.

 

But “headless is faster” and “MVC is slower” are both too crude to guide an enterprise CMS migration. A poorly designed API, an expensive database query or an uncached third-party call will remain a bottleneck wherever the rendering layer sits. Caching can reduce pressure, but it can also conceal an inefficient integration until traffic rises. Conversely, a well-engineered server-rendered Umbraco site can be highly performant when its templates, queries, assets, caching and infrastructure are designed for the expected load.

“Anything you miss compounds when you have traffic. Caching can help, but it can also hide the issue.”
Simon Buerger, Technical Director at Bluegrass Digital

The roadmap can outweigh the launch brief

The architecture came under closer scrutiny when the team considered a stated future ambition: analytics, A/B testing, audience segmentation and personalised experiences through Umbraco Engage. These capabilities were not part of the immediate launch scope, but they changed the risk profile. A platform decision based only on current requirements could create expensive rework if the marketing roadmap later depended on features that were more complex to deliver within the chosen architecture.

 

This is also where current product evidence matters. Umbraco documents a dedicated Engage Headless package that supports personalised content, A/B tests and segmentation through the Content Delivery API. However, its documentation also lists features that are not supported headlessly, including time-on-page tracking, form tracking, heatmaps, the Engage Cockpit and some analytics bridges. The responsible conclusion is not that Engage cannot work with headless. It is that the exact version, required feature set, hosting model and implementation effort must be validated before the architecture is committed.

 

That distinction matters because product capabilities and documentation evolve. A proof of concept that was necessary a year ago may now be supported, while a feature assumed to be complete may still have gaps. Architecture discovery should verify the current platform reality rather than repeat an outdated limitation or leave a roadmap requirement for later.

Enterprise governance changes the calculation

A separate front end introduces more than another repository. It may introduce another hosting platform, deployment pipeline, monitoring layer, package estate and security process. It changes where secrets are held, how preview works, who owns incidents and how vulnerabilities are patched. Those are manageable concerns, but they are not free.

 

For an enterprise standardised on Azure and Azure DevOps, adding a second runtime or vendor may trigger procurement, data, identity, security and operational reviews. The technology may still be the right choice, but architecture needs to account for the organisation that must approve and operate it. Vendor fit and governance fit are part of technical fit.

 

Security also resists easy slogans. A decoupled front end can reduce direct exposure of the CMS and create a strong boundary around the back office. A traditional build can keep third-party credentials and integration logic on the server, avoiding API keys in the browser. In either model, the outcome depends on threat modelling, content security policy, identity, access control, dependency management, code analysis and disciplined secret handling, not the word “headless”.

Integration complexity rarely disappears

Search made the point clearly. Sending CMS content into a search index is one concern; retrieving results, applying facets and filters, handling synonyms, merging data and presenting useful comparisons is another. Much of that bespoke work exists whether the consumer is a Next.js application or an MVC-rendered page enhanced with JavaScript.

 

The same principle applies to third-party data. When an external platform remains the system of record and the CMS enriches its data, engineering ownership must be explicit. Which layer calls the source? Where is data cached? Which system resolves conflicts? What happens when the source is unavailable? Duplicating an integration in both the front end and back end without a deliberate reason creates two failure paths and two places for behaviour to drift.

Total cost of ownership is where fashionable choices become operational ones

The build estimate is only part of the cost. A headless solution may require two upgrade paths, two deployment surfaces, additional packages and people comfortable moving across the CMS, API and front-end stack. A traditional solution may shift more effort into .NET, Razor, integration and infrastructure. Neither is inherently cheaper; the cost profile follows the architecture and the skills available to operate it.

 

An architecture change redistributes delivery work across estimates, technical tickets, quality assurance and team responsibilities. A single application may simplify testing and deployment, while a decoupled system may isolate concerns more cleanly. The delivery plan must account for those differences before development begins rather than treating the decision as a change of label.

A practical decision framework for headless Next.js and traditional CMS architecture

Choose headless when the separation creates specific value. Strong signals include genuine multi-channel content reuse, product-like interactions, independent release cycles, multiple front ends, a need for framework freedom, or a scale and resilience model that benefits from a separately deployed presentation layer.

 

Choose a traditional CMS architecture when cohesion creates more value. Strong signals include one principal website, deep reliance on integrated CMS marketing features, a preference for one operational stack, limited appetite for duplicated maintenance, server-side integration needs and an enterprise governance model that favours existing infrastructure.

 

Use a hybrid approach when the experience is mixed. A server-rendered Umbraco site can still expose APIs for faceted search, filtering, booking journeys or comparison tools, then enhance those areas with focused JavaScript. Headless is not the only route to interactivity, and traditional rendering need not dictate full page reloads for every action.

 

The most useful architecture discussion begins with six questions: What must the platform do at launch and two years later? Which CMS capabilities must work without extensive custom development? How many channels will genuinely use the content? Who will maintain each layer? Which hosting and security controls are non-negotiable? Where will architectural separation create measurable business value rather than technical novelty?

“You can create highly performant websites with a traditional architecture. We have done enough of them to know that the real question is not whether it can work, but whether it is the right fit.”
Mark Hawkins, Director at Bluegrass Digital

The mark of specialist engineering is knowing when not to add another layer

The strongest Umbraco specialists and software engineers are not defined by their ability to build the most complex architecture. Their value lies in testing the roadmap, challenging assumptions and recommending the simplest approach that meets the organisation’s needs without closing off its future. In a CMS migration or digital transformation programme, the right architecture is the one that editors can use, marketers can evolve, developers can maintain and the enterprise can govern.

Planning a CMS migration or reviewing an existing Umbraco architecture?

Bluegrass Digital can help assess the business requirements, marketing roadmap, integration landscape, governance constraints and total cost of ownership before the delivery model is fixed.

Get in touch with our team

Frequently asked questions

Is a headless CMS always faster than a traditional CMS?

No. Headless architectures can offer excellent perceived performance through caching, prerendering and client-side navigation, but results depend on implementation. API design, database access, integrations, payloads, caching and infrastructure remain decisive. A well-built traditional CMS can also perform strongly.

Can Umbraco be used as a headless CMS with Next.js?

Yes. Umbraco’s Content Delivery API exposes published content as JSON for headless and decoupled front ends, including applications built with Next.js. The architecture should still be selected against content, preview, search, personalisation, hosting and operational requirements.

Does Umbraco Engage support headless implementations?

Yes, current Umbraco documentation describes an Engage Headless package supporting personalised content, A/B tests and segmentation through the Content Delivery API. It also documents feature exceptions, so teams should confirm the required capabilities and supported versions during discovery.

When is a traditional Umbraco MVC architecture the better choice?

It can be the better fit when the primary requirement is one content-led website, integrated CMS capabilities are central, the organisation wants one application and operational stack, or the additional independence of a separate front end does not create enough business value to justify its cost and governance overhead.

What should a CMS migration discovery include?

A CMS migration discovery should cover business goals, content and editorial requirements, integrations, search, analytics, personalisation, security, hosting, traffic, availability, accessibility, development capability, operating ownership and total cost of ownership. Its purpose is to make architectural trade-offs, dependencies and risks visible before a framework is selected.

Processing...
Thank you! Your subscription has been confirmed. You'll hear from us soon.
Newsletter signup.
Sign up to our newsletter to receive new blog posts, tech talk invites and our monthly newsletter.
ErrorHere