If every web hosting company actually offered the exact service they advertised, there'd be little reason to ever transfer websites or switch providers. Sadly, once you've signed up to a hosting plan, it's all too common to find uptime drops, unanswered support tickets, and jumping monthly costs.
Many web hosts get away with subpar services because of the perception that website transfers are difficult to do. Fortunately, transfering website to new host is easy. Here's how to switch web hosts:
- Step 1: Sign up to a new hosting provider
- Step 2: Install your content management system (Optional)
- Step 3: Transfer your information
- Step 4: Transfer your domain (DNS records)
- Step 5: Wait for the DNS change before propagating
- Step 6: Transfer email accounts
- Step 7: Troubleshoot your site
Step 1: Sign Up to a New Hosting Provider
When starting to move your website, it's important to start a new web hosting contract before you cancel your old one. Having a transitional period where you are subscribed to both hosts will avoid an extended period of downtime that could mess up your visitors' experience and harm your reputation as well as SEO scores.
Because of its high-value hosting packages, my personal service of choice is Hostinger.
However, I recommend you check out this web hosting questionnaire to help you decide which host to use if you haven't picked one out already.
There are a number of things you'll want to take into account such as storage capacity, hosting type and server location.
Unless you want to change your website's address, remember not to accidentally purchase registration for a new domain when you sign up to your new host.
Note that some hosts offer a free website transfer service when you sign up. This guide focuses on manual website transfers, but I will discuss using automated transfer tools at the bottom of the page in case your new host provides one.
Step 2: Install Your Content Management System (Optional)
This step is only necessary if you use a content management system (CMS) to run your website. If you have a static or dynamic site that you created without a CMS program, you can skip ahead.
Furthermore, if your current host is an inclusive site building service such as Weebly or Squarespace then, check our guides on how to transfer from Weebly to WordPress and from Squarespace to WordPress.
However, if you use a CMS program such as WordPress to administer your website, you'll need to add the same system to your new web server. Although some servers come with WordPress or other CMS packages pre-installed, generally you will need to add one from your new host's control panel.
Log in to your new control panel and search for an icon called something like 'auto-installer scripts'. In my case, the new host provided a Softaculous installer package.
Then, find the name of your CMS package and click 'Install'.
Step 3: Transfer Your Information
Now that your new server is up and running, you can start transferring your site's files and databases. How you should go about doing this will, again, depend on the type of website you are running:
3.1. For Static Websites: Transfer Files
For static sites, you can download your content directly from the website itself (including images and .html files) and re-upload it into your new host's file management system. Check your old host's file system first, and make sure you recreate the same folder and file structure.
The file manager on both your old and new host has to look exactly the same.
You'll be able to open the file management system of your new host from its control panel.
3.2. For Dynamic Websites: Transfer Databases
For dynamic websites, and for those running through CMS programs like Drupal or Joomla (see below for WordPress), the process is a little different. If you run such a website, you will need to export your database through phpMyAdmin, which is a MySQL database management tool.
Head over to your host's control panel and open 'phpMyAdmin'.
Next, select the 'Export' tab and hit 'Go' to save the database on your computer.
Now open phpMyAdmin from the control panel of your new host. Import your database by clicking on the 'Import' tab and choosing the file you downloaded.
3.3. For WordPress websites: Transfer Your Backup
If you're looking to move a WordPress website, rather than following the above two steps, you should export a WordPress database backup from your old dashboard and import it through your new one.
On a side note, check out this guide if you want a solution tailored entirely to switching hosts for WordPress sites.
In your old website's WordPress dashboard, hit the 'Export' button in the 'Tools' section of the sidebar. Then save the backup Zip file to your computer:
Next, upload the saved file using the 'Import' section of your new server's dashboard, which you'll also find under 'Tools' in the sidebar.
Step 4: Transfer your domain (DNS records)
It's time to transfer your domain to the new host. This is done by updating your site's Domain Name Server (DNS) records.
First, find the DNS addresses for your new hosting service, which should be formatted like this:
Then, return to your old web hosting service and request that your DNS be switched to those new addresses. Some services (like GoDaddy) provide forms that you can fill out to request a transfer.
However, for most hosts, you will need to contact customer support representatives to request one. Simply send a message such as:
"Hello, I currently have _________ registered as a domain with you. I would like to request a DNS change to www.ns1.INSERTHOSTNAMEHERE.com and www.ns2.INSERTHOSTNAMEHERE.com".
And your host should respond, helping you to move website to them.
Step 5: Wait For The DNS Change to Propagate
It will take 24-48 hours for your DNS change to register globally. During that window, your site will randomly load from your new or your old host.
Here, you will simply have to wait. From personal experience, in recent years the DNS changes in around 2 hours.
Step 6: Transfer Email Accounts
The last step to switching servers is to move any email accounts associated with your site to the new host. This is often a tricky stage because email addresses are configured differently from host to host:
- If your email is stored on your old server, you'll need to open the 'Email Accounts' section of your new host's control panel and manually recreate every email address. This won't transfer your email history though. To do that you'll need to download a backup from your old host's webmail client.
- If your old host used a third-party email service such as Google or Rackspace, you should find the third party's MX addresses and update them within your DNS settings.
- Lastly, if your email was hosted with a registrar like GoDaddy, you'll need to log in to your email service and change the email hosting location to the new web host's IP address.
Step 7: Troubleshoot Your Site
Once the DNS swap has completed and your email accounts have been transferred, you've finished switching servers. Congratulations! You can now cancel your old hosting contract.
However, it's worth taking the time to check your site is fully functional. If you find something amiss and are running a WordPress site, try repairing your database.
If you transferred a different kind of site, you can try to repair any broken elements by re-uploading the files you downloaded during the transfer process.
Alternate Method: Automatic Transfer
If you read through the above steps and thought: "Oh boy! Do I really have to do all that?", the answer is, you don't as long as your new web host offers site migration services.
Hosts such as A2 Hosting, HostGator, SiteGround, and BlueHost offer help you move website with an automatic service. If you see your new host's name on that list, simply provide its customer support team with your old account details and wait for them to do everything automatically.
The process varies depending on the host and your website, but this might be a bit on an easier route.
Website Transfers: You Have Options
At the end of the day, changing web hosting depends on you and the options you choose. You might need to do a little bit of manual work if your hosting provider doesn't have a migration service. All in all, don't stay with a hosting provider that doesn't suit your needs.
And I hope that this guide has made everything just a little bit clearer.