Migrating a WordPress site to a new hosting provider can feel intimidating. You might worry about losing data, breaking your site, or hurting your SEO rankings. But the good news is: with the right process, you can move your WordPress website safely and smoothly.
In this guide, we’ll walk you through how to migrate a WordPress site to a new host—step by step.
Why Migrate Your WordPress Site?
Before diving in, let’s quickly look at common reasons why website owners move to a new hosting provider:
- Slow website performance on your current host
- Frequent downtime affecting visitors and rankings
- Better features and support offered by another provider
- Scaling up to handle more traffic or eCommerce needs
- Cost savings from a more affordable hosting plan
If any of these sound familiar, it’s probably time to migrate.
3 Ways to Migrate a WordPress Site
There are different methods to move your site, depending on your comfort level:
- Manual migration (copying files and databases yourself)
- Using a WordPress migration plugin (easier for beginners)
- Free migration service (some hosting providers do it for you)
In this guide, we’ll cover both the manual method and the plugin method.
Method 1: Migrate WordPress Site Manually
This method gives you full control, but it requires some technical steps.
Step 1: Back Up Your WordPress Website
- Use a plugin like UpdraftPlus or BackupBuddy, or
- Download files directly via cPanel > File Manager or FTP
- Export your database using phpMyAdmin
👉 Always keep a copy of your backup on your computer before proceeding.
Step 2: Export the WordPress Database
- Log in to phpMyAdmin from your hosting control panel.
- Select your WordPress database.
- Click Export > Quick Method > SQL format.
- Save the file to your computer.
Step 3: Upload WordPress Files to the New Host
- Connect to your new hosting account via FTP (FileZilla) or cPanel File Manager.
- Upload your website files (themes, plugins, media, etc.) to the new server’s root directory (usually
public_html
).
Step 4: Create a New Database on Your New Host
- In your hosting cPanel, go to MySQL Databases.
- Create a new database and user.
- Assign the user to the database with full privileges.
Step 5: Import Your Database
- Open phpMyAdmin on the new host.
- Select the new database.
- Click Import and upload the
.sql
file you exported earlier.
Step 6: Update wp-config.php
- Locate the
wp-config.php
file in your WordPress root directory. - Update the following lines with your new database details:
define('DB_NAME', 'new_database_name');
define('DB_USER', 'new_username');
define('DB_PASSWORD', 'new_password');
define('DB_HOST', 'localhost');
- Save and re-upload the file.
Step 7: Update DNS Settings
Finally, point your domain to the new hosting provider:
- Log in to your domain registrar (e.g., GoDaddy, Namecheap)
- Update the nameservers to match your new hosting account
- Allow up to 24–48 hours for DNS propagation
Once this is done, your WordPress site will run from the new host. 🎉
Method 2: Migrate WordPress Site Using a Plugin
If manual migration sounds too technical, you can use a plugin like:
- All-in-One WP Migration
- Duplicator
- Migrate Guru
Example: Using Duplicator
- Install and activate Duplicator on your old site.
- Create a new package (this generates a
.zip
file of your site and an installer file). - Download both files.
- Upload them to your new host’s root directory.
- Run the installer script (e.g.,
yourdomain.com/installer.php
). - Follow the on-screen steps to finish migration.
This is easier for beginners and reduces the chance of errors.
Bonus Tips for a Smooth Migration
- ✅ Do the migration during low-traffic hours.
- ✅ Put your site in maintenance mode to avoid data loss during the transfer.
- ✅ Test your site using a temporary URL or hosts file before updating DNS.
- ✅ Set up 301 redirects if needed to maintain SEO rankings.
- ✅ Re-check plugins, forms, and eCommerce functions after migration.
Final Thoughts
Migrating a WordPress site to a new host doesn’t have to be stressful. You can:
- Do it manually for full control
- Use a plugin for simplicity
- Ask your new host to migrate it for you (many offer this service for free)
With careful preparation, backups, and testing, you can move your WordPress website safely without downtime or data loss.