Moving from WordPress to Umbraco is a full replatform, not a plugin swap. WordPress is PHP-based and organized around posts, pages, and plugins. Umbraco is a .NET platform built around document types, structured content, and a developer-led approach to how your site is assembled. Very little transfers automatically, which means the quality of your planning matters more than the speed of your execution.
This checklist walks through the whole process in the order things actually need to happen.
Before you start: decide if this is the right move

- Write down the specific problems WordPress isn't solving for you today (content structure, editor experience, security concerns, a .NET-based tech stack, scale)
- Confirm those problems are things Umbraco genuinely solves better, rather than things better WordPress configuration could fix
- Confirm you have access to .NET development resources, in-house or through a partner, since Umbraco is a .NET platform and the talent pool is smaller than WordPress's
- Get a realistic budget and timeline from at least one experienced Umbraco implementation partner
Audit your existing WordPress site
- Export a full list of every URL on your current site, including posts, pages, categories, tags, and media
- Identify content that's outdated, duplicate, or thin, and decide what gets cut instead of migrated
- List every plugin you rely on and what each one does (SEO, forms, caching, e-commerce, membership, and so on)
- Document every third-party integration, such as your CRM, email platform, analytics, payment processors, and custom API connections
- Note any custom post types, custom fields (for example, ACF), and shortcodes, since these are usually the hardest parts to translate
- Record your SEO baseline: top-ranking pages, organic traffic, and backlinks, so you can measure the impact afterward
Plan your new content structure
WordPress thinks in posts and pages. Umbraco thinks in document types, and this mapping is where most of the real thinking happens.
- Map each WordPress content type to an Umbraco document type (blog posts, landing pages, team profiles, product pages)
- Turn custom post types into their own document types, and custom fields into document type properties
- Decide how categories and tags translate, since WordPress taxonomies don't map one to one onto Umbraco's content tree
- Decide how flexible page layouts will work, and whether editors will build pages from reusable blocks
- Plan user roles, permissions, and any editorial approval workflow before you build
Be realistic about migration tooling
This is the part worth being honest about: there's no one-click WordPress to Umbraco tool. You have a few realistic routes, and which one fits depends on the size of your site.
- Manual transfer is possible for small sites, but one migration vendor describes it as time-consuming and error-prone, and it gets worse as content grows
- A custom scripted migration is the most common route for mid-sized and larger sites: export content from WordPress (through its REST API or XML export), transform it into a structured format that matches your Umbraco document types, then import it using Umbraco's APIs or an import package
- Commercial migration services and connectors exist for teams that want to hand the data work to a specialist
- Umbraco Deploy and similar tools are built for moving content and schema between Umbraco environments or versions, so they help once your content is already in Umbraco, but they won't pull it out of WordPress for you
Whichever route you choose, plan on custom work around your specific content model, and expect to run the migration several times before the output is right.
- Decide with your development partner which route you'll use
- Start with a small sample of content and review it carefully before scaling up
- Budget time for manual cleanup, since automated imports rarely come out perfect on the first pass
Choose your hosting
- Decide between a managed option such as Umbraco Cloud and hosting it yourself, and compare the real total cost of each
- Check which Umbraco version is currently supported and build on that, not an older one you'll have to upgrade soon
- Set up separate staging and production environments
Build the new site alongside the old one
- Set up a staging environment completely separate from your live WordPress site
- Build your document types, templates, and page layouts
- Rebuild or replace the functionality of your essential WordPress plugins, using Umbraco packages or custom development
- Reconnect third-party integrations
- Keep your WordPress site running unchanged during the build so there's no downtime
Migrate your content
- Run test migrations and review the results with your content team, since people catch problems automated checks miss
- Check that formatting, images, embedded media, and internal links survive the move
- Migrate your media library, and use the opportunity to remove unused or duplicate files
- Migrate metadata carefully, including titles, descriptions, and alt text
- Rewrite or replace any WordPress shortcodes, since they won't render in Umbraco
Protect your SEO
This is the step most likely to cause lasting damage if you rush it.
- Map every old WordPress URL to its new Umbraco URL
- Set up 301 redirects for every mapped URL, not just your top pages
- Carry over title tags, meta descriptions, canonical tags, and structured data
- Rebuild your XML sitemap and confirm it reflects the new structure
- Check that robots.txt isn't blocking anything on launch day
- Crawl the staging site to catch broken links and redirect chains before they reach production
Test before you launch
- Test every form, search function, and interactive element end to end
- Check mobile responsiveness on real devices
- Run page speed and Core Web Vitals checks and compare them with your WordPress baseline
- Review accessibility, especially if you have compliance obligations
- Train your editors on the new backoffice before launch day, not after
- Confirm roles, permissions, and approval workflows behave as planned
Launch and monitor
- Pick a launch window with the lowest traffic you can find
- Switch DNS, then immediately verify redirects, forms, and key pages on the live site
- Submit your new sitemap in Google Search Console
- Watch crawl errors, indexing status, and 404s closely for the first few weeks
- Keep your old WordPress site available as a backup for a while
- Compare organic traffic and rankings against your baseline over the next one to three months, and expect some short-term fluctuation
A final honest note
A WordPress to Umbraco migration is a real project, not a quick swap. It tends to make the most sense for organizations that want a flexible, developer-friendly platform, already work in a .NET environment, and have the development resources to support it. If that doesn't sound like you, it's worth pressure-testing whether the move solves a real problem before committing to the effort.
If you've been through this migration yourself, we'd genuinely like to hear how it went, what took longer than expected, and what you'd do differently. Real migration stories, including the messy parts, are exactly what we want more of on this blog.