Moving a website to a new host sounds risky, but most migrations go wrong for boring, preventable reasons: a missed backup, a DNS change made too early, or an email account nobody remembered to move. This guide walks through the move step by step, in the order that keeps your site online.

Before you touch anything: make a full backup

A migration without a backup is a gamble. Before you start, take a complete copy of two things:

  1. Your website files — everything in your hosting account's public folder, including uploads, themes, plugins and any custom code.
  2. Your database — for WordPress and most other sites, this holds your posts, pages, settings, users and orders.

Download both copies to your own computer, not just to another folder on the same server. If the old host disappears mid-move, a backup on that same server disappears with it. Test that the backup files actually downloaded and are not empty — a backup you have never opened is only a hope, not a backup.

Also write down the things people forget: your email accounts and forwarders, any subdomains, scheduled tasks (cron jobs), and DNS records for services like email verification or third-party tools. A site can move perfectly while email silently breaks, simply because nobody copied the mail settings.

Step 1: Set up the new hosting account first

Create the new account and get the site working there before you point visitors at it. Most hosts give you a temporary address or a way to preview the site on the new server. Use it.

Install or restore the site on the new host, then check it properly: homepage, a few inner pages, forms, login, checkout if you sell anything, and images. Fix problems while the old site is still live and serving visitors — that is the whole point of doing it in this order.

Step 2: Move the files and the database

There are three common ways to move a site, and the right one depends on your setup:

  • A migration plugin or tool (for WordPress, plugins that export the whole site and import it elsewhere) — simplest for most small sites.
  • Manual copy — download files, export the database, upload both to the new host, and update the database connection details. More work, but it works for any kind of site.
  • Free migration by the new host — many hosts will move the site for you if you ask. This is worth using: they do it every day, and if something breaks, it is their job to fix it.

Whichever route you pick, do not delete anything from the old host yet. The old copy is your safety net until the new site is proven live.

Step 3: Check the new site properly before switching over

Use the preview address and click through the site as a visitor would. A useful checklist:

  • Pages load, images show, and links work
  • Contact forms actually send (send yourself a test message)
  • Login works, and admin pages load without errors
  • Search works, if your site has it
  • The site loads over HTTPS — install the free SSL certificate on the new host before going live, not after

If your site uses absolute links or settings that mention the old server, update them now. A site that looks fine on preview but breaks on the real domain usually has one hardcoded setting hiding somewhere.

Step 4: Point the domain over — and lower the TTL first

Your domain points to your host through DNS records. When you change those records to the new host, the change spreads across the internet gradually — this is called DNS propagation, and it can take anything from minutes to a day or two.

Two tricks make this painless:

  1. Lower the TTL a day or two before the move. TTL (time to live) tells other servers how long to remember your old DNS records. A low TTL (for example, 300 seconds) means the switch spreads much faster when you finally make it.
  2. Change the DNS records only after the new site is verified. Visitors who reach the new server early will see the finished site; visitors still reaching the old server will see the old site. Either way, nobody sees a broken site.

Keep the old hosting account active for at least a few days after the switch. Some visitors, email systems and search engines will still reach the old server for a while, and keeping it up costs far less than losing a day of orders or emails.

Step 5: Move email deliberately

Website migration guides often skip email, and that is exactly why email breaks during moves. Decide where email will live — on the new host, or with a separate email provider — and set up every mailbox, forwarder and autoresponder there before you change the domain's mail records.

After the switch, send test emails both ways (to and from the new mailboxes) and check that they arrive. If email matters to your business, this five-minute test is worth more than the whole migration checklist.

Step 6: After the switch — verify, then clean up

Once the domain points to the new host, run through the site once more on the real domain: homepage, forms, checkout, login, and HTTPS. Check that search engines can still reach the site and that no old pages return errors they did not return before.

Only when the new site has run cleanly for a few days should you cancel the old hosting. Before cancelling, download one final backup from the old account, just in case something from the old setup turns out to be needed later.

Common migration mistakes

  • Moving without a backup. The single most common cause of a migration disaster.
  • Pointing DNS before the new site works. Visitors become your testers, and they will not report bugs — they will leave.
  • Forgetting email, subdomains or scheduled tasks. The website moves; the things around it do not, unless you move them too.
  • Cancelling the old host on day one. Keep it as insurance for a few days. It is cheap insurance.
  • Skipping the SSL certificate. A site that worked over HTTPS on the old host must have a valid certificate on the new one before launch, or visitors will see security warnings.

A simple migration order to remember

Backup everything → set up the new host → move files and database → test on preview → lower TTL → point the domain → test email → run live for a few days → then cancel the old host.

Follow that order and a migration is a routine job, not a crisis. The sites that break are almost always the ones where one of those steps was skipped or done out of order.

Disclosure: I write about hosting and I am connected with ZedgeHost, a web hosting company in Pakistan — its shared plans start at Rs 1,499/year at zedgehost.com, and it offers free website migration. The steps above apply whichever host you move to: back up first, test before switching DNS, and keep the old account running for a few days.