The DIY path has three moving parts: get your files onto the new server, move your database over, and repoint DNS once everything checks out. Do them in that order and your old site keeps running the whole time. Nothing goes live here until you change DNS at the end. If you'd rather skip the manual work, our Free Transfer team will move files, databases, and email accounts for you at no cost, typically in 2-5 business days, with your old site staying live during the process.
Before you start
Order your hosting and pick a datacenter first. See Where your website and data are hosted if you're weighing US East, US West, Frankfurt, or Singapore. This is set at order time and matters for latency and data residency.
You'll need FTP or SSH access to both the old and new hosting, plus your database credentials from the old host. In the portal, create an FTP account under your hosting service's FTP Accounts tile if you don't already have login details handy.
Moving your files
Use an FTP client like FileZilla, or SSH with rsync if both hosts support it. FTP is the more universal option:
- Connect to your old host and download the full site directory to your local machine, or connect directly host-to-host if your client supports it.
- Connect to Flashcloud's server and upload everything into your domain's document root.
- Check file permissions transferred correctly, especially for CMS platforms like WordPress that expect specific permissions on
wp-contentand its subfolders.
If rsync is available on both ends, it's faster for large sites since it only transfers changed files on repeat runs:
rsync -avz --progress -e ssh /local/path/to/site/ user@newhost.com:/path/to/domain/
Run it once to do the bulk copy, then run it again right before you cut DNS over to catch anything that changed in the meantime.
Moving your database
Export the database from your old host, usually through phpMyAdmin's Export tab, or via the command line:
mysqldump -u username -p database_name > backup.sql
Create a fresh database on the new hosting through the portal's MySQL Databases tile, then import your backup:
mysql -u newusername -p newdatabase_name < backup.sql
phpMyAdmin (available as a one-click login in the portal) works fine for this too if you prefer a browser interface over the command line. Use its Import tab and point it at your .sql file.
Once the import finishes, update your site's config file with the new database name, username, password, and host (usually localhost). For WordPress, that's wp-config.php. Other platforms keep this in a similarly named config or .env file near the site root.
Testing before you cut over
Don't point DNS yet. Test the new copy first by editing your local hosts file to resolve your domain to the new server's IP, or by browsing the site through a temporary URL if your platform supports one. Click through the main pages, log into the admin panel, and submit a form or two if your site has them. This is the point to catch a missed file or a stale database credential, while your live site is still untouched on the old host.
Switching DNS
Once you've verified the copy works, point your domain at Flashcloud. If you want Flashcloud to manage your DNS records, update your nameservers under Domains → your domain → DNS. That's the only thing domain-level DNS controls: nameservers, up to 5 of them. Actual DNS records (A, CNAME, MX, and so on) live under Services → your hosting → DNS Zone Editor, and that's where you'd recreate any custom records your old setup depended on, like SPF entries or subdomain CNAMEs.
If you're also moving email, sync your mailboxes before you flip MX records so nothing gets lost in transit. Moving your email to Flashcloud from another provider walks through the imapsync approach.
DNS changes propagate gradually as caches around the internet expire. Expect a window, often a few hours and sometimes up to 24-48 hours, where some visitors still hit the old server. Keep the old hosting active until you've confirmed traffic has fully shifted.
When to bring in support
If a database import fails partway through, a plugin or app breaks after the move, or DNS still isn't resolving the way you expect once propagation has had time to finish, open a ticket from Support in the portal. It goes to a real person, not a bot, and you can also request our Free Transfer team to migrate the rest of the site for you.