How to Move a Domain Between BlueHost Accounts

Save yourself the trouble and don’t bother asking BlueHost support when you run into a problem trying to assign a domain from one BlueHost account to another. They misinformed us about more than a few aspects and the notices displayed on the page when the assignment encounters a problem is not very intuitive.

First things first: If you are using BlueHost for email and have your email program configured for IMAP, you have a bit of work ahead of you.

The “Unassign Domain” tools will warn about removing email forwarders, but gave no indication about anything else, so we asked BlueHost support. They told us only forwarders were removed when unassigning a domain.

We are not very trusting when it comes to overseas support, so we added a test email account to a basic domain we were moving just to be sure. The support rep was wrong. Unassigning the domain from cPanel removes everything email related except the physical storage folders (useless without the email account), not just the forwarders.

Note: I chose to recreate all existing users’ email accounts in their Outlook as POP3 to lower the potential of lost correspondence during the transition. If you just need a backup of your IMAP email data, feel free skip the final “Add POP3 Email Account” step.

This part of the walk-through assumes you use Microsoft Outlook 2013 or Outlook 2016 for checking your email (similar process for older versions)…

Back up your IMAP email to an Outlook Data File…

  1. Open Outlook and click the “File” tab.
  2. Click “Open & Export” then “Import / Export”
  3. Choose “Export to a file” and click “Next”
  4. Choose “Outlook Data File (.pst)” and click “Next”
  5. Select the top-most folder of the desired IMAP email account, make sure “Include subfolders” is checked and click “Next”
    • This will not back up the flagged status of email messages. I was unable to figure out how to preserve flags.
  6. Choose where to save your backup PST file and click “Next”
    • If you use the folder provided in the field by default, it will be easier to locate your backups.
    • Suggested naming convention is “email@yourdomain.com-backup.pst”
  7. If you do not want to password-protect the data file, click “OK”

Note: The reason we made a backup is because all messages downloaded via POP3 arrive as Unread even if they show otherwise via webmail. The backup file is primarily for a cross-reference.

Open the new Outlook Data File…

  1. Click the “File” tab.
  2. Click “Open & Export” then “Open Outlook Data File”
  3. Select the file you exported (in step 6 above) and click “OK”
  4. If you want to rename the folder to something other than “Outlook Data File”…
    1. Some people have more than one labeled “Outlook Data File” when Outlook is configured with multiple email accounts. Expand the folder and review the “Inbox” folder to ensure it’s the expected file.
    2. Right-click “Outlook Data File” in your folder list and click “Data File Properties…”
    3. Click “Advanced…”
    4. Change “Name:” to indicate from which email account it belonged and click “OK” then “OK” again.

If you created folders within the IMAP email account…

  1. Browse to the folder(s) you want to copy in the IMAP folders.
  2. Right-click the folder and choose “Copy Folder”
  3. Select the destination folder in the backup file.
    • Repeats steps 2 and 3 for each folder you want to preserve.

Remove the old IMAP account…

Once you are sure all folders have been copied to the new backup data file, right-click the IMAP account folder and choose “Remove ’email@yourdomain.com'”

Note: If “Remove” is not available (eg: default email account)…

  1. Click the “File” tab.
  2. Click “Account Settings” then “Account Settings…”
  3. Click the IMAP account you want to remove (assuming you finished the back-up) and click “Remove” then “Yes”
    • If you have multiple email accounts, I suggest first choosing another account and clicking “Set as Default”

Add POP3 Email Account…

  1. Click the “File” tab.
  2. Click “Add Account”
  3. Enter your email address.
  4. Click “Advanced Options”
  5. Check “Let me set up my account manually”
  6. Click “Connect”

Important: Set up the email account as POP3, not IMAP.

At this point I will assume you know where to find your email configuration settings through cPanel or the webmail dashboard.

Time to move the domain…

  1. Compress all files within the domain’s folder using the cPanel File Manager.
    • Click the main folder of the domain in the folder list
    • Click “Select All” on the right, then “Compress”
      • This assumes your site files are not excessive in size. If you have a lot of images or video, I suggest grabbing a copy of the site via FTP.
    • Download the ZIP file to your local machine.
  2. Back up your database(s) using phpMyAdmin and save the SQL files to your local machine.
  3. Make note of all email accounts and forwarders.
    • Not automatically restored! You have to recreate them.
  4. In the the origin cPanel account…
    1. Click “Domains”
    2. Choose the desired domain an click “Un-assign”
    3. Click “unassign” on the following page.
  5. In the destination cPanel account…
    1. Click “Domains”
    2. Click “Assign a domain to your cPanel account”
    3. Click “Use a domain that is not already associated with your account. “
    4. Enter the origin cPanel account password to verify ownership.
    5. Choose “Addon Domain”
    6. Choose “Create a new directory. ”
      • The default directory name is usually fine, but feel free to change it to suit your preference.

Restore site files and database tables…

  1. Upload the ZIP file to the folder you created for the domain using the File Manager, select it and click “Expand”
  2. Create the new databases using the MySQL Wizard in cPanel
  3. Restore the tables for each database from the SQL backups.
    • You will need to update configuration files for any installed software (eg: wordpress, shopping carts, some other CMS). The chance of databases and usernames remaining the same between cPanel accounts is highly unlikely.

Finally, recreate all the email accounts and forwarders (ugh) and you’re done.


My 2¢: There should be a better way to migrate sites internally with BlueHost, but their support reps seemed clueless when we explained what was our goal. That said, it’s a total pain, but do it yourself. At least you’ll know if something goes wrong instead of waiting to see how long BlueHost “scratches their heads” trying to figure out the issue.

If you’re not with a hosting provider capable of providing managed services, don’t expect a lot of technical help from their support department.

PS: I wrote this (long) post while moving multiple sites. If parts of it do not make sense, let me know and I’ll be happy to revise the guide.

11 thoughts on “How to Move a Domain Between BlueHost Accounts

  1. Jen_admin

    Thank you for the tutorial. May I ask your reasons for moving from one Bluehost account to another?

    Reply
    1. admin Post author

      This was from a move BETWEEN BlueHost accounts, not to a different host.

      Regardless, I’m not a fan of shared hosting at all. If you can afford dedicated, do it.

      Note: The only reason I use GoDaddy for some internal sites (this blog included) is to ensure that my code will run in highly-restrictive environments. Basically, if it will run on their garbage, it will run damn-near anywhere

      Reply
    2. Chivon

      I’m here because I need to this. We upgraded to WordPress hosting with BlueHost, but have decided to stick with Weebly. BlueHost won’t let us downgrade. We have to open a new account instead to stop paying the unnecessary hosting package…

      Reply
      1. admin Post author

        Whoever manages your account can just download the site via FTP (or cPanel) and backup the database. Then migrate that all over to the Weebly account.

        Reply
  2. Jon

    Thank you for the great info!
    The hosting renewal price on Bluehost is insanely expensive.

    Would it be possible to buy their hosting plan under a new account and migrate my website to the new account without losing traffic and page ranking?

    Any suggestions would be appreciated!

    Reply
    1. admin Post author

      As long as the new site is up and running before repointing the DNS, you should encounter zero downtime or negative SEO effects.

      You can move sites between BH accounts or migrate to another host entirely. Though I’d lean toward the latter. Support at BH has been declining for a while now IMO. We don’t use them, but have to support customers that won’t move to another host.

      Note: I’m not sure how BH’s DNS system handles moving domains between accounts. That may require a support ticket to repoint the existing DNS to the new account/ip address.

      Reply
  3. Leah V

    I uploaded my zip files and didn’t have to ‘expand’ or go into the mySQL – does that mean I’m good to go and done? I checked the website and I didn’t get a 404 page…

    Reply
    1. admin Post author

      Not much to go in with your comment. If you have a static site with no server-side bells and whistles, it’s fairly straight-forward. Keep in mind DNS updates take time for anyone who has visited the domain (eg: person working on the site). So you need to make sure you’re viewing the new host instead of the old one. Usually easy enough to check by pinging your domain from the local computer. If you get the new host’s IP, you’re done. If you still get the old IP, make sure you updated the domain’s nameservers, and if you did, wait a hour or so before checking again. ISP cache DNS queries 😉

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *