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.

One thought on “How to Move a Domain Between BlueHost Accounts”

Leave a Reply

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