← Back to Logbook
April 9, 2026 by Quartermaster

How to Migrate WordPress Site: The Complete Guide (3 Methods)

how to migrate wordpress site — 8-bit pirate ship migration

If you need to know how to migrate WordPress site, here’s the short answer: you move your files and database from one host (or domain) to another, update your configuration, and fix your URLs. There are three ways to do it — use a migration plugin like Duplicator, do it manually via FTP and phpMyAdmin, or let your new host handle it for you. Each method works. The one you pick depends on your tech comfort level and how much control you want to keep. This guide covers how to migrate WordPress site content using all three methods, start to finish, with zero fluff.

☠ KEY TAKEAWAYS ☠
  • Always back up before you start — no exceptions, no excuses.
  • Learning how to migrate WordPress site with a plugin like Duplicator handles 90% of the hard work.
  • Manual migration gives you full control but requires FTP, phpMyAdmin, and nerves of steel.
  • The most commonly missed step is running a search-replace on your URLs in the database.
  • DNS propagation takes up to 48 hours — test with your hosts file before going live.
  • After migration, flush permalinks, test SSL, and remove migration plugins immediately.
  • Most migrations take 1–3 hours when you know what you’re doing.

What Does It Mean to Migrate WordPress Site?

how to migrate wordpress site — hero

To migrate WordPress site means to move your entire installation — files, database, themes, plugins, media — from one server or domain to another. It’s not the same as a backup (which is just a copy you store somewhere) and it’s not the same as cloning (which creates a duplicate, usually for staging). Migration is the permanent move. You’re pulling up stakes and replanting.

You might need to know how to migrate WordPress site when you’re switching hosting providers, moving from a subdomain to a root domain, changing your domain name entirely, or setting up a staging environment that becomes the live site. All of these are legitimate migration scenarios. Understanding how to migrate WordPress site data properly means following the same core process regardless of which scenario applies.

The most important thing to understand: WordPress stores content in a MySQL database AND as files on the server. You need both. Forget one and your site breaks. This is the mistake beginners make when learning how to migrate WordPress site files — and this guide makes sure you don’t.

Migration vs Backup vs Clone: Quick Distinction

  • Backup — A snapshot saved for disaster recovery. You’re not going anywhere with it immediately.
  • Clone — An identical copy, usually on the same server. Often used for setting up a WordPress staging site.
  • Migration — A full relocation to a different server, host, or domain. This is what we’re doing today.

Before You Migrate WordPress Site: The Pre-Flight Checklist

how to migrate wordpress site — checklist

Rushing into a migration without prep is how you lose data, break sites, and ruin weekends. Before you start learning how to migrate WordPress site content in practice, run through this checklist. It takes 20 minutes and saves hours of pain on any how to migrate WordPress site project.

Pre-Migration Checklist

  • Full site backup — files and database, downloaded locally. Non-negotiable for any how to migrate WordPress site project. Learn how to update WordPress safely to see why backups come first every time.
  • Record your current host’s credentials — FTP/SFTP login, database name, database user, database password, host name.
  • Note your PHP version — make sure the new host matches or exceeds it.
  • Update WordPress core, themes, and plugins on the current site before migrating. Never migrate a mess.
  • Set up your new hosting account and create a blank database on the new host.
  • Confirm your new host’s nameservers or IP address — you’ll need these for DNS later.
  • Disable caching plugins on the current site before exporting.
☠ PIRATE TIP

Write your old database credentials down on actual paper before you start. When you’re elbow-deep in phpMyAdmin at midnight and your browser crashes, you’ll thank yourself. Digital notes get lost. Paper doesn’t disappear from your screen.

how to migrate wordpress site — plugin

For most people asking how to migrate WordPress site to a new host, using a migration plugin is the right move. Duplicator has 1,500,000+ active installations and handles the packaging, transfer, and URL replacement in one workflow. It’s free for standard migrations and it works — and it’s the answer most people need when researching how to migrate WordPress site.

Step-by-Step: Migrate With Duplicator

Step 1: Install and activate Duplicator on your current (source) site. Go to Duplicator → Packages → Create New. Name your package and run the setup wizard.

Step 2: Duplicator scans your site and flags any issues (large files, oversized database). Fix warnings if you can. Then hit Build. It creates two files: a ZIP archive and an installer.php file.

Step 3: Download both files. Upload them to the root directory of your new host via FTP (use FileZilla if you need a free FTP client). The root is usually public_html or www.

Step 4: In your new host’s cPanel, create a blank MySQL database, a database user, and assign that user full privileges. Write these credentials down.

Step 5: Visit yournewdomain.com/installer.php in your browser. Duplicator’s installer wizard walks you through connecting to the new database, extracting files, and running the URL search-replace. This is the step that fixes all the old domain references in the database — don’t skip it.

Step 6: Log in to your new WordPress dashboard, go to Settings → Permalinks, and click Save Changes (even without changing anything). This regenerates the .htaccess file.

Step 7: Delete the installer files from the server immediately. Leaving them there is a massive security hole.

“The URL search-replace step is the most commonly missed part of any WordPress migration — and it’s also the one that breaks everything when skipped.”

— AI Or Die Now

The Duplicator method handles the wp-config.php update automatically, but if you ever need to tweak it manually, our guide on what is wp-config.php and how to edit it has you covered.

How to Manually Migrate a WordPress Site to a New Host — Hostinger Academy

Method 2: How to Migrate WordPress Site Manually via FTP and phpMyAdmin

how to migrate wordpress site — manual

Manual migration is the hands-on answer to how to migrate WordPress site when plugins aren’t an option. It’s also your only option when plugin-based migration fails due to server limits, timeout issues, or a host that blocks external connections. This is the method the WordPress core team documents at developer.wordpress.org/advanced-administration/upgrade/migrating/.

Part A: Export Your Files

Connect to your current host via FTP. Download your entire WordPress directory — typically public_html — to your local machine. This includes wp-content (your themes, plugins, uploads), wp-config.php, and everything else. Large sites can take time. Be patient.

Part B: Export Your Database

Log in to phpMyAdmin on your current host. Select your WordPress database. Click the Export tab. Choose “Quick” method and format: SQL. Hit Go. Save the .sql file locally. That file is your entire site’s content, settings, and user data.

Understanding WordPress database structure helps you know what you’re exporting and why every table matters.

Part C: Upload to New Host

Create a blank database on the new host (via cPanel → MySQL Databases). Connect to the new host via FTP. Upload all your WordPress files to the root directory. Then open phpMyAdmin on the new host, select your new blank database, click Import, and upload your .sql file.

Part D: Update wp-config.php

Open wp-config.php in a text editor. Update the four database constants: DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST to match your new host’s credentials. Save and re-upload the file via FTP.

Part E: Run the URL Search-Replace

This is the step that makes or breaks the migration. In phpMyAdmin on the new host, use the SQL tab to run a search-replace query — or better, use the WP-CLI command: wp search-replace 'http://olddomain.com' 'http://newdomain.com' --all-tables. Every URL reference in the database gets updated. Every single one.

📊 STAT BLOCK
  • 43% of the entire internet runs on WordPress
  • 1,500,000+ active installs of Duplicator on WordPress.org
  • 1–3 hours is the average time to migrate WordPress site when prepared
  • #1 missed step: URL search-replace in the database
  • 24–48 hours for full DNS propagation after changing nameservers

Method 3: Host-Assisted Migration

how to migrate wordpress site — host

Many managed WordPress hosts — Kinsta, WP Engine, SiteGround, Cloudways — offer free or paid migration services. You hand them your credentials, they move your site. It’s the hands-off approach to how to migrate WordPress site and it works well for non-technical users who just want the job done.

The downside: you’re trusting them with your credentials, you have less visibility into what’s happening, and if something goes wrong, you’re dependent on their support timeline. For mission-critical sites, know the manual process even if you use a service.

Also worth noting: some budget hosts claim they offer free migration but then upsell you during the process. Read the fine print before handing over access.

☠ READY TO ESCAPE YOUR CURRENT HOST? ☠

Stop renting your website. Own your stack. AODN shows you how to migrate WordPress site, lock down your config, and stop paying SaaS pirates for features you don’t need.

☠ Chart Your Own Course at AODN

How to Update Your Domain DNS After You Migrate WordPress Site

how to migrate wordpress site — dns

Your files and database are on the new host. Now you need the internet to point to them. This DNS step is critical to successfully completing how to migrate WordPress site. This is the DNS update step. It’s not complicated — but the timing catches people off guard.

Nameservers vs A Records

Nameservers delegate DNS control entirely to your new host (e.g., ns1.newhost.com). This is the most common approach when you’re switching hosts. A records point your domain directly to an IP address — useful if you’re keeping DNS at your registrar but pointing to a new server. Either works. Nameservers are simpler for full host changes.

Testing Before Propagation

DNS propagation takes 24–48 hours globally. But you don’t have to wait blindly. Edit your local computer’s hosts file to point your domain to the new server’s IP address. This lets you verify the site works on the new host before anyone else can see the change. It’s a must-do step for professional migrations.

On Windows, the hosts file lives at C:\Windows\System32\drivers\etc\hosts. On Mac/Linux, it’s /etc/hosts. Add a line like: 123.456.789.00 yourdomain.com and test in your browser. Remove the line after DNS propagates.

Post-Migration Checklist: What to Check After You Migrate WordPress Site

how to migrate wordpress site — postcheck

You’ve moved. Now verify. Don’t assume it worked — confirm it. Knowing how to migrate WordPress site is only half the battle. This checklist covers the things that quietly break during migration and only show up when real visitors hit them.

  • Flush permalinks — Settings → Permalinks → Save Changes
  • Test all key pages — homepage, contact, product/service pages, blog posts
  • Check SSL — make sure HTTPS works and there are no mixed content warnings
  • Test contact forms and checkouts — these often break due to plugin config tied to domain
  • Verify image loading — check wp-content/uploads transferred correctly
  • Set up 301 redirects if you changed domain names — protect your SEO
  • Delete migration plugin and installer files immediately
  • Submit updated sitemap to Google Search Console
  • Check email delivery — SMTP settings may need updating for new host
☠ PIRATE TIP

Run your migrated site through WordPress debugging tools after migration. Errors that were dormant on the old host sometimes surface on a new server config. Catch them before your users do — it’s the final step in how to migrate WordPress site properly.

Common Problems When You Migrate WordPress Site (And How to Fix Them)

how to migrate wordpress site — problems

Something going sideways after you migrate WordPress site content is normal. Here are the five most common problems and their direct fixes.

White Screen of Death (WSOD)

Cause: PHP error, memory limit, or incompatible plugin on the new server. Fix: Enable WP_DEBUG in wp-config.php (set WP_DEBUG to true) to see the actual error. Deactivate all plugins via FTP by renaming the plugins folder. Reactivate one by one to find the culprit.

Error Establishing a Database Connection

Cause: Wrong database credentials in wp-config.php. Fix: Double-check DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST. On many shared hosts, DB_HOST is localhost — but not always. Check with your host if unsure.

Broken Images

Cause: Upload files didn’t transfer, or URLs still reference the old domain. Fix: Verify wp-content/uploads folder is present on the new host. Then run the URL search-replace again to catch any remaining old domain references in the database.

Mixed Content Warnings (HTTPS/HTTP)

Cause: Some content still loads from http:// URLs. Fix: Install Really Simple SSL or run another search-replace specifically for http://yourdomain.comhttps://yourdomain.com. Also check your WordPress Address and Site Address in Settings → General.

404 Errors on All Pages Except Homepage

Cause: Permalinks not flushed, or .htaccess file missing/corrupted. Fix: Go to Settings → Permalinks and click Save Changes. If that doesn’t work, manually recreate the .htaccess file with the default WordPress rewrite rules from the Codex.

Frequently Asked Questions: How to Migrate WordPress Site

How long does it take to migrate WordPress site?

Knowing how to migrate WordPress site efficiently means 1–3 hours from start to finish when you’re prepared. Large sites with gigabytes of media can take longer. The actual file and database transfer is often the bottleneck, not the configuration steps.

Can I migrate WordPress site for free?

Yes. Duplicator’s free version is the most popular free answer for how to migrate WordPress site. The manual method via FTP and phpMyAdmin costs nothing. The only time you’d pay is for premium migration plugins with larger archive support, or a host’s paid migration service.

Do I need to keep my old hosting account active during migration?

Yes — keep the old account active until DNS propagation is complete and you’ve confirmed the new site works perfectly. Don’t cancel early. DNS can take 48 hours, and you want the old site as a fallback during that window.

Will migrating a WordPress site affect my SEO?

If you’re keeping the same domain, SEO impact is minimal — expect a brief fluctuation as Google re-crawls. If you’re changing domains, set up proper 301 redirects from old URLs to new ones and update your sitemap in Search Console. Skipping redirects is how you tank rankings after learning how to migrate WordPress site.

What’s the safest way to migrate WordPress site without downtime?

Set up the full site on the new host first, test it thoroughly using your hosts file, then flip DNS when everything checks out. Your old site stays live during propagation. This is the zero-downtime approach for how to migrate WordPress site and it’s the professional standard.

☠ PIRATE VERDICT ☠

migrating a WordPress site is not black magic. It’s files, a database, and some config changes. Duplicator handles it for most people. Manual migration teaches you how everything actually works. Either way, when you learn how to migrate WordPress site, the process is the same: back up, move files, move database, update config, fix URLs, update DNS, verify, clean up.

The SaaS hosting industry wants you scared of migration so you stay locked into their overpriced plans forever. Don’t buy it. Once you know how to migrate WordPress site yourself, no host has leverage over you. That’s ownership. That’s what AODN is about.

★ AODN Verdict: Do it yourself. Own your stack. Fear nothing. ★

Conclusion: You Now Know How to Migrate WordPress Site

You’ve got three methods, a pre-flight checklist, a post-migration checklist, and fixes for the most common problems. Knowing how to migrate WordPress site is one of the most liberating skills you can have as a site owner. It means no host can hold you hostage. It means you can move when you want, to where you want, on your terms.

Now that you know how to migrate WordPress site with all three approaches, use Duplicator if you want speed. Go manual if you want mastery. Use host-assisted migration if you just want it done. But do it yourself at least once — understanding how to migrate WordPress site end-to-end changes how you think about your online presence and your hosting relationship permanently.

Ready to go deeper? Explore how to set up a WordPress staging site so you can test migrations (and everything else) safely before they go live. And if anything breaks post-migration, our WordPress debugging guide will help you track down the problem fast.

Have you successfully migrated a WordPress site using one of these methods? Hit a problem we didn’t cover? Drop it in the comments below — the AODN crew reads every one.

← WordPress Custom Fields Meta Boxes: The Complete Guide to Postmeta Elementor vs Gutenberg: Why Page Builders Are a Trap You Need to Escape →
The Quartermaster
> THE QUARTERMASTER
Identify yourself, pirate. What brings ye to the command deck?