How to Migrate Your Website From Another Host

Getting Started | Updated March 2026

Moving your website to Ultra Web Hosting doesn't have to be stressful. This guide covers every migration method, from our free migration service to doing it yourself with cPanel or WordPress plugins. We've migrated thousands of sites and the process is well-tested. Most migrations complete with zero downtime if you follow the DNS cutover steps correctly.

Plan Ahead

Migration Timing Matters

Don't cancel your old hosting before the migration is verified and DNS has propagated. You need both hosts active during the transition (usually 24-48 hours). If you cancel too early, you lose access to your files and email on the old server.

01. Our Free Migration Service

The fastest way to move. Here's what we need from you:

  1. Sign up for hosting - get your Ultra Web Hosting account active at ultrawebhosting.com
  2. Open a migration ticket - go to Submit a Ticket and select "Migration Request"
  3. Provide your old host's details - we need your old cPanel URL, username, and password (or a full cPanel backup file if you can generate one)
  4. We migrate everything - our team transfers files, databases, email accounts, and cron jobs. We'll email you when it's done
  5. You verify and update DNS - test the site on our server, then update your domain's nameservers or A record to point to Ultra

Typical turnaround is 24-48 hours for standard sites. Complex migrations (large databases, multiple domains, custom server configurations) may take a bit longer.

Tip

If your old host uses cPanel, generating a full backup before opening the ticket speeds things up considerably. In your old cPanel, go to Backup > Download a Full Account Backup, and upload the resulting file to your new account.

02. Migrate via cPanel Backup

If both your old host and Ultra use cPanel, this is the most reliable DIY method. A full cPanel backup captures everything: files, databases, email accounts, forwarders, filters, cron jobs, and DNS records.

On Your Old Host

  1. Generate a full backup - cPanel > Backup > Download a Full Account Backup. Select "Home Directory" as the destination. cPanel will email you when it's ready
  2. Download the backup - it'll be a .tar.gz file in your home directory

On Ultra Web Hosting

  1. Upload the backup - use cPanel File Manager or FTP to upload the .tar.gz to your home directory (/home/yourusername/)
  2. Contact support - open a ticket asking us to restore the cPanel backup. We need to do this at the server level. Include the filename and location
Note

Full cPanel backup restores must be done by our support team because they require root-level access. Partial restores (just home directory, or just databases) can be done from your cPanel > Backup interface.

03. WordPress-Specific Migration

WordPress sites have some additional migration options. If your site is WordPress-only and you don't need to migrate email accounts, a WordPress migration plugin is often the simplest approach.

Using All-in-One WP Migration

This is the plugin we see the most success with for sites under 500MB:

  1. Install the plugin on your old site - Plugins > Add New > search "All-in-One WP Migration"
  2. Export - go to All-in-One WP Migration > Export > Export To > File. Download the .wpress file
  3. Install WordPress on Ultra - use Softaculous to do a fresh WordPress install
  4. Install the same plugin on the new site - then go to All-in-One WP Migration > Import and upload the .wpress file
  5. Log in with your OLD credentials - the import overwrites the new site's database, so your login will be whatever it was on the old host
Warning

The free version of All-in-One WP Migration has a file size limit (varies by version, typically 512MB). For larger sites, consider using the Softaculous Clone feature, Duplicator Pro, or a manual migration.

Using Softaculous Clone

If your old host also has Softaculous, you can use the Clone feature. In Softaculous on your old host, find your WordPress installation, click Clone, and enter your Ultra Web Hosting server details. Softaculous handles the file transfer and database migration directly.

04. Manual Migration (FTP + Database)

If the automated methods don't work for your situation, you can migrate manually. This works for any type of website, not just WordPress.

Transfer Files

  1. Download your files from the old host - connect via FTP (or use cPanel File Manager) and download everything from your public_html directory
  2. Upload to Ultra - connect to your new account via FTP and upload all files to public_html

For large sites (several GB), compressing files into a zip on the old server, downloading the zip, uploading it to Ultra, and extracting via File Manager is much faster than transferring thousands of individual files over FTP.

Transfer Databases

  1. Export from old host - use phpMyAdmin on your old host. Select your database, click Export, and choose "Quick" with SQL format
  2. Create database on Ultra - in cPanel > MySQL Databases, create a new database and user
  3. Import - open phpMyAdmin on Ultra, select the new database, click Import, and upload your .sql file
  4. Update configuration files - edit your site's config file (wp-config.php for WordPress, configuration.php for Joomla, etc.) with the new database name, username, and password
Tip

If your SQL file is larger than the phpMyAdmin upload limit, you can import it via command line. Upload the .sql file to your home directory, then in cPanel > Terminal run: mysql -u dbuser -p dbname < yourfile.sql

05. The DNS Cutover

This is the most important part of the migration. Until you update DNS, your domain still points to your old host and visitors see the old site. Here's how to do it cleanly:

Test Before You Switch

Before touching DNS, verify the site works on our server. You can do this by editing your local hosts file to point your domain to our server's IP address:

# On Mac/Linux: sudo nano /etc/hosts
# On Windows: edit C:\Windows\System32\drivers\etc\hosts
# Add this line (use your actual Ultra server IP):
123.45.67.89  yourdomain.com  www.yourdomain.com

Now open your domain in a browser. You're seeing the version on our server. Test everything: pages, forms, email, database-driven features. When satisfied, remove the hosts file entry.

Update Your Nameservers

The cleanest approach is to change your domain's nameservers at your registrar to:

ns1.ultranameservers.com
ns2.ultranameservers.com

This tells the internet to look up all DNS records (A, MX, CNAME, etc.) from our servers. It takes 24-48 hours for the change to propagate worldwide, though most users see the switch within a few hours.

Alternative: Update A Record Only

If you prefer to keep DNS at your current provider (for example, if you use Cloudflare), just update the A record for your domain to point to your Ultra server's IP address. You can find your server IP in your client area under your service details, or in cPanel on the right sidebar.

Warning

During DNS propagation, some visitors will see the old site and some will see the new one. Avoid making content changes on either site during this period. If you need to update content, make the same changes on both hosts.

06. Post-Migration Checklist

After DNS has propagated and the site is live on Ultra, run through these checks:

  • SSL certificate - cPanel's AutoSSL should issue a Let's Encrypt certificate within a few hours of DNS pointing to us. Check cPanel > SSL/TLS Status. If it hasn't issued yet, click "Run AutoSSL"
  • Email - send test emails to and from all your accounts. Check that MX records are correct (see Email Troubleshooting Guide)
  • Cron jobs - if you had scheduled tasks on the old host, verify they're set up in cPanel > Cron Jobs (see Cron Job Guide)
  • Force HTTPS - if your site was using HTTPS on the old host, make sure it's redirecting to HTTPS on Ultra too. Check your .htaccess file or use the "Force HTTPS Redirect" option in cPanel > Domains
  • Broken links - check for hardcoded references to your old server's IP or hostname in your site's configuration or database
  • Performance - install caching if you haven't already. See our WordPress Performance Guide or Website Speed Guide

07. Migrating Email

Email migration is often overlooked. There are two parts: migrating the email accounts (usernames and settings) and migrating existing messages.

Email Accounts

If you used our free migration service or a cPanel backup restore, email accounts are already set up. If you migrated manually, recreate each email account in cPanel > Email Accounts with the same usernames and passwords as the old host.

Existing Messages

A cPanel full backup includes mailbox contents. If you didn't use a cPanel backup, you can migrate messages using an IMAP sync tool like imapsync, or by configuring a desktop email client (like Thunderbird) with both accounts and dragging messages between them.

Tip

During the DNS propagation window, email may arrive at either the old or new server depending on which DNS the sender's mail server has cached. Keep both hosts active until propagation is complete to avoid missing messages.

08. Common Migration Issues

Site Shows "Index of /" After Migration

Your files ended up in the wrong directory. Check that your website files are in public_html, not in a subdirectory inside it. If you extracted a backup that included the directory structure, you might have public_html/public_html/ with your files in the inner one.

"Error Establishing a Database Connection"

The database credentials in your config file don't match the database you created on Ultra. cPanel prefixes database names and usernames with your account name (e.g., myaccount_wpdb). Update wp-config.php (or your CMS's config file) with the new prefixed names.

Mixed Content Warnings After Enabling SSL

If your site loaded over HTTP on the old host and now uses HTTPS on Ultra, you may see mixed content warnings (the padlock icon shows a warning). See our Mixed Content Fix Guide for the solution.

Images or Links Still Pointing to Old Host

Some CMS platforms store absolute URLs in the database. For WordPress, use the Better Search Replace plugin to find-and-replace your old domain (or old server IP) with the new one across all database tables.

Need Migration Help?

Don't want to deal with migration yourself? Open a ticket and our team will move your site for free.

Request Free Migration

Quick Recap: Migrate Without Downtime

If you only do 5 things from this guide, do these:

  1. Don't cancel your old host first - keep both active during the transition
  2. Use a cPanel full backup - it's the most complete migration method
  3. Test with your hosts file - verify the site works on Ultra before switching DNS
  4. Update nameservers - point to ns1/ns2.ultranameservers.com and wait for propagation
  5. Check SSL, email, and cron jobs - the three things most commonly missed after migration

Last updated March 2026 · Browse all Getting Started articles

  • 0 Users Found This Useful

Was this answer helpful?

Related Articles

I tried to ssh to my new account and it said it was disabled

SSH Access on Your Hosting Account   If you try to SSH into your new account and receive a...

Removing This website is still under construction, please visit us later!

Removing the "Website Under Construction" Default Page   If your domain shows a "This...

Do I have to use an FTP program to upload files?

Related: For complete FTP setup instructions covering FileZilla, WinSCP, Cyberduck, and more, see...

I uploaded my site but I can not see it, why?

Related: For complete FTP setup instructions covering FileZilla, WinSCP, Cyberduck, and more, see...

Web Hosting Migration

Web-hosting Migration - An Overview of Related Facts and ProcedureWeb-hosting migration is best...



Save 30% on web hosting - Use coupon code Hosting30