It’s a familiar story: you’ve launched your first self-hosted WordPress site. You got the domain, set up a hosting account, installed WordPress, and set up your site. Everything looks great.
But then the honeymoon ends.
It might be that your hosting company has tripled your fees when your introductory plan ended, or that visitors have told you that your site is down a lot, or that your hosting company’s tech support appears to have joined the witness protection program, but the time has come that you decided to find a new home for your website.
So how do you do that without tearing your hair out?
Like any engineer will tell you, the answer is ”that depends”.
Generally speaking, you have six options, but your choice is going to depend on where you are taking your site, and how much help you need.
Your four options are:
- Manually move the site by making a backup and then installing the backup in its new home,
- Use the Export/Import features in WordPress to copy the content,
- Copy the database and WP-content folder, and add them to a new WordPress site
- Hire a tech to move the site, or
- Ask the new hosting company to move the site for you.
- Use the Migrate Guru plugin
The following post is a rundown of why, where, and when you might choose one option over the other. I won’t get into the specific steps involved, but I do explain the pitfalls I have encountered in my decade with WordPress.
If push comes to shove, you always have the option of manually moving a site to its new home. You would do this by making a complete backup of the site (including all its files and database) and then installing that backup in the new home.
Depending on how you go about it, you might have a relatively straightforward experience, or you might have a lot of problems.
When I last tried this I found that my database was so large that it could not be installed easily (I had to ask the hosting company’s techs for help). Another issue I encountered was downloading the backup file before uploading it. I did not have a fast internet connection then, so it took me most of the day.
Fortunately, there is a way for you to avoid the problems I encountered. The easy way to manually migrate a site from one hosting company to another is to use an online backup service like Vaultpress from Automattic. Its backup service is relatively cheap, and they are used to customers using it for exactly this purpose.
WordPress has an option where you can export a site’s content in an XML file which you can then import somewhere else. (Yes, WP has a matching import option.) If you want to move to/from WordPress and another platform (Squarespace, Blogger, etc), or if you want to move a site off WordPress.com to a self-hosted site, then this is the option you will need to use.
However, I would not recommend using it unless you absolutely have to. While this sounds like the easiest option, in reality the WP export feature doesn’t work very well.
It does not catch all of a site’s content – for example, the last time I used it, it missed the featured images attached to posts. It will also ignore all the settings, plugins, and any files that were uploaded but not inserted into a post – a site’s banner images, for example, or its background.
Do you know those neat-looking book pages and the fancy front page we all love? Those details will be lost if you use the export option.
But if you are moving your site away from WordPress, you will need to use this option, and that means you’re stuck with the limitations. So really, the best you can do is anticipate the problems.
What I do – if I can – is to use the export process but also make a backup of a site. I then download that backup and keep it on my laptop. That way if I find I need an image that didn’t transfer, I can go into the backup, copy the image, and then upload the image to the new site.
Hire an Expert
This is probably the least stressful but most expensive option. There are many WordPress experts, myself included, who can take on all the headaches and frustrations of migrating a WordPress site to its new home.
The problem with this is that it comes with a high price tag – the minimum cost start at around $200, and it could go up based on the time it takes to get the site up and running again.
Ask the New Hosting Company for Help
Of all the options, this is my favorite. There are many companies that will charge you to migrate your site to its new home, but did you know you can also get it done for free?
Yes, many hosting companies will migrate their new customers’ websites to the company’s servers. Some will charge you a fee, but many will do it for free just because they want your business. And best of all, in my experience the techs have always proven to be competent and relatively fast – they usually get the site moved and set up in 12 to 24 hours.
If you want a recommendation , I can give a positive endorsements for:
- Siteground – Free migration (but only for one site), good service in general. and reasonable monthly fees
- Reclaim Hosting – reasonable hosting costs, helpful staff, and they charge between $0 and $25 to move your site to their servers
Copy the Database and WPcontent Folder
This is one of the more technically complicated methods, so it is probably beyond the abilities of most users. I still like it because it will basically add your content to a clean and brand new WordPress site.
The first step is to set up a new WordPress site with your new hosting company. Then, download a backup copy of your site, unzip it, and find the WPcontent folder. Upload that folder to the new site, and then find the copy of the database in that backup. Use PHPMyAdmin to first delete the new site’s database, and then insert the copy of the old site’s database.
If you do it right you will have a near-perfect copy of your site in a new home. If your old site had problems such as quirky database access rules or theme and plugin conflicts, most if not all of those problems got left behind.
Note: These instructions are not complete. I am assuming that the person who chooses this option will either know how to do it, or will be able to Google for more info.
This is an automated migration tool that will transfer your site to most hosting companies. It requires very little work on your part; just install the plugin, and then provide the technical details (FTP server, username, and password) as requested.
I have only used it once, but Migrate Guru is already my new favorite tool. If you hire me I will probably use this tool first because it solves a lot of the problems.
I’ve been building, managing, and fixing WordPress sites for a decade now, and in all that time I have found that most problems have solutions that seem simple and obvious only after the fact.
If you have a problem not mentioned above, please let me know in the comments.