Migrating hosting accounts from one server to another is one of the most common tasks a system administrator or web host faces — whether you’re upgrading hardware, switching data centers, or onboarding clients from a competing provider. cPanel’s built-in Transfer Tool makes this process far less painful than it used to be, allowing you to migrate full accounts, including files, databases, email, and DNS configurations, with minimal downtime and no manual packing of tarballs.
This guide walks you through everything you need to know to execute a clean, successful account migration using the cPanel Transfer Tool.
Before diving into the steps, it’s worth understanding what’s happening under the hood. When you initiate a transfer through WHM (WebHost Manager), the destination server connects to the source server — either via SSH or through a cPanel-to-cPanel connection — and pulls a full cPanel backup of the specified account. That backup is then restored on the destination server.
The transfer includes:
What it does not handle automatically is DNS propagation. After the transfer, you’ll still need to update nameservers or A records to point traffic to the new server — but more on that later.
A smooth migration starts with preparation. Before you launch the Transfer Tool, run through this checklist.
All transfer operations are initiated from the destination server — the one you’re moving accounts to. Log into WHM using your root credentials:
https://your-destination-server-ip:2087
Once inside WHM, navigate to Transfers in the left-hand menu, then click Transfer Tool. If you don’t see the Transfers section, use the search bar at the top and type “Transfer Tool.”
The Transfer Tool will present you with a form to configure the connection to your source server. You have several options here.
Once you’ve entered your credentials, click Fetch Account List (or the equivalent button in your version of WHM). The Transfer Tool will connect to the source server and retrieve a list of cPanel accounts available for transfer.
After the account list loads, you’ll see each cPanel username alongside its domain, disk usage, and package assignment. Select the accounts you want to migrate. For bulk migrations, there’s a “Select All” checkbox, though for first-time transfers it’s wise to test with one or two accounts before moving everything.
Pay attention to disk usage at this stage. Accounts with large databases or media libraries will take considerably longer, and you don’t want to kick off a 50GB transfer right before a maintenance window closes.
Below the account list, you’ll find several important configuration options that govern how the transfer behaves.
Once everything looks right, click Copy (or Transfer depending on your WHM version) to begin. cPanel will open a live log output showing the progress of the transfer in real time.
Watch this log carefully. You’ll see status messages for each component — file copy, database restoration, DNS zone import, and so on. Errors appear in red and are usually self-explanatory. Common issues at this stage include:
For large accounts, the transfer can take anywhere from a few minutes to several hours. Avoid interrupting the process once started.
Once the transfer completes, log into WHM on the destination server and navigate to List Accounts. The migrated account should appear there. Next, log into the cPanel account itself and verify:
It’s also worth spinning up a browser and previewing the site using a hosts file override (editing your local /etc/hosts or C:\Windows\System32\drivers\etc\hosts to point the domain to the new server’s IP) before touching DNS. This lets you confirm the site loads correctly without affecting live traffic.
With the account verified and working on the destination server, it’s time to cut over DNS. Update the domain’s nameservers or A record to point to the new server’s IP address. DNS propagation typically takes anywhere from a few minutes to 48 hours depending on the TTL values set on the old records.
A useful strategy is to lower the TTL on the domain’s DNS records to 300 seconds (5 minutes) well in advance of the migration — ideally 24 to 48 hours beforehand. This ensures that once you make the switch, propagation is nearly instantaneous.
Keep the source account intact for at least 48–72 hours after DNS has propagated. If any issues surface post-migration, having the original data still accessible on the source server is an invaluable safety net.
The cPanel Transfer Tool has matured into a reliable, production-grade migration system that handles the heavy lifting of account-level moves with relatively few surprises. The key to a successful migration is preparation: verify credentials, confirm disk space, check firewall rules, and always test the transferred account before updating DNS.
For high-stakes migrations — large databases, complex multi-domain setups, or mission-critical applications — always schedule the transfer during off-peak hours, maintain a rollback plan, and give yourself more time than you think you’ll need. With careful planning and the Transfer Tool doing the bulk of the work, what used to be a days-long manual process can typically be completed in an afternoon.
Launching a Node.js application doesn't have to cost a cent — at least not while…
SQL injection has been around for over two decades, yet it remains one of the…
If you've spent any time in developer communities, DevOps forums, or job postings over the…
1. Introduction Your domain name is more than a web address — it is the…
If you've ever visited a website that loaded blazing fast — no matter where you…
WordPress powers over 43% of all websites on the internet — making it the most…