WordPress Domain Migration Without Losing SEO - Step by Step
You're rebranding. Your old domain no longer fits your business.
You need a new domain.
You decide to migrate your WordPress site over the weekend.
But if you move incorrectly, something terrible happens:
Google doesn't know where your site went. Your old URLs disappear from search results. Your traffic drops 80% overnight. Your SEO rankings vanish.
A client of ours did exactly this. They migrated from example.com to newbrand.com on a Friday. No redirects set up. No Search Console verification. No communication to Google about the move.
Monday morning, their organic traffic was gone. Their homepage dropped from rank 3 to rank 47. It took 6 months of cleanup work to recover.
Domain migrations are risky for SEO. But if you follow the right process, you don't lose anything. You actually transfer all your authority, rankings, and backlinks to the new domain.
The difference between success and disaster is understanding how Google sees domain changes and handling them methodically.
Why Domain Migrations Cause SEO Loss
Google treats each domain as a separate entity.
All your rankings, authority, backlinks, and link juice are tied to oldsite.com. When you move to newsite.com without telling Google, it looks like two different sites. Google doesn't automatically know they're the same business.
- Crawl budget resets: Google has to re-crawl everything from scratch
- Backlinks don't transfer: Links pointing to oldsite.com don't automatically point to newsite.com
- Rankings reset: New domain has no history, no authority
- Indexing confusion: Both domains might show in results temporarily
- Old domain still ranks: The old site might outrank the new one
But if you do it right, all of this is reversible.
Step 1: Prepare Your New Domain (Before Migration)
Set up the new domain correctly from the start. Don't migrate, then fix.
Point the domain to your server
- Buy your new domain
- Go to your domain registrar (GoDaddy, Namecheap, etc.)
- Update DNS to point to your hosting server
- This usually takes 24-48 hours to propagate
Create an SSL certificate for the new domain
- If you're already on HTTPS (you should be), get an SSL cert for the new domain
- Most hosting provides free Let's Encrypt SSL
- Go to your hosting control panel
- Install SSL for the new domain
Install WordPress on the new domain
- Use your hosting's one-click installer (WordPress, Softaculous, etc.)
- Or manually install WordPress
- Or set up the domain as a subdirectory/addon domain pointing to existing WordPress
At this point, you have two separate WordPress installations (or two sites on same installation).
Step 2: Migrate Content to New Domain
Move all your WordPress content from old domain to new domain.
Option A: Full site migration (recommended)
- Install a migration plugin (Duplicator, All-in-One WP Migration, Migrate Guru)
- Export your entire old site
- Import it into the new domain
- Update the site URL in Settings > General to the new domain
- Test everything on the new domain
Option B: Manual migration
- Export content from old site: Tools > Export > All Content
- Import to new site: Tools > Import > WordPress
- Download old theme and plugins, install on new site
- Manually upload media or use migration plugin for media
- Test thoroughly
After migration, verify everything works
- All pages load without 404 errors
- All images display correctly
- Menu navigation works
- Forms submit
- Plugins function
- Homepage looks identical
Test on actual devices and browsers. Not just your computer.
Step 3: Set Up Comprehensive Redirects (Critical for SEO)
This is the most important step. Redirects tell Google "this content moved, credit the new URL."
Understanding redirect types
| Redirect Type | HTTP Code | Meaning | SEO Impact |
|---|---|---|---|
| Permanent (301) | 301 | Page moved permanently | Transfers all authority and rankings |
| Temporary (302) | 302 | Page moved temporarily | Doesn't transfer authority |
| Meta Refresh | 200 (refresh tag) | JavaScript/meta redirect | Poor SEO, avoid |
For domain migration, ALWAYS use 301 redirects.
Set up site-wide domain redirect
The best approach: redirect the entire old domain to the new domain. Add this to .htaccess on your old domain:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^oldsite\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.oldsite\.com$
RewriteRule (.*)$ https://newsite.com/$1 [R=301,L]
Replace oldsite.com and newsite.com with your actual domains.
This 301 redirects every URL from oldsite.com to the equivalent URL on newsite.com:
- oldsite.com/about ā newsite.com/about
- oldsite.com/blog/post-title ā newsite.com/blog/post-title
- oldsite.com/contact ā newsite.com/contact
If you can't edit .htaccess
Use WordPress redirection plugin instead.
- Install "Redirection" plugin on old WordPress site
- Go to Redirection > Redirects
- Create redirect: Source URL: .* (regex) ā Target URL: newsite.com/$1
- Set redirect type to 301 Permanent
- Enable regex matching
- This works identically to .htaccess
Keep old domain active during transition
Don't cancel the old domain immediately. Keep it active for at least 6 months.
Google needs time to crawl all the redirects and understand the migration. If you delete the domain after 2 weeks, some redirects won't be followed.
Step 4: Verify New Domain in Google Search Console
Tell Google directly about your domain change. This speeds up the migration.
Add new domain as a property in Search Console
- Go to Google Search Console (search.google.com/search-console/)
- Click "Add Property"
- Enter your new domain (newsite.com)
- Verify ownership (via DNS, HTML file, or tag)
- Wait for Google to confirm
Verify the new domain thoroughly
- Submit XML sitemap: Settings > Sitemaps
- Check for crawl errors: Coverage report
- Check mobile usability
- Check for manual actions or penalties
Use Change of Address tool (if old domain is in Search Console)
- Go to the OLD domain's Search Console property
- Go to Settings > Settings > Change of Address
- Enter the new domain
- This tells Google the official migration
- Google will crawl new domain more aggressively
Important: Change of Address tool only works if you own both domains in Search Console.
Step 5: Update All Internal Links (Gradual or Complete)
While 301 redirects handle external links, update internal links for cleaner indexing.
Option A: Update all internal links before migration
- Install "Better Find and Replace" plugin (or use SQL)
- Find and Replace: http://oldsite.com ā http://newsite.com
- Also replace www and https variations
- This updates all internal links in content, menus, widgets
- Verify links still work
Option B: Let redirects handle it during migration
- Keep internal links pointing to oldsite.com temporarily
- They'll 301 redirect to newsite.com
- After 3-6 months, run Find and Replace
- This is slower but less risky
I recommend Option A. Cleaner links mean Google crawls more efficiently.
After Find and Replace, verify
- Check that all links are updated
- No broken links
- Navigation still works
- Admin area still functions
Step 6: Update External Assets and Integrations
Update anything outside WordPress that references your old domain.
Update DNS records
- Point primary domain to new server (if using new server)
- Update MX records if running email on same server
- Update any CNAME records
Update analytics
- Google Analytics: Create new property for new domain
- Add tracking code to new site
- Add 301 redirect mapping in Analytics settings
- Keep old Analytics property to see pre-migration traffic
Update email configurations
- Update "From" email addresses if using domain email
- Update DKIM, SPF, DMARC records if needed
- Test emails send correctly from new domain
Update integrations
- Contact forms: Update "from" email addresses
- Third-party APIs: Update domain in API settings
- Payment processors: Update return URLs and webhooks
- Email marketing: Update domain in email templates
- CDN: Update domain if using CDN
Update backlinks (reach out to referring sites)
Email sites linking to you and ask them to update links.
- Use Ahrefs or SEMrush to see top backlinks
- Email referring site owners
- Ask them to update links to point to newsite.com
- Provide redirect info in case they forget
Example email:
"Hi [Name], We noticed you linked to our old site at oldsite.com. We've migrated to newsite.com. Could you update the link to point to the new domain? Old links still redirect, but we'd appreciate the update. Thanks!"
Step 7: Test Everything Before Going Live
Don't do this on a Friday afternoon. Test thoroughly on a staging site first.
Pre-migration testing checklist
- ā All pages load on new domain
- ā All images display
- ā Forms submit and work
- ā Plugins function correctly
- ā SSL certificate is valid (no warnings)
- ā Mobile site looks correct
- ā Navigation works
- ā Search functionality works
- ā Comments/user interactions work
- ā Analytics code is installed
- ā 301 redirects are working (test old URLs)
- ā Sitemap is generated and valid
- ā Robots.txt is correct
Run these tests from multiple devices: Mobile, tablet, desktop.
Test from different browsers: Chrome, Firefox, Safari.
Run a final crawl
- Use Screaming Frog or similar crawl tool
- Crawl your new domain completely
- Check for:
- Broken links (404 errors)
- Redirect chains (should be direct)
- Missing H1 tags
- Duplicate content
- Meta tag issues
- Fix any issues before going live
Step 8: Execute the Migration (Go Live)
Schedule this during low-traffic hours. Morning on a weekday is ideal.
Final pre-go-live tasks
- Backup both old and new databases
- Backup .htaccess files
- Document current site performance (traffic, rankings, metrics)
- Notify team of migration window
The actual migration
- Ensure 301 redirects are in place on old domain
- Update DNS to point old domain to old server (if separate) or let it redirect
- Update new domain DNS if needed
- Verify new site is fully accessible
- Test old domain links (should 301 to new)
- Monitor for errors for 1-2 hours
If something goes wrong
Have a rollback plan.
- Switch traffic back to old domain immediately
- Take new site offline to prevent duplicate content issues
- Fix the issues
- Try migration again in 24 hours
Step 9: Monitor and Verify Post-Migration
The migration isn't done when you go live. Monitoring continues for weeks.
Day 1-3 after migration
- Check Google Search Console for crawl errors
- Verify pages are being indexed on new domain
- Check for any manual actions or penalties
- Monitor analytics for traffic drops
- Test forms and critical features hourly
Week 1 after migration
- Monitor page load speed (speed can affect indexing)
- Check Search Console for 404 errors (broken redirects)
- Verify ranking positions for key keywords
- Check that old domain traffic is redirecting
- Monitor email deliverability
Weeks 2-6 after migration
- Submit additional sitemaps to Search Console
- Monitor for "Crawled - currently not indexed" errors
- Track keyword rankings for decline or recovery
- Verify indexing percentage is increasing
- Check backlinks are redirecting correctly
Months 1-6 after migration
- Track organic traffic recovery (should stabilize at 100% by month 2-3)
- Monitor keyword rankings (should recover by month 3-6)
- Ensure old domain continues redirecting
- Remove any temporary redirects that are no longer needed
Step 10: Clean Up Old Domain (After 6 Months)
Only after 6 months, when migration is complete, do final cleanup.
After 6 months
- Verify all traffic has migrated (check analytics)
- Confirm all rankings have transferred
- Check Search Console to ensure new domain is primary
- Verify no issues with 301 redirects
Optional: Keep old domain active longer
Many businesses keep the old domain for years just to maintain redirects. This is fine and safe.
If you want to remove old domain
- Remove 301 redirects (optional)
- Let old domain expire (don't renew it)
- In Search Console, mark old domain as "permanent" migration complete
- Monitor for any orphaned traffic to old domain
Don't remove redirects immediately. Leave them in place indefinitely if possible.
Common Migration Mistakes (That Destroy SEO)
Mistake 1: Using 302 redirects instead of 301
302 redirects don't transfer authority. Google doesn't move rankings. Your new site starts from zero.
Fix: Use only 301 redirects.
Mistake 2: No redirects at all
Users and Google can't find the old content. Traffic disappears. Rankings tank.
Fix: Always set up site-wide redirects before going live.
Mistake 3: Deleting old domain immediately
If you cancel the domain after 1 week, redirects stop working. Old links break. Google can't follow the migration.
Fix: Keep old domain for at least 6 months (ideally indefinitely).
Mistake 4: Not updating Search Console
Google doesn't know about the migration. It treats new domain as a separate site. Duplicate content penalties apply.
Fix: Verify new domain in Search Console and use Change of Address tool.
Mistake 5: Keeping old domain indexed
Both domains rank in search results. They cannibalize each other's traffic. Google gets confused.
Fix: Robots.txt on old domain should disallow crawling (if you keep it).
Mistake 6: HTTP/HTTPS mismatch
Mixing http:// and https:// URLs confuses Google and browsers. Certificate warnings appear.
Fix: Always use HTTPS on new domain. Redirect HTTP to HTTPS.
Mistake 7: Not testing before going live
You discover broken links after migration goes public. Crawl budget wasted on 404s. Indexing delays.
Fix: Test thoroughly on staging site first. Crawl new domain completely before launch.
Real-World Domain Migration Story
Scenario: A B2B software company rebranded from "TechSolutions" to "DataVault". They owned techsolutions.com (50,000 monthly organic visitors) and needed to move to datavault.com.
What they did wrong:
- Set up new domain, migrated content
- Forgot to set up redirects
- Changed DNS to point old domain somewhere else
- Launched new domain
- Didn't tell Google about the migration
- Deleted old domain after 3 weeks
What happened:
- Old domain stopped working (no redirects)
- 50,000 monthly visitors hit dead links
- Google couldn't follow the migration path
- Old rankings kept showing techsolutions.com
- But clicking old links gave 404 errors
- Organic traffic dropped 75%
- Took 8 months to recover
What they should have done:
- Set up 301 redirects on old domain first
- Migrated content to new domain
- Verified new domain in Search Console
- Used Change of Address tool
- Kept old domain active for 6+ months
- Monitored migration for 3 months
- Gradually saw traffic shift to new domain
The lesson: Redirects are everything. Without them, migration destroys SEO.
SEO-Safe Domain Migration Checklist
Migrating domains?
- ā Backup old and new sites completely
- ā Migrate all content to new domain
- ā Test new domain thoroughly (all pages, images, forms)
- ā Set up 301 redirects from old domain to new (site-wide)
- ā Get SSL certificate for new domain
- ā Update internal links (Find and Replace)
- ā Update analytics tracking code
- ā Update email integrations and forms
- ā Crawl new domain for errors (Screaming Frog)
- ā Add new domain to Google Search Console
- ā Use Change of Address tool if old domain in Search Console
- ā Submit XML sitemap to new domain
- ā Go live during low-traffic hours
- ā Monitor for errors/404s immediately
- ā Track rankings and traffic for 3 months
- ā Keep old domain active for 6+ months
- ā Keep redirects in place indefinitely
Expected SEO Recovery Timeline
After a proper migration, here's what to expect:
| Timeframe | What Happens | Expected Metrics |
|---|---|---|
| Day 1-3 | Google discovers new domain, notices redirects | New domain appears in Search Console |
| Week 1 | Google crawls and indexes new domain | Pages start appearing in search results |
| Week 2-4 | Most pages re-indexed on new domain | 70-80% of traffic recovered |
| Month 2-3 | Rankings stabilize on new domain | 90-100% of traffic back to normal |
| Month 3-6 | Consolidation phase, authority builds on new domain | Rankings may improve slightly as new domain gains age |
If you're still down after 3 months, something went wrong. Audit the migration.
When to Contact Your Hosting Provider
Contact them if:
- You need help setting up SSL certificate
- You need help updating DNS records
- You need help with .htaccess redirects
- You don't have access to modify .htaccess
- You need help migrating WordPress between domains
- Traffic dropped 50%+ after migration and you need diagnostics
What to tell them:
"I'm doing a domain migration from oldsite.com to newsite.com. I need help setting up site-wide 301 redirects via .htaccess. Can you help me create the redirect rules?"
Most hosting has done this hundreds of times and can help in 30 minutes.
The Real Talk
Domain migrations scare WordPress owners because they associate them with losing everything. Rankings vanish. Traffic disappears. It feels permanent.
But here's the truth: A domain migration is one of the most predictable SEO events. It follows a formula. Execute the formula correctly, and you lose nothing.
The difference between success and catastrophe is 301 redirects and telling Google what's happening.
Your old rankings don't disappear. They transfer. Your authority doesn't reset. It carries over. Your backlinks don't become useless. They still count through the redirect.
But only if Google can follow the breadcrumb trail from old to new.
The 10 steps I've outlined here are the breadcrumb trail. Follow them in order. Don't skip steps. Don't take shortcuts. Don't assume Google will figure it out.
Do this right and you'll have a seamless migration. You might even see a slight traffic bump as Google re-indexes your site.
Do it wrong and you're spending 6 months recovering from your own mistake.
Choose wisely. Your rankings depend on it.
