Are you happy with your web host? If you are, then congratulations because moving web host can be a real pain. I know as I have done it several times over the years. If you have a lot of websites to move, you may even decide to put up with a sub-par host because you cannot bear the thought of the work involved. Fortunately, moving a WordPress website to a new host is no longer that difficult or time consuming, and in this article, I want to take you through the entire process using two totally free tools.
I am giving you two options, just in case the first one you try does not work. The order I present these tools is the order I recommend you try, because the first one is a lot easier and does not require you to download or upload any files.
For each method, I've recorded a video showing you every step you need to take. I've also provided a short written plan that you can refer to.
Method #1 - Migrate Guru
This is my preferred method. Try it first, and only go on to the second method if this one fails. This method uses the free WordPress plugin called Migrate Guru.
The main reasons I like this method of moving a website are:
- No files to download or upload to a web host.
- Works in nearly every case. The only times this has failed for me was when my new host was limiting my account because of heavy database/resource usage (because I was moving a lot of sites). In every failed attempt, waiting 30 minutes and trying again worked fine.
- The process is streamlined and largely automated, meaning you have to do very little.
The Process Step-By-Step
- Add the domain you are moving to your new web host.
- Create an FTP account for your new domain that logs you into the root folder where your domain will appear.
- Install WordPress in your new web host for the domain you are moving.
- Login to your dashboard on the old web host.
- Update theme, plugins and WordPress iteself.
- Install and activate Migrate Guru plugin.
- Start the migration by entering an email address which will be used to update you of the progress, check the agreement checkbox, and click on the Migrate Site button.
- You'll be presented with a list of hosts that work with the plugin, but ignore those and scroll to the bottom. Choose the FTP options, and fill in the details. When you have the options entered and correct, click the Migrate button to start the migration.
- If everything is OK, you'll get the migrate successful message once done. It can take several minutes, so be patient.
- Change the DNS at your domain registrar to point to your new web hosting account. Note that if you are using Cloudflare, I recommend you delete the site from Cloudflare and use your hosting DNS. Once it is all working OK, you can always add the site back to Cloudflare.
- If there are SSL issues, login to cPanel on your new web host and re-issue the certificates for the new domain.
Method #2 - Duplicator Plugin
This method is only provided in case the first method did not work for you.
Notes on this method:
- This method requires downloading and uploading of files from one host to another.
- This method may not work on larger websites. When you create the download package, you'll get warnings if your site is too large. It is still worth trying if you get the warning, but know it can fail on some shared hosting.
The Process Step-By-Step
- Login to the dashboard of the site you want to move.
- Make sure theme, plugins and WordPress are all up to date.
- Log in to your new hosting and add the domain you are moving.
- Go back to the dashboard of the site you are moving and install and activate the Duplicator plugin.
- Create packages for the site in the Duplicator screen.
- Download the installer.php and the archive zip file.
- Upload these two files to your new hosting, into the root folder where your site will be installed.
- Login to your domain registrar and change the DNS to point to the new web host.
- Once the DNS have propagated (you'll get a 403 error when trying to visit your site), you are ready for the next step.
- Login to your new hosting account and create a database, username and password that the site will use.
- Run the installer by adding /installer.php to the end of your domain. You'll be prompted to enter the database and user details in step 2 of the installer.
- The installer will unzip the archive and move everything to the correct location.
- If you have SSL certificate problems, log back into the cPanel on your new host and reissue the certificates for the new domain.
- When you log into the dashboard, the duplicator installation files should be automatically deleted for you. Just make sure they are.