Quick Guide Steps
Below are the basic steps, full detailed steps are listed further down the page.
In this guide, we will explain how you can migrate your WordPress website to a new host. There are plugins that can do a lot of the migration for you but generally the below is a fool proof way of moving to a new host without having any issues with your widgets, themes or plugins.
The first step is to back up your WordPress website and database. A lot of hosting companies provide a 1 click back up feature to back up your WordPress website. However, if they don't (or you would prefer to do this manually to make sure everything is correct), we have listed the steps below.
To back up your WordPress files you will need a FTP client. There are many FTP clients available online but in this guide we will be using FileZilla.
You can download FileZilla free from https://filezilla-project.org
To use FileZilla (or any FTP client), you will need the below details:
1. Your FTP host
2. Your FTP username
3. Your FTP password
4. Your FTP port (usually 21).
Your current host should be able to provide you with these (often you can find these yourself via your hosting control panel).
Before connecting, create a new folder on your computer where you will download the back ups to. In this guide we will call this folder 'old host' and create it on our desktop for easy access.
Open up FileZilla and enter your FTP details in the box at the top then click 'connect'.
Once connected, double click your WordPress site's public folder. This will likely be called public_html or htdocs (ask your current host if you are not sure).
You should now see a list of files.
You can tell if you are in the right location as you should see folders called 'wp-admin', 'wp-content' (plus others) and files such as 'wp-config.php and wp-cron.php'.
In the left hand panel, locate and open the folder where you wish to download the back up of your WordPress website to (old host).
Next, on the right hand pane, select all the files / folders (they should turn blue when selected).
Right click on one of the files in blue and select download (alternatively, you can drag the files / folders into the left 'old host' folder).
You should now see a log appear at the top as the files are downloaded to your back up folder (old host). You should also start to see the files / folders appear in the back up folder.
Once complete, you can close FileZilla for now.
Whilst plugins exist that can do this for you, in this guide we will use PhpMyAdmin to back up the database. The reason for this is virtually every host offers PhpMyAdmin access and the back up procedure should always result in a reliable back up of your WordPress database.
Open PhpMyAdmin (this can usually be found in your hosting control panel under a database section but ask your host for help if you can not find it) and select your database from the left (sometimes it is not required to select the database as it may already be opened automatically).
You should see a list of tables now appear including (but not limited to), wp_commentmeta, wp_comments and wp-options. Click the 'Export' tab at the top.
Click the 'Go' button and save the WordPress database back up file it gives you to your computer.
The first step when restoring your website on your new host is to create a new database and import the back up you made in the last step. Usually you can create a database yourself via your hosting control panel but if not, ask your host for instructions and how to access PhpMyAdmin.
Once your database has been set up, make sure you know the following:
1. Your database host name
2. Your database username
3. Your database password
4. Your database name.
(you will need these later on in the guide).
Open up your new host's database in PhpMyAdmin and make sure it is selected in the menu on the left.
You should see a message saying "No tables found in database".
Click the 'Import' tab.
Click the 'Choose File' button and select the WordPress database back up you downloaded earlier.
Then click the 'Go' Button. Depending on the size of your WordPress database and the host you have decided to use, this may take a while to import.
Once your WordPress database has been restored, you should see the message "Import has been successfully finished".
Now that you have restored your WordPress database to your new host, you need to make some changes so when you upload your WordPress files, they are able to communicate with the new database (otherwise they will connect to your old host's database).
Using a plain text editor such as Notepad, open the file wp-config.php in your back up on your computer.
You now need to replace some text in this file with your new database details.
Locate the line:
define('DB_NAME', 'AAAAAA');
(yours will have something other than AAAAAA) and update the AAAAAA to match your database name.
Locate the line:
define('DB_USER', 'BBBBBB');
(yours will have something other than BBBBBB) and update the BBBBBB to match your database username.
Locate the line:
define('DB_PASSWORD', 'CCCCCC');
(yours will have something other than CCCCCC) and update the CCCCCC to match your database name.
Locate the line:
define('DB_HOST', 'DDDDDD');
(yours will have something other than DDDDDD) and update the DDDDDD to match your database name.
Then save the file.
You can now start the process of uploading your WordPress back up to your new host. You will need your FTP details with your new host (these can usually be found in your control panel or your host can help set FTP access up).
Open up FileZilla and enter your new host's FTP login details across the top, then click connect.
Once connected, open the public folder on the right pane (usually called public_html or htdocs).
Next, open the folder that has the back up of your website (old host).
Select all the files / folders in the 'old host' folder then right click and select 'Upload'.
You should now see the files being uploaded at the bottom.
Once the uploads have completed, make sure to check the "failed transfers" tab to make sure no files have failed to upload. Assuming they have all uploaded correctly, you have completed the restore.
The final step is to update your domain's nameservers to point to the new hosting company. This step will vary depending on the host you are using but in brief you will need to do the following:
1. Contact your new host and ask them for your hosting's nameservers.
2. Contact your registrar (the company who you renewed / purchased your domain name with) and ask them to update the nameservers to the ones your new host provided. Usually you can do this yourself via your registrar's domain control panel.
That's it, after 24 hours your domain will load up the hosting with your new host.
If this guide has helped you or if you feel it could be improved, please let us know in the comments below.
![]() |
Which hosting company do you use? I'm Philip and this little website is my online side project. I often get asked which company I use for my website projects. Most of the hosting companies out there are no longer independent but instead owned by one of the big hosting giants who generally offer poor or average services (in my opinion). Krystal.uk (the company I use) are still independent (UK based) and go against everything the big companies stand for. Fast servers, good tech support and they actually re-invest a huge chunk of their profits to keep improving their services. All Krystal customers can offer people a £20 referral discount. If you do move to Krystal, please consider using the discount code "WMG" to get £15 off your hosting order (Krystal will give me the remaining £5 for referring you). Thanks again and happy surfing. |