On 1 April 2026, Cloudflare unveiled a CMS called EmDash and described it as the "spiritual successor to WordPress". It was not an April Fools' joke. Six months later, on 28 September, version 1.0 arrived, and by mid-October it was up to 1.3.1.
The question we get asked is the obvious one: do you need to leave WordPress? The short answer is that almost nobody does, not yet. The long answer depends on what you have. And it is worth saying where each fact comes from: this rests on the official documentation, the repository and the trade press, not on a project of ours built with EmDash.
What EmDash is, minus the slogan
It is a content management system written in TypeScript, MIT-licensed, built on Astro. It has an admin panel (content types, media, menus, taxonomies, revisions, drafts, scheduling), passkey sign-in and roles for administrator, editor, author and contributor. According to its repository, it needs no PHP: you deploy it on Cloudflare (Workers, D1 and R2) or on a Node.js server, with SQLite or other databases.
Two decisions set it apart from other headless CMSs.
Plugins in sealed boxes. In WordPress, a plugin runs inside the same process as everything else and can read the entire database. In EmDash, each plugin runs in its own environment and declares in a manifest which permissions it needs (reading content, sending email, reaching certain domains). If it does not declare it, it cannot do it. The administrator approves what it asks for. This is Cloudflare's main argument, and it makes sense: many WordPress security problems come from plugins.
Built to work with AI agents. Every installation ships with a built-in MCP server, a command line and agent skills, so an AI tool can manage content and schema much as a person would from the dashboard.
Maturity: more than it looks, less than you need
In its favour:
- There has been a stable release (1.0) since 28 September, and releases come at a fast pace: 1.3.1 came out on 18 October.
- According to Cloudflare, its own blog moved to EmDash in August and serves millions of weekly page views. It is the strongest data point, and it comes from the company that makes the product.
- More than 175 contributors and 25 interface languages, again according to the 1.0 announcement.
Against it:
- It is a Cloudflare announcement. What it says about reliability and security has not been verified by third parties, and the text itself does not define "stable" in numbers.
- Project governance. The post describes no formal governance model. Joost de Valk (Yoast) raised the question of who steers it in the long run. In practice it is still a Cloudflare project.
- No paid plugins yet. The plugin registry (decentralised, built on the AT Protocol behind Bluesky) does not yet support paid plugins.
- The ecosystem is small. WordPress has tens of thousands of plugins; comparing that catalogue to EmDash's is comparing an ocean to a pond. Cloudflare cites 44 Astro themes with EmDash variants, from a single vendor.
- Page builders and ready-made integrations, which you take for granted in WordPress: here you build them yourself or they do not exist.
There is also a criticism that keeps coming up: that the isolation model would only work on Cloudflare. According to CMSWire, Matt Mullenweg argued it that way (a single source, and I have not seen the original quote). The official documentation qualifies this: on Node.js, plugins run in a separate process (workerd), with differences between the two platforms that it refers readers to the manual for. How much each option really isolates is worth checking before you bet seriously on it.
Migrating from WordPress: what the manual says
There is an official route, and it is better than you would expect from a young project. But "exists" does not mean "is a button".
There are two ways to import: upload a WordPress export file (WXR, the one from Tools > Export), or install the EmDash Exporter plugin on your WordPress and connect it with a key. The second brings more: comments, menus, logo, favicon, ACF fields and Yoast or Rank Math data.
What happens to each thing, according to its own documentation:
Item | What happens |
|---|---|
Posts and pages | Imported. Gutenberg content is converted to Portable Text (a structured format, not HTML) |
Blocks that WordPress generates on the server (Latest Posts, plugin blocks) | They arrive as an HTML comment and display nothing: they have to be rebuilt |
Shortcodes and page builders | No automatic conversion. The documentation asks you to review the result and rebuild the pages |
Custom post types | Created as collections |
Custom fields | WXR does not copy them all. The Exporter does, but relationships still point to WordPress IDs |
Custom taxonomies | If EmDash has no matching definition, they are skipped |
Images | The WXR does not carry the files: EmDash downloads them from your WordPress, which must stay online |
Plugins and theme | Not migrated. There is a guide for porting plugins (there is no point porting what Astro or EmDash already covers, such as page caching) and the theme is rebuilt in Astro |
And one problem that, as a studio that cares about SEO, we consider the biggest. There is an open issue in the repository (#4046, from 9 October) explaining that EmDash does not preserve WordPress permalinks: the importer discards the original URL, and the pattern system only supports simple variables ({slug}, {id}, dates). If your site uses categories in the URL or nested structures, the addresses change. It is a user-filed issue, although the project's own bot confirmed the essential facts. For a site that lives off organic traffic, this is solved with 301 redirects planned one by one, or the migration does not happen.
Who it suits today
- A new site, mainly content, with someone who knows TypeScript and Astro. There is nothing to migrate and plugin isolation counts in its favour.
- Lightweight company or documentation sites, where content comes first and there is no shop.
- Teams already on Cloudflare who want to integrate everything.
- Projects with AI workflows, where the built-in MCP server saves work.
Who it does not suit (yet)
- Shops. WooCommerce is a platform, not a plugin, and EmDash has no mature equivalent. Cloudflare mentions that Urumi is releasing an e-commerce plugin based on its WooCommerce work; that is a third party's announcement, not a catalogue with years of track record. For a shop that takes payments every day, not today.
- Sites that depend on many plugins (bookings, memberships, complex forms, multilingual via plugin) or on page builders such as Elementor. Every piece is rebuilt or replaced.
- Content teams without a technical profile. The dashboard works, but any change to structure goes through Astro code.
- Sites with a lot of accumulated SEO and complex URLs, because of the permalink issue.
What we would do, depending on your case
- You have WordPress and it works: do not move out of fashion. Before migrating, update, optimise and maintain. WordPress.org has also added an automated security review to plugin releases (we cover it in another article).
- You are planning a new site with no shop: compare properly. Ask for a quote on both options, WordPress and an Astro stack, and look at who will maintain each one in two years' time.
- Your content site is small and you have a technical profile: a pilot is worth it. Import a copy into a test EmDash, see what fails and measure the effort before deciding.
- You have a WooCommerce shop: no EmDash for now. If speed is the pain, there are ways to fix it within WordPress.
At AGENCIA RSE we work with both: WordPress and WooCommerce for what needs an ecosystem, and Astro on Cloudflare for what does not. In fact, this very site is an Astro site on Cloudflare Workers, with the shop in WooCommerce kept separate at shop.agenciarse.com. That lets us advise you without having to sell a single tool. If you are weighing up custom development or a change of platform, the first step is to list what your site does today and what you cannot afford to lose.
Facts checked on 25 October 2026. EmDash moves fast: if anything has changed, let us know and we will update it.