HostlessWP
Compared: headless WordPress

Headless WordPress or WordPress on Workers?

Headless changes the front end and keeps the server; HostlessWP keeps the front end and removes the server. In a headless setup WordPress becomes a content API and a new front end is built in another framework, so your theme stops mattering and WordPress still runs on a server behind it. HostlessWP runs the whole WordPress, theme included, on Cloudflare Workers.

Side by side

Headless WordPressHostlessWP
Your themeReplaced by a new front endUnchanged
Plugins with front-end featuresRebuilt by hand (forms, shop pages, SEO tags)Work as before
What you maintainTwo applications: WordPress and the front endOne WordPress
Server for WordPressYesNo
Front-end freedomAny framework, any designWhat WordPress themes and builders can do
Effort to switchA new projectOne command

When headless is right

Headless is a front-end decision. It makes sense when the design or the app you want cannot be built as a WordPress theme, when the same content feeds a website, a mobile app and other channels, or when your team already works in a JavaScript framework. It is not a hosting decision: WordPress still needs somewhere to run, and you take on a second codebase.

If the reason you were looking at headless is to get rid of the server, the slow host or the security worries, and the current theme is fine, you do not need a rewrite for that. That is the case HostlessWP is for.

Headless with no server behind it

The two can be combined. The WordPress REST API works on Workers in our tests, so a headless front end could read from a WordPress that HostlessWP runs, and neither side would need a server. We have not tested GraphQL plugins such as WPGraphQL yet; if you try it, tell us what you find.

Note that the REST API is never served from the page cache, so every API call runs PHP and counts against the Workers and Hyperdrive limits. See what the free tiers cover.

Keep the theme you have

Try HostlessWP on a copy of your site. Nothing changes on your current host.