Migration guide

Migrating to WordPress: what you gain, and what you have to set up

Moving a website to WordPress is moving house. The furniture goes on the lorry and arrives fine. What catches people out is the post.

I went looking for what actually goes wrong when people land on WordPress, because the advice online is overwhelmingly about the lorry. It is all export this, import that, which plugin does the transfer. And the transfer is genuinely the easy part. Nobody writes the post-mortem where the content did not arrive. They write the one where everything arrived, everyone went home, and the traffic quietly stopped turning up over the following six weeks.

So here is the version built on measurements rather than vibes. We scanned 27,385 live sites, and every number below comes from that, which you are welcome to download and check.

Work out whether WordPress is even the right house

Spoiler: on the numbers, it is a coin flip. What differs is which room has the draught.

WordPress scored 75.4 on overall migration readiness across our sample. Drupal scored 76.2. If you are hoping the data will hand you a winner, it will not, and anyone telling you otherwise is selling something.

What genuinely differs is which half each platform is bad at, and that is the useful thing to know before you sign anything. You are not picking a quality level. You are picking which blind spot you inherit.

Know what goes on the lorry, and what does not

Four things move themselves, two get rebuilt whether you planned it or not, two are where migrations quietly fail.

The usual diagram for this is seven equal circles round a logo, with redirects given precisely the same visual weight as the SSL certificate. That is a picture of a checklist, not of a risk. Weighted by what actually goes wrong, it looks more like this:

Content

Moves

Posts, pages, categories and tags

The part everyone budgets for, and the part tooling handles best. Rarely the thing that goes wrong.

Media

Moves

Images, video and documents

Files transfer cleanly. The links to them inside content often do not, so check embeds after the move, not before.

Domain and DNS

Moves

Records, nameservers, mail

Cutover mechanics rather than migration. Lower the TTL a day ahead and it is uneventful.

Certificates

Moves

TLS and HTTPS

Reissued at the new host. Worth confirming the redirect from http and from the www variant still lands in one hop.

Templates

Rebuilt

Themes and the markup they emit

Not ported, rebuilt — which is why the signals below change. Structured data, canonicals and headers all come from here.

Functionality

Rebuilt

Plugins, modules, custom code

Views, custom modules and theme logic do not migrate with any tool. This is where agency time actually goes.

URLs and redirects

At risk

Every address the world already points at

The one that loses traffic. Not on most checklists as a phase, and on the common Drupal plugin it sits behind the paid upgrade.

Emitted signals

At risk

Structured data, canonicals, security headers

Invisible when it breaks: pages look perfect while answer engines lose the ability to describe them. Template-level, so free to fix now.

The two in red are both decided by the templates, on the day you cut over, and neither of them looks broken afterwards. That is the whole problem. A site with no redirects and no structured data renders beautifully.

Understand what WordPress hands you free

Machine-readable pages, mostly, and it is not close.

83.9% of WordPress sites publish structured data, against 32.2% of Drupal sites. That is a 2.6× difference, and it happens for the least glamorous reason imaginable: the plugins most people already run emit it whether anybody asked them to or not. Open Graph tells the same story, 90.8% against 66.6%.

This matters more than it did five years ago. Structured data is how search engines and the answer machines work out what a page actually is. Coming from Drupal, this is the genuine upgrade, and you get it by turning up.

Then set up the thing it does not

Security headers. WordPress ships you almost none, and nobody mentions it.

40.1% of WordPress sites send X-Content-Type-Options. 49.5% send HSTS. On Drupal those are 97.6% and 72.7%, a 2.4× gap. Nothing about WordPress prevents any of it. They are simply off by default, so a migration that does not explicitly switch them on delivers you to a house with worse locks than the one you left.

It is an afternoon of work, set once at the server or the edge, applying to every page you will ever publish. Which makes it the cheapest thing on this page and, reliably, the thing nobody puts on the plan.

Decide who carries the boxes

Three routes. The cheapest one that actually fits is usually right.

Everything here comes from each provider’s own published terms, checked on 5 August 2026. Nobody has paid us, and we have not audited anyone’s work.

The free host migration, which probably does not apply to you

Managed hosts advertise free migrations and they mean it. Kinsta does unlimited migrations on every plan, usually inside two business days, and will remove malware it finds along the way at no charge. WP Engine runs something similar.

Read the small print though. Kinsta’s terms want “a WordPress host or a standard WordPress installation”, which is WordPress moving to WordPress. It will not turn a Drupal node into a WordPress post. If you are coming from another CMS, this offer is not for you, however cheerfully it ranks for the question you just asked.

The plugin route, if the content is well behaved

Coming off Drupal, the tool everyone reaches for is FG Drupal to WordPress, which talks to the Drupal database directly. Its listing shows 700+ active installations and 4.6 stars from 111 reviews. Free gets you articles, pages, categories, tags and images. Premium adds users, custom fields, menus, and the URL redirects.

Sit with that last one. Every measurement we publish says the redirects are what lose the traffic, and on the free tier the redirects are exactly what is left to you. It is the one line item genuinely worth paying for, and it is behind the upgrade.

The agency route, when the site does more than publish pages

Views, custom modules and theme logic do not migrate with any tool, so a site that does real work needs people. Published ranges start around $22,000 for something under 200 pages and run well into six figures for government and university estates. Treat those as weather, not a forecast; scope moves them far more than page count does.

The best value is not the lowest bid. It is the proposal that already contains a URL inventory built from server logs rather than a CMS export, a redirect map you can run rather than read, and a straight answer about what the new theme will emit. A proposal missing those is not cheaper. It has just moved the invoice to the month after launch.

Find out where you are coming from

What breaks depends far more on the platform you are leaving than the one you are joining.

If you are on Drupal, the Drupal guide is the one you want, and the security-header trade above is the part to read twice. Leaving a DXP, Sitecore to WordPress covers what has to be replaced rather than ported, because personalisation and workflow do not come with you. Coming back from headless, Contentful to WordPress deals with what changes when the front end stops being yours to build.

Somewhere else entirely? The full index has the other pairs, and the migration plan is the same whatever you are leaving.

So what would I actually do?

Not compare platforms. Go and look at what your current site is emitting.

If I had one afternoon and had to spend it where it did the most good, I would not spend it reading platform comparisons, including this one. I would spend it building the complete list of every URL I own, because every decision after that gets better once the list exists and worse while it does not.

Then I would check what my site actually emits today, rather than what I assume it emits, so I know what I am about to lose rather than finding out in November. A free scan grades your site on the same signals measured above and flags what will not survive the move.

The furniture will be fine. It is always fine. Set up the post redirection.

FAQ

Frequently asked questions

Is WordPress a good platform to migrate to?

On our measurements of 27,385 live sites, WordPress scores 75.4 on overall migration readiness against Drupal's 76.2 — statistically a coin flip. The useful question is not which platform is better but which blind spot you are choosing: WordPress sites publish structured data far more often, and ship security headers far less often.

What does WordPress give you automatically after a migration?

Machine-readable structured data, mostly. 83.9% of WordPress sites emit it against 32.2% of Drupal sites, because the common plugins add it whether you asked or not. Open Graph tags follow the same pattern at 90.8%. That matters more than it used to, because it is how answer engines describe your pages.

What do you have to configure yourself on WordPress?

Security headers. Only 40.1% of WordPress sites send X-Content-Type-Options and 49.5% send HSTS, against 97.6% and 72.7% on Drupal. Nothing about WordPress prevents them; they simply are not switched on by default, so a migration that does not explicitly add them arrives with less protection than the site it replaced.

Will moving to WordPress hurt my search traffic?

Not inherently. Traffic loss after a replatform is almost always a specific, findable thing: URLs that changed without redirects, pages that were never in the export, or structured data the new theme stopped emitting. The platform you land on matters far less than whether you inventoried every URL before you moved.