How to easily migrate your wordpress site from godaddy to bluehost

February 28, 2012


(Super long awesome song to go with super long semi-awesome post)

I did it. It took me over 24 hours of headache to figure it out, but I did it! My wordpress site is finally hosted on bluehost rather than godaddy.

I almost gave up multiple times – but here is the super easy way to do it. Forget whatever you read online because there are dozens of websites that tell you how to do it. I’ve read them all. It’s a headache.

I’m so happy to finally figure it out that I want to share this with you in case you ever run into this problem.

The reason I’m switching from godaddy hosting to bluehost
1. I keep hearing great things about bluehost
2. I just hate godaddy in general (they constantly call my cell phone at inconvenient times. I hate their superbowl ads. I hate how they use sex to sell their products. Plus all the godaddy girls are lame. I hate that they originally supported the sopa bill and only relented due to internet revolt. And I heard that the ceo goes elephant hunting – which sounds like something a rich douche would do).
3. My sites hosted on godaddy just run slow. I have some sites on hostgator which run much faster.

Reason I haven’t switched yet
It’s a big ass hassle to figure out how to do it. I don’t want to reinstall all of the plugins, settings and whatnot. Worst case scenario – I don’t want to redo all my posts. And I’m not tech savvy enough to figure out how to transfer and upload databases – never done it before.

Goal of this post:
To easily transfer your wordpress posts, plugins, settings and site COMPLETELY from godaddy hosting to bluehost (or any other hosting). Once this is done – your site will look and behave exactly in bluehost as it did on godaddy.

Quick summary of what we’re going to do:
1. Sign up for bluehost (aff link)
2. Do a fresh wordpress install on bluehost
3. FTP into bluehost – download the wp-config.php file to your computer.
4. Download the database for your wordpress site currently being hosted on godaddy – using a wordpress plugin
5. Download all files for your site being hosted on godaddy via ftp
6. FTP into bluehost – upload all files from step 5 into your new hosting account – overwrite everything.
7. FTP upload wp-config.php from step 3 into bluehost.
8. Log into your bluehost account (via browser) – go to phpmyadmin – empty out the new default database then import the old database from godaddy from step 4.
9. Change your domain’s dns nameservers to point to bluehost.
10. Done! Success. Amazing.

Super Easy Method: Explained in detail

1. Sign up for bluehost.com (aff link) – I did the one year option. The cost is $6.95/month for 12 months or $5.95 for 24 months (you have to pay in advance for whole term) – but if you search for bluehost promo codes – you’ll find a link that’ll get you $4.95/month for 12 months or $3.95 for 24 months.

2. Log in to your current wordpress dashboard. Install wp db backup plugin & activate.

HUGE thanks to this site for helping me figure this out – after reading dozens of other tutorials that didn’t work.

3. Click on tools > backup. I didn’t change any of the settings. Just clicked “download to your computer” > backup now.

What this does: all of the data in wordpress is essentially saved in a database. We need to transfer that database to the new hosting account so the website looks & behaves the same way.

The problem I ran into: All the other tutorials say to log in directly to godaddy hosting account > go to mysql > and export the site’s database.

Then go into bluehost and upload it. The problem is I got some type of error every time. I think this has something to do with the way godaddy is exporting the database = plain english – it’s not worth trying that method.

This plugin allows us to download the database without having to log into godaddy mysql stuff.

Another thing that doesn’t work: Some tutorials will say that you can export your wordpress site without dealing with database stuff at all. In wordpress dashboard > tools> export. This creates an xml file that supposedly can be uploaded into your new wordpress installation on bluehost – this does not work.

The problem is that while this method will import all of your posts – none of your plugins or settings will transfer over. Basically – it’s pointless & a big headache to do it this way.

4. Log into your godaddy hosting via ftp and download all the files for your site into a folder on your computer. So if your site is deepaknair.com – go into your deepaknair.com folder on godaddy ftp > then transfer all of those files onto your hard drive. Maybe name the folder on your computer “backup of deepaknair site 2.28.12” or something so that you can remember what it’s for.

5. Ok – now log into your bluehost account online to do a new wordress installation.
a. Scroll all the way down and you’ll see a section called “Software/Services” > click on wordpress. Click on the green “install” button.
b. For “Which version of wordpress to install” > I kept it the same as my original site. If you log into your wordpress dashboard of your original site > it will say which version you are using. I was using 3.2.1 – not the newest 3.3.1 – but wanted to keep all things the same. So I selected 3.2.1 in bluehost.
c. “where would you like wordpress to be installed” – I kept it the same as my original godaddy installation. So if you have wordpress installed in /blog – then keep it the same here.
d. plugins – I unchecked all the plugins – but this part is irrelevant I guess.
e. check the terms & conditions box and click complete.

6. After installation completes – log into your bluehost ftp > go into your wordpress install folder (ie: /blog) and download the wp-config.php file to your computer. Make sure you save it somewhere (like your desktop) – separate from the files you downloaded in step 4. The reason is this file has all the bluehost database connection information in it. We need it for later.

7. Now upload all the files from step 4 into your bluehost site folder. Overwrite everything. For example – let’s say your site is set up so that you have some files like .htaccess, index.php, robots.txt in your root folder and have all wordpress files installed under /blog. Then you’ll upload all of those files that are in your root folder as well as /blog folder.

8. Now go into your wordpress install folder in bluehost ftp > and upload the wp-config.php you have saved on your desktop from step 6.

9. Next step is to import the database file from step 3 into bluehost.

To do this is also pretty easy but slightly harder than the previous steps.

In your bluehost control panel – you’ll see a section called “databases” > click on phpmyadmin. The username & pw will be the same as your login for bluehost. If you don’t know your username > it’s in the email they sent you when you signed up or you can check the “stats” section on the left side of cpanel.

Once you’re logged in to phpmyadmin – you should see two things on the left side – something that ends with _wrd1 and something else with information_schema. We want the first one. Click on it.

This is the database for the new wordpress installation in bluehost. We need to replace this with the one from godaddy so that the new site will look the same as the old one.

So on this page > towards the bottom > click “check all”. Then in the drop down > select “drop”. Then press ok if it asks to confirm. This will empty out the new database.

Then click on “import” at the top > then “choose file” > select the database file you downloaded to your computer in step 3.

Leave all other settings the same. Click go.

This should be easy and work correctly on the first try.

10. Last step is to point your domain’s dns nameservers from godaddy to bluehost. I bought my domains thru godaddy as well. So I click accounts > domains > launch. Then click on my domain name (ie: deepaknair.com).

Under “nameservers” > click on “set nameservers”. Click “i have specific nameservers for my domain” > enter your new bluehost nameservers here (it’s probably included in the email you got when you signed up).

I don’t know if everyone has the same nameservers but mine was NS1.BLUEHOST.COM and NS2.BLUEHOST.COM. Yours will be the same or similar.

Click ok.

11. That’s it. Your new site should be live within 10 mins or so – though it can take 2hrs – 24hrs. Mine always updated within a few mins.

Wait a while, then try going to your site. If all went well – it should look exactly the same as it always did.

Try logging into your wordpress dashboard. The only way I knew my installation finally worked was that under plugins – I noticed “jetpack by wordpress.com” – which is a plugin that bluehost automatically installs with your wordpress installation – I never had it in my old godaddy account.

Another way you can check if your new install worked is to ftp into your godaddy account – change the name of your index.php to something random like notindex.php.

If your site is still being hosted on godaddy – your site should not work now. If it’s correctly being hosted on bluehost – then your site will look normal and means it’s not being hosted on godaddy.

Success. Awesome. I hope this method worked for you also!

Jed Davis September 10, 2012 at 10:14 am

Thx a ton! This post was my guiding light in the switch process over the weekend. I’m sure it saved me a bunch bunch bunch of time! Appreciate your thoroughness.

Deepak Nair September 10, 2012 at 3:53 pm

Perfect timing! Heard godaddy got hacked today and their site as well as sites hosted/registered by them also went down! http://www.idigitaltimes.com/articles/11188/20120910/godaddy-hacked-anonymous.htm

TP September 24, 2012 at 10:48 am

I also want to transfer my wordpress blog to bluehost from godaddy, every thing I have worked but I have a query as told by you before changing the name server to blue host how is it possible use ftp that is using same domain name. How could I transfer my old files to new bluehost server. What you have done to transfer your files before changing nameserver settings of godaddy.

Mandy July 24, 2013 at 6:33 pm

If you call or live chat with bluehost, they can give you the ftp info you need.

JANA May 13, 2013 at 11:15 am

Hi Deepak, Pls let me know as my godaddy hosting service is going to expire within 15 days and my wordpress site’s domain is is still alive. Can i do the back-ups right now as you mentioned above and do the migration later (means after current hosting expired), does it works fine

Thanks in advance
Jana

Deepak Nair May 13, 2013 at 12:35 pm

Hey Jana, yes migrating later would work. If its an important site, may want to renew godaddy for one more month in case something goes wrong with transfer to bluehost. Good luck! :)

JANA May 14, 2013 at 6:23 am

Thanks buddy, I’ll choose to migrate it as soon as possible before it expires. And one more question when i do the backup as mentioned on step 3 when i asked for download the file size shows only 360kb. Is the database size will be less like this or something went wrong. My site contains 41 post and some pictures for the contents.

Let me know if i done correctly I’ll move for next step.

jeffmurnan July 6, 2013 at 1:13 pm

This is a fantastic post, thank you Deepak! I was able to move 3 of my blogs from GoDaddy to BlueHost and these instructions were vital for me to be successful. One small thing you might want to add: we had to go into the wp-config file and change the database prefix to match the one GoDaddy used upon import (change to wp). This was a really easy thing to do via the File Manager utility.

Thanks again!

Khoa September 27, 2013 at 10:59 pm

Hi Deepak- Thanks for your post, it’s very helpful. I’m doing the exact same thing and have trouble with saving all the files in FTP to my Macbook. They keep saying error. How did you save the files to your computer? Did you just right click and download it? It didn’t work for me.

Deepak Nair September 27, 2013 at 11:43 pm

i used filezilla ftp software & didn’t have any issues (i also have a mac). i selected all, right click, download. what type of error does it say?

Khoa September 28, 2013 at 1:08 am

They say file failed to open and failed to transfer. I did a bit of searching and read that the new mac os x don’t allow you to directly write files to mac or something like that. I don’t know. I used ftp filezilla too. I also tried cyberduck and can’t download either. It’s been frustrating :(

Deepak Nair September 28, 2013 at 7:46 pm

does this help?
https://forum.filezilla-project.org/viewtopic.php?f=1&t=25412

can you check which folder you are trying to transfer to on the mac? try to transfer to the “download” folder

Prabu Krishna February 25, 2014 at 4:45 am

Thank you So much Deepak. I moved my site from godaddy to bluehost. :-)

Ali March 12, 2014 at 8:45 am

hi there. Thank you for helpful article. Don’t you need to change the table prefix in new wp-config file? its like imported db will definately have a different table prefix.

Deepak Nair March 16, 2014 at 2:53 am

I didn’t have to change this to get it to work.

Krish April 15, 2015 at 4:41 am

Hi Deepak,
Very well written article and I have already kicked off the process of migration. I had a question about the current WP install folder. How do I find it out on Godaddy? When I go to the cPAnel, it tell my home is /home/krish222 . However all my WP files are in /home/krish222/public_html .Please advise.

Thanks
Krish

Jianlin December 29, 2015 at 12:47 am

One of my friend is going to migrate his website to bluehost also. Very helpful to us to do the job.