Website Migration Steps You Shouldn’t Miss: The Complete Checklist

Mina Sawyer

Mina Sawyer

Last Updated:

hero-image

Taking the right steps during a website migration can help you avoid downtime, broken pages, or losing your search rankings. Website migration might mean changing your hosting provider, moving to a new domain, switching CMS platforms, or updating your URLs.

Each type of migration comes with its own risks. Moving to a new host usually means transferring files, databases, email, and DNS. Changing your domain or URLs also requires setting up redirects, updating canonical tags, and doing extra SEO work.

The guide covers all website migration steps and processes, starting with backups and staging and ending with the DNS switch-over and the checks carried out after the launch. It also explains how to migrate a website without losing your SEO ranking or leaving visitors stranded on the old server.

What Is Website Migration?

Website migration means moving or making big changes to your website’s hosting, domain, platform, URL structure, or technical setup. The main goal is to move your site while keeping its content, features, traffic, search rankings, and user experience safe. Not every migration involves the same work. Moving hosts with unchanged URLs is much simpler than changing domains and platforms together.

Types of Website Migration Explained

A hosting migration moves the website to another server or provider. Domain migration changes its primary web address.

Platform migration moves the site between systems such as different CMS platforms. Structural migrations alter URLs or information architecture. Some projects combine several changes, which increases testing and SEO requirements.

If hosting resources are the problem, compare current VPS hosting plans before planning the move.

Migration Type

What Changes

Common Trigger

Typical Risk

Host migration

Server or hosting provider

Performance, reliability, scaling

Medium

Domain migration

Domain or hostname

Rebrand, TLD change

High

CMS migration

Underlying platform

Features, security, management

High

URL or structure migration

Paths and architecture

SEO or UX restructuring

Medium to high

Full migration

Several elements together

Complete relaunch

Very high

 

Pre-Migration Checklist: What to Prepare

Don’t start by copying files right away. First, make a record of your current site so you know exactly what needs to be moved.

Take a Full Website Backup

Create independent copies of the website files and database before making server changes.

For a Linux-hosted site, you can archive the document root and export a MySQL or MariaDB database:

tar -czvf website-backup.tar.gz /var/www/html

 

mysqldump -u user -p db_name > database-backup.sql

Keep at least one copy outside both the old and new production servers.

Inventory URLs, DNS, Email, and Configuration

Record everything your current environment depends on before migration.

Include:

  • DNS records

  • SSL configuration

  • PHP version

  • Database version

  • Cron jobs

  • Mailboxes

  • Redirects

  • Environment variables

  • SMTP settings

  • Third-party integrations

  • API allowlists

  • Current sitemap

  • Important URLs

Don’t assume your email will move automatically with your website. You may need to move mailboxes, MX records, SPF, DKIM, and other email settings separately.

Choose the New Hosting Environment

When selecting your new server, take into account what your website currently needs and the extent of its expected growth. You should check the support for the CPU, RAM, storage, bandwidth, the operating system, database compatibility, backup options, and the requirements for the control panel. 

A site outgrowing shared hosting may fit well on VPS infrastructure, while consistently resource-heavy websites may benefit from dedicated server hosting.

Create a Staging Environment

Plan how you’ll test the new environment before you change your public DNS. You can use a staging hostname or map the real production domain to the new server through your local hosts file. Make a list of everything you need to test, like forms, logins, search, payments, images, redirects, APIs, and database updates.

Record Your SEO Baseline

If you’re changing your URLs or domain, write down your current SEO stats before you begin.

Export:

  • Organic traffic

  • Indexed pages

  • Top landing pages

  • Rankings

  • XML sitemaps

  • Canonical URLs

  • Important backlinks

  • Search Console coverage data

This gives you a starting point to spot any problems after you launch.

Website Migration Steps: The Complete Process

Step 1: Build the New Server Before Touching Production

Set up the new environment while your old website is still live. Install the required web server, runtime, database software, extensions, control panel, security tools, and application dependencies. Configure storage and permissions before transferring production data. HostSailor’s guide to migrating from shared to VPS hosting also recommends matching software versions before the cutover.

Step 2: Transfer the Website Files

For Linux-to-Linux migrations, rsync is usually preferable because it can efficiently repeat transfers and preserve file metadata.

rsync -avz -e ssh /var/www/html/ user@new-server:/var/www/html/

You can also use scp for a simpler copy:

scp -r /var/www/html/ user@new-server:/var/www/html/

When setting up a dynamic website, carry out the first transfer early and carry out another synchronization close to the cutover.

Step 3: Export and Import the Database

Export the database from the old server:

mysqldump -u user -p db_name > database-backup.sql

Copy the dump to the new server, then import it:

mysql -u user -p db_name < database-backup.sql

Afterward, check the number of tables, app connections, character encoding, and database users. For large or busy sites, you might need a short maintenance window or a replication plan to make sure new data doesn’t get split between the old and new servers.

Step 4: Update Configuration Files and Environment Variables

Make sure that the application settings which refer to the old server are checked.

This may include:

  • Database hostnames and credentials

  • .env files

  • WordPress wp-config.php

  • Cache paths

  • Upload directories

  • API allowlists

  • Cron jobs

  • SMTP details

  • Absolute URLs

  • File permissions

Make sure that you don't substitute the secrets of your live server with those from your test environment without first checking.

Step 5: Test the New Server Before DNS Cutover

On your computer, direct your website's domain to the new server's IP address.

For Linux or macOS:

sudo nano /etc/hosts

Add a temporary line such as:

203.0.113.10 example.com www.example.com

Now your own browser can load the new server while everyone else continues using the old one.

Test:

  • Homepage and navigation

  • Login and logout

  • Forms

  • Search

  • Checkout

  • Images

  • Downloads

  • Database writes

  • Email notifications

  • API integrations

  • Redirects

  • Scheduled jobs

Don’t move forward until the new environment works just like your live site.

Step 6: Perform the Final Synchronization

If visitors can create content, place orders, upload files, or otherwise change data, new information may appear after your first transfer. Run a final file synchronization shortly before cutover.

For dynamic databases, choose a brief content freeze, maintenance window, or replication strategy appropriate to the application. The goal is to ensure the new environment contains every important change before traffic moves.

Step 7: Switch DNS and Keep the Old Server Running

Update the required A, AAAA, or other DNS records to point to the new infrastructure. Google describes the DNS change as the actual start of a hosting move when URLs remain unchanged. It recommends monitoring both old and new server traffic before shutting the original environment down. Don’t cancel your old hosting right away.

Going Live: DNS, SSL, and SEO Cutover

Lower DNS TTL Before the Move

TTL controls how long recursive DNS resolvers may cache a DNS answer. Lower the TTL before you migrate, if your DNS provider lets you. With a shorter TTL, DNS servers will pick up the new record faster after you switch. Do this well before you launch. Lowering the TTL right before changing the IP won’t clear out records that are already cached.

Update DNS and Monitor the Change

After changing DNS, verify which IP address is being returned:

dig example.com

 

dig @1.1.1.1 example.com

You can also inspect the authoritative DNS chain:

dig example.com +trace

Keep an eye on the logs for both servers. As cached DNS records expire, more requests will start going to the new server.

Reissue or Install the SSL Certificate

The HTTPS certificate must work correctly on the new server before the migration is complete.

If you use Let’s Encrypt with Nginx:

sudo certbot --nginx -d example.com -d www.example.com

If you are already using a commercial certificate, then securely migrate its certificate chain and private key. HostSailor also provides SSL certificate options.

Add 301 Redirects Only When URLs Change

A migration that involves only hosting and which keeps the existing URLs does not require site-wide redirects. When your domain or URL structure changes, set up a direct mapping from the old pages to the new ones and use permanent 301 or 308 redirects.

Do not send each removed URL to the homepage; instead, each redirect should be directed to the nearest relevant replacement when one is available.

Check Canonicals, Robots, and Noindex Rules

You do not need a new robots.txt simply because the website changed servers.

Rather, make sure that any restrictions from your test site have by accident been carried over to your live site.

Check for:

  • Temporary noindex tags

  • Blocked robots rules

  • Incorrect canonical URLs

  • Old internal links

  • Old hreflang URLs

  • Outdated sitemap URLs

These checks are especially important if you’re changing your domain or URL structure.

Post-Migration Checklist: Confirm Everything Works

Test Pages, Forms, and HTTP Status Codes

Go through your site both as a regular user and as an admin.

Test:

  • Navigation

  • Login and logout

  • Forms

  • Payments

  • Search

  • Images

  • Downloads

  • Email notifications

  • API integrations

  • Scheduled jobs

Check important responses directly:

curl -I https://example.com

Look for unexpected 404, 500, redirect loops, or mixed HTTP/HTTPS behavior.

Monitor Search Console and SEO Performance

If URLs changed, create an XML sitemap containing the final URLs and submit it through Google Search Console. Do not use Google's old sitemap ping endpoint. It has been deprecated.

Monitor:

  • Indexed pages

  • Organic impressions

  • Organic clicks

  • Crawl errors

  • Redirect errors

  • Canonical selection

  • Top landing pages

  • Server logs

Compare results against the baseline recorded before migration. It’s normal for your rankings to change temporarily after big domain or URL changes while search engines adjust to the new setup.

Complete Basic Server Hardening

Before considering the migration finished, patch the new server and remove unnecessary services. Review SSH access, backups, firewall rules, monitoring, and exposed ports. If you manage the server directly, HostSailor’s guide to configure firewall rules provides a useful starting point.

Keep this step focused on making the new environment production-ready rather than turning the migration into a full security project.

Common Website Migration Mistakes to Avoid

Changing Too Many Things at Once

The difficulty in troubleshooting is increased when host moves, domain changes, the CMS is replaced, the site is redesigned, and the URLs are rewritten at the same time. Google recommends separating major changes where practical. If something goes wrong, you need to know which change caused it.

Transferring the Domain When You Only Need New DNS

Changing hosting providers does not require transferring your domain registration. You can leave the domain with the same registrar and simply change the DNS records that point to your website. A domain transfer is a separate process and should only be done when you actually want to change registrars.

Forgetting Email During the Migration

A website can work perfectly after migration while email stops completely.

If the previous host also handles email, check:

  • MX records

  • SPF

  • DKIM

  • DMARC

  • Mailboxes

  • Aliases

  • SMTP credentials

If necessary, treat the migration of your email as a separate step.

Shutting Down the Old Server Too Early

This is one of the easiest ways to create avoidable downtime. DNS caches do not all refresh simultaneously. Some visitors may continue reaching the old IP while others already use the new one. Keep your old hosting active until your logs show that most traffic has stopped going to it.

Forgetting a Rollback Plan

Know how you will reverse the migration before changing anything public.

Keep:

  • The old server

  • Original DNS values

  • Current database backups

  • File backups

  • Previous configuration

  • A clear rollback trigger

If something critical goes wrong, you should be able to restore your site without scrambling to figure it out on the spot.

The Bottom Line

A successful website migration follows a simple order: document your current setup, build and test the new server, move your data, and only switch traffic when everything is working. Keep your old server running during the DNS switch. If you change URLs, set up redirects carefully and keep an eye on Search Console after the move.

The safest migration is also one you can reverse. Keep verified backups and document your original DNS configuration before launch. If you would rather have help planning the hosting side, HostSailor’s team can help you choose the right VPS environment and prepare for the move.

Frequently Asked Questions About Website Migration Steps

How long does a typical website migration take?

A small hosting migration can take several hours once the destination is prepared. Complex sites may require days or weeks of planning and testing. Search engines can take longer to fully process migrations that introduce new URLs or domains.

Will migrating my website hurt my SEO rankings?

Not necessarily. A hosting migration with unchanged URLs should have limited search impact if the new server remains accessible and performs correctly. URL-changing migrations may produce temporary fluctuations while search engines recrawl and process redirects. Google recommends careful URL mapping and permanent redirects.

Do I need to migrate my email accounts separately?

Sometimes. If email is hosted by the same provider as your website, mailboxes and settings may need a separate transfer. Check MX records, mailbox data, aliases, SPF, DKIM, and SMTP details before cancelling the original hosting service.

Can I migrate a website myself without hiring a developer?

So, provided that you are willing to take on the responsibility of hosting panels, DNS, files, databases, SSL, and some basic troubleshooting. Migrations involving Managed WordPress or cPanel would be simpler. Complex e-commerce sites, those with high traffic, or custom applications generally call for experienced technical support.

How much does a professional website migration cost?

There is no universal migration price. Cost depends on website size, databases, email accounts, platform complexity, URL changes, server configuration, required downtime, and whether SEO monitoring is included. A simple hosting transfer costs far less than a full domain and CMS migration.

Reliable Hosting You Can Trust

Experience lightning-fast, secure hosting that easily scales as your business grows, empowering you to succeed online effortlessly.

Start Hosting Now

Join Our Newsletter

Your information will never be Shared with third parties, and you can unsubscribe from our updates at any time.