Migrating to WordPress without losing your rankings
The redirect map is the whole job. How to build one before you migrate, what to check in the first fortnight, and the normal traffic dip versus the bad one.
I've migrated sites onto WordPress from Drupal, Magento, Wix, static HTML and custom PHP. The technology changes every time. The thing that protects your rankings never does: the redirect map.
Before the migration: inventory everything
- Crawl the old site. Get every URL, including PDFs and images that receive links.
- Export from Search Console the pages that get impressions and clicks.
- Check backlinks for URLs that other sites link to.
- Save titles, meta descriptions and headings of your top pages.
Build the redirect map
A simple spreadsheet: old URL in one column, new URL in the next. Rules I follow:
- Every old URL that had traffic or links gets a 301 to the closest equivalent page — not the homepage.
- No redirect chains. Old URL goes straight to the final URL.
- Keep URLs identical wherever possible. The best redirect is no redirect.
- Pages that genuinely no longer exist can return 410 — but only if nothing points to them.
Launch day
- Remove "Discourage search engines" from Settings → Reading. (You'd be surprised.)
- Upload redirects and test a sample of them, including old URLs with trailing slashes and query strings.
- Submit the new XML sitemap in Search Console.
- Check canonical tags, robots.txt and that HTTPS is forced.
The first fortnight
Watch Search Console's Pages report and the 404 log daily. Every unexpected 404 that gets hits becomes a new redirect.
The normal dip vs the bad one
A small dip of 5–15% for one to three weeks is normal while Google re-crawls and re-evaluates. It recovers on its own.
A steep drop that keeps falling after two weeks usually means missing redirects, noindex left on, changed content on key pages, or blocked resources. That needs investigating straight away.
Migrations don't lose rankings. Missing redirects do.