Migrating by FTP drag-and-drop
FTP copies lose permissions, symlinks, hidden files, and anything open at copy time — and it silently truncates on flaky connections. rsync with checksums exists for a reason.
Zero Downtime Website Migration
A migration fails at the seams: the mailbox nobody remembered, the cron job on the old box, DNS TTLs that weren't lowered. After 1,200+ of these, the process is boringly reliable — full sync, staged verification, low-TTL cutover, and a rollback path that means the old server stays untouched until the new one is proven.
A zero-downtime website migration moves a site — files, databases, email, DNS — to a new server while the old one keeps serving visitors until the new one is proven. The sequence: full data sync, verification on the new host, DNS TTLs lowered days in advance, then a cutover measured in seconds with the old server held as instant rollback. Done this way, visitors never see an outage and nothing in transit is lost.
Written by Ranjan Chatterjee, Infrastructure Consultant · Linux Server Specialist · 15+ years in production Linux · Last reviewed
Migrations get postponed until the pain outgrows the fear. These are the signs the move is already overdue.
Whether I run the move or you do, these five steps decide how smooth cutover day is.
Cron jobs, mailboxes, forwarders, subdomains, API webhooks, license keys tied to IPs — migrations fail at the pieces nobody listed. Write it all down before anything moves.
Drop your records to 300 seconds at least a day before cutover. It costs nothing and turns "propagation might take 24 hours" into a switch that completes in minutes.
Before trusting any migration, prove your safety net: restore one site's backup somewhere and confirm it actually works. Migration day is the wrong time to learn the backups were broken.
A plugin update or schema change mid-sync creates drift between old and new servers. Hold non-urgent changes for the final sync window.
Payment gateways pinned to an IP, SMTP relays, license activations, firewall allowlists at partners — list what has to be updated the moment the new server goes live.
Every one of these comes from a real engagement — usually from before I was called.
FTP copies lose permissions, symlinks, hidden files, and anything open at copy time — and it silently truncates on flaky connections. rsync with checksums exists for a reason.
Switching DNS while records still carry a 24-hour TTL splits your traffic between two servers for a day — orders landing in one database, mail in another. TTLs come down before cutover, not during.
The website moves, MX records get overlooked, and mail keeps arriving at a server someone is about to cancel. Email deserves its own checklist in every migration plan.
The old server is your rollback and your audit trail. Keep it running (even stopped-but-preserved) for at least a week after cutover — the money saved by cancelling early has destroyed businesses.
Pointing your own machine at the new server via /etc/hosts lets you test every site fully before DNS moves. Cutting over to an unverified server is the leading cause of "the migration broke my site".
An honest comparison — each option is right in some situations, including the free ones.
| Option | The right choice when… | Limits & risks |
|---|---|---|
| Host's free migration | Simple sites moving into a mainstream panel host — many do a fine job with standard cPanel accounts and it costs nothing. | Best-effort and queue-based: no cutover planning, DNS is your problem, email often "transfers" as empty mailboxes, and nobody verifies the result. Fine for a blog; risky for a business. |
| DIY with plugins/scripts | A single WordPress site, a comfortable admin, and tolerance for a rollback-and-retry if something breaks. | Plugin migrations time out on large sites, skip cron/mail/DNS entirely, and the one-click restore is unverified until you need it. Total time cost is usually underestimated 3–5×. |
| Independent specialist | Revenue is on the line, many accounts or mailboxes, cross-panel or cross-cloud moves, or a hard cutover deadline. You want verification, a rollback plan, and one accountable engineer. | Costs real money and needs access to both environments. A fixed quote up front removes the meter-running risk — but a specialist can't fix a broken destination host; choosing the target is still a shared decision. |
The same disciplined path on every engagement — scoped, planned, executed with checkpoints, handed off clean.
A short brief or call to understand your stack, the real problem, and what a good outcome looks like.
A clear architecture plan — steps, risks, rollback and timeline — agreed before anything touches production.
Hands-on work with checkpoints. You see progress; nothing changes on your servers silently.
Documentation, access cleanup and a clear path for what comes next. No lock-in, no mystery.
For visitors, yes — the site serves from the old server until DNS switches to a new server that's already live and verified. The only theoretical gap is DNS propagation, which staged low TTLs reduce to seconds.
A single site typically completes within a day, including verification. Full servers with hundreds of accounts run about a week: initial sync, account-by-account verification, then a scheduled overnight cutover. The calendar time is mostly careful verification — the actual downtime is the part that stays at zero.
A fixed quote based on account count and stack complexity — agreed before anything moves, so there's no incentive to let it drag. Simple single-site moves are inexpensive; large multi-account or cross-panel projects are quoted per scope. If your host's free migration would honestly serve you fine, I'll tell you.
Not if it's done properly. Search engines don't penalize a change of hosting — what hurts SEO is downtime, broken URLs, lost HTTPS, or missing redirects during a sloppy move. A verified cutover preserves URLs, SSL, and response codes, so crawlers see the same site answering faster.
Yes — cPanel to DirectAdmin and similar cross-panel moves are routine. Accounts, mail, databases, and DNS zones are converted and verified rather than dumped and hoped for.
Mailboxes sync continuously until cutover, so mail keeps arriving on the old server and re-syncs before DNS moves. No mailbox goes read-only and nothing in transit is lost.
Certificates are migrated or reissued on the new server before cutover, so HTTPS never breaks. Let's Encrypt certificates are reissued automatically; purchased certificates move with their private keys, or get replaced if the new stack manages them differently.
Yes. Size changes the method, not the outcome: initial syncs run in the background over days if needed, and the final delta pass still completes in minutes because only changes move. The practical constraints are the source host's transfer limits — which is a solvable planning problem, not a blocker.
Yes, including the ones that make export deliberately awkward. Site files and the database always have an extraction path, and the move includes rebuilding the pieces those platforms handle invisibly — caching, CDN, redirects — so performance doesn't regress on the new stack.
Cutover happens at the hour you choose — usually your lowest-traffic window, which for most businesses means late night or weekend. The heavy work is done in advance precisely so the cutover itself is a short, boring, scheduled event.
Plain-language definitions — so the report reads like information, not incantation.
Engagements that commonly pair with this one.
Workspace, Microsoft 365, cPanel, IMAP — synced, verified, and deliverable.
View serviceMigration, repair, optimization, and WHMCS automation for panel-based infrastructure.
View serviceWeb server, PHP, MySQL, cache layers — tuned from measurements, not folklore.
View serviceOne paragraph is enough: your stack, the symptom, and when you need it solved. Emergencies are answered first.