Migrating a WordPress site to a new hosting provider can seem intimidating. Many website owners worry about losing data, breaking their site, or hurting SEO rankings during the transfer.
The good news? With proper preparation and the right method, you can move your WordPress website safely, quickly, and with minimal downtime.
In this guide, we’ll cover manual migration, plugin-based migration, and using hosting migration services, so you can choose the method that works best for you.
Why Move Your WordPress Site to a New Host?
Common reasons for moving a WordPress site include:
- Poor site performance or speed on your current host.
- Frequent downtime, affecting user experience and search rankings.
- Better hosting features (staging, automated backups, security).
- Scalability to handle increased traffic or eCommerce operations.
- Cost savings from a more affordable or value-packed hosting plan.
Preparations Before Migrating
Before starting, make sure you have:
- Access to both hosting accounts – old host and new host.
- FTP or file manager access to download and upload files.
- Database access via phpMyAdmin or a similar tool.
- Backup your site – files and database.
- Temporary maintenance mode enabled to avoid data loss during migration.
Method 1: Manual WordPress Migration
Manual migration gives you complete control, but it requires some technical steps.
Step 1: Back Up Your WordPress Website
You can use a plugin like UpdraftPlus or BackupBuddy, or manually:
- Download all WordPress files via FTP or cPanel File Manager.
- Export your database using phpMyAdmin.
Step 2: Export Your WordPress Database
- Log in to phpMyAdmin on your old host.
- Select your WordPress database.
- Click Export → Quick → SQL format.
- Save the
.sql
file to your computer.
Step 3: Upload WordPress Files to the New Host
- Connect to your new hosting account via FTP or cPanel File Manager.
- Upload all WordPress files (themes, plugins, uploads) to the new server’s root directory (usually
public_html
).
Step 4: Create a New Database on the New Host
- In 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 from your backup.
Step 6: Update wp-config.php
Update the wp-config.php
file in the root directory with the new database credentials:
define('DB_NAME', 'new_database_name');
define('DB_USER', 'new_database_user');
define('DB_PASSWORD', 'new_database_password');
define('DB_HOST', 'localhost');
Save the file and re-upload it to your new server.
Step 7: Update DNS Settings
Finally, point your domain to the new host:
- Log in to your domain registrar.
- Update the nameservers to those provided by your new host.
- Allow up to 24–48 hours for DNS propagation.
Once DNS is updated, your WordPress site will run from the new host.
Method 2: Use a WordPress Migration Plugin
If you want a simpler process, you can use plugins 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.php file. - Download both files.
- Upload them to the new host’s root directory.
- Open
yourdomain.com/installer.php
in a browser. - Follow the on-screen instructions to complete migration.
Pros: Easier, reduces technical errors, works for beginners.
Cons: Large sites may require premium plugin versions.
Method 3: Use a Free Migration Service from Your Hosting Provider
Many hosting providers (SiteGround, Bluehost, WP Engine) offer free migration services.
- You usually need to provide login details for your old hosting account.
- The hosting team moves all files and databases for you.
- Some providers offer temporary URLs so you can test your site before DNS changes.
Pros: Almost no technical work required.
Cons: You rely on the host’s support team and scheduling.
Post-Migration Checklist
After migration, do the following to ensure everything works perfectly:
- Test your website on a temporary URL or after DNS propagation.
- Check all pages and forms for proper functionality.
- Verify plugins and themes are working correctly.
- Set up redirects if URLs have changed to maintain SEO.
- Install SSL if not already included.
- Clear cache and test page speed.
- Set up regular backups on the new host.
Common Mistakes to Avoid
- Forgetting to back up before starting.
- Ignoring DNS propagation delays.
- Not checking plugins and themes after migration.
- Leaving your site accessible without maintenance mode during transfer.
- Overlooking email configuration if email is hosted on the same server.
Final Thoughts
Migrating a WordPress site to a new host may seem complicated, but it can be done smoothly with preparation:
- Manual migration → Full control, good for technical users.
- Plugin migration → Simplest method, beginner-friendly.
- Host-provided migration → Hassle-free, especially for large sites.
With proper backups, testing, and planning, you can transfer your WordPress site without downtime or data loss.