Servers & Hosting (Plesk, CloudPanel, Linux)
VPS to VPS Website Migration
Move a website from one VPS to another, fully working, with minimal downtime.
The Problem
You're switching VPS providers or upgrading to a bigger server, and need everything — site, database, mail, cron jobs, SSL — moved across without breaking anything or losing data along the way.
About this problem
A VPS-to-VPS move sounds simpler than migrating off shared hosting since both ends are full servers, but that also means more moving parts can be custom-configured and easy to overlook — a specific PHP module, a cron job, a firewall rule, a mail relay setting. The real risk isn't the file transfer itself, it's the small configuration details that only show up once something stops working on the new server.
This typically comes up when upgrading to more resources, switching providers for cost or support reasons, or consolidating multiple small VPS instances onto one larger one.
What's Included
- Full inventory of everything running on the old VPS — sites, databases, mail, cron, custom config
- Setting up matching services on the new VPS (web server, PHP, database, mail if applicable)
- Transferring files and databases, and recreating SSL certificates and cron jobs
- Testing the site fully on the new server before any DNS change
- DNS cutover with the old VPS kept live as a fallback during the transition
What's NOT Included
- Paying for or provisioning the new VPS
- Upgrading software versions as part of the move unless specifically requested
- Fixing pre-existing issues on the old server unrelated to the migration
How It Works
- Audit the old VPS for every service running — web server config, PHP version/extensions, database, mail, custom cron jobs, firewall rules.
- Replicate the environment on the new VPS as closely as needed, or deliberately upgrade specific pieces if agreed beforehand.
- Transfer files directly server-to-server and export/import databases, checking row counts match after import.
- Recreate SSL certificates, cron jobs and any mail configuration on the new VPS.
- Test the site on the new server via a temporary hosts override, checking every key page and function works.
- Switch DNS once confirmed, and keep the old VPS running for a short overlap period in case a rollback is needed.
In practice: you buy the service, send over whatever access or details the job needs, I investigate and do the work, and you confirm it's resolved before we call it done.
Frequently Asked Questions
- Will I lose data moving from one VPS to another?
- Not if the migration is done properly — the old VPS stays untouched and running until the new one is fully verified, so there's always a fallback copy of the data until the switch is confirmed successful.
- How much downtime happens during a VPS to VPS migration?
- With the DNS switch only happening after full verification, downtime is usually limited to DNS propagation time, not the migration process itself.
- Can cron jobs and scheduled tasks be moved automatically?
- They need to be recreated on the new server rather than "moved" automatically, since cron configuration lives on each server individually — but this is a standard, checked part of the process.
- What if my new VPS has a different operating system?
- It's still doable, but some configuration (package names, service names, default paths) will differ and needs to be adapted rather than copied directly — this gets flagged upfront if it applies to you.
- Do I need root access to both VPS instances?
- Yes, root (or sudo) access on both the old and new server is needed to properly inventory and configure everything during the move.
- Can email be migrated along with the website?
- Yes, if mail is hosted on the same VPS, it can be moved as part of the same job — just mention it upfront so it's scoped in from the start.