Migrating cPanel accounts without downtime
Moving a live cPanel account is rarely just a scp and a restore. The clients only remember the moments something breaks, so the whole job is sequencing — knowing what to move, what to check, and what to leave until the very end.
Start with a pre-flight checklist
Before I touch anything on the destination server, I record:
- Disk usage and inode count on the source
- DNS TTL values for every domain in the account
- Mail client settings (IMAP/POP, ports, SSL)
- SSL certificate issuer and expiry
This baseline is what I compare against after the move. If something looks "off," it's usually a diff against this list.
The order that works
- Recreate the account structure on the destination — packages, features, and reseller settings first.
- Transfer email data early, then re-run the mail sync just before cutover. Mail changes constantly.
- Sync the website files, then databases, then re-sync files again for anything that changed during the dump.
- Lower DNS TTL well in advance, so the final switch propagates quickly.
- Cut over, then watch the logs for the first hour instead of declaring victory.
The part people forget
SSL is the one that burns you. If the new server presents a certificate before DNS finishes pointing there, visitors see a warning that has nothing to do with the actual site. Renew or install the cert before switching, not after.
The whole process is less about technical skill and more about never letting a step surprise you.