Website migration checklist
Updated 5 min readBy the DNSPeek team
A safe website migration has six phases: plan, prepare the new server, test it before DNS changes, switch, verify, and clean up. The key rule is that the old server keeps serving visitors until the new one has been checked, and is cancelled only after traffic has stopped reaching it. Print this page and tick each item as you go.
How to use this checklist
Work through the phases in order. Items that do not apply to your site, such as email on a site without mail, can be crossed out. Use the print button or your browser’s print command to get a clean paper copy with tick boxes; the navigation and footer are left out of the printout.
Each phase links to a guide with the details. For the platform-specific parts, see WordPress migration without downtime, the cPanel to cPanel checklist or migrating to a VPS.
Phase 1: Plan
- Migration date and time chosen, outside peak traffic
- Access confirmed: old host, new host, DNS provider, registrar, CDN
- Inventory written: domains, subdomains, databases, mailboxes, cron jobs, integrations
- Email hosting location known (same host, separate provider, or none)
- Who approves the launch, and who is on call during the switch
- Rollback plan: how to point DNS back to the old server
- Current TTLs noted for every record that will change
Check TTLs with the TTL checker and see who hosts the domain, its DNS and email today with Who is hosting.
Phase 2: Prepare the new server
- Full backup of the old site downloaded and stored off the old server
- New server matches the old runtime: PHP or Node version, extensions, database version
- Files copied and permissions set
- Database imported; application configuration updated with new credentials
- Virtual host or site configured for the domain and www
- Server-level rules recreated: redirects, rewrite rules, PHP limits
- Cron jobs prepared (not yet duplicated with the old server)
- TTL lowered to 300 seconds, one old TTL before the switch
Why the TTL matters: Lower your TTL before a migration.
Phase 3: Test before changing DNS
- Site opens on the new IP under its real domain (preview link or hosts file)
- Home page and key pages checked on desktop and phone
- Forms submitted; notification emails arrive
- CMS or admin login works; a media upload works
- Checkout or sign-in tested with test accounts
- QA crawl run; critical findings fixed and re-run
- Old and new site compared side by side
- No staging leftovers: noindex, robots.txt blocks, temporary URLs
- Certificate plan: valid now, or issued right after the switch
- Client or owner approval recorded
A DNSPeek preview link covers the first items on any device and can be shared for approval; a QA report and live compare cover the crawl and the comparison. Method trade-offs: hosts file vs a preview link. Approvals: client sign-off before launch.
Phase 4: Switch
- Content freeze on the old site (orders, comments, posts)
- Final sync of database and new uploads
- A record of the domain changed to the new IP
- www and other hostnames changed
- Old AAAA record updated or removed
- MX and mail records changed, only if email moves too
- CDN origin updated, if a CDN proxies the site
Phase 5: Verify
- Public resolvers return the new IP
- Site answers from the new server
- Valid certificate for every hostname
- Redirects: http to https and www handling in one or two hops
- Security headers present as before
- MX, SPF, DKIM and DMARC correct; test email sent and received
- Forms and transactional emails delivered
- Cron jobs running on the new server only
- Analytics firing; sitemap reachable
Tools for this phase: DNS propagation checker, Is my domain switched?, SSL checker, redirect checker, security headers check, MX lookup, SPF checker and DMARC checker. The full list of what to look at: what to check after moving hosting.
Phase 6: Clean up
- Old server’s access logs show no more real visitors
- No new mail arriving on the old server
- Final backup of the old account kept
- TTL raised back to 3600 seconds or more
- Hosts file entries removed; preview links disabled
- Backups and monitoring configured on the new host
- Old hosting cancelled
How long to wait: How long DNS propagation takes.
If something goes wrong: rolling back
A rollback is only easy if you planned for it. Because the old server keeps running and the TTL is short, undoing a switch is the same operation in reverse: point the records back at the old IP, and visitors return within minutes. Decide in advance what would make you roll back, such as checkout failing or the site returning errors, and who makes that call.
Data written on the new server after the switch, such as orders, sign-ups or comments, does not flow back on its own. Note the time of the switch so you can find and copy those records if you have to return to the old server for a while.
The migration at a glance
Step 1: Plan
Inventory domains, data, email and integrations, confirm access everywhere and agree a rollback plan.
Step 2: Lower the TTL
Set the records you will change to 300 seconds, at least one old TTL before the switch.
Step 3: Prepare the new server
Copy files and database, match the runtime versions and recreate server-level rules.
Step 4: Test before DNS
Open the site on the new IP under its real domain, run a QA crawl, compare with the old site and get approval.
Step 5: Switch
Freeze content, do a final sync and update the A, AAAA and other records.
Step 6: Verify
Check propagation, the certificate, redirects, email and forms.
Step 7: Clean up
When traffic has stopped on the old server, take a final backup, raise the TTL and cancel the old hosting.
One-page summary
The ten things that matter most
- Off-server backup taken
- TTL lowered one old TTL ahead
- Runtime versions matched on the new server
- Site tested on the new IP before DNS
- QA crawl clean
- Approval recorded
- Content frozen and synced
- Every hostname and AAAA record switched
- Certificate, redirects, email and forms verified
- Old host cancelled only after traffic stopped
Frequently asked questions
What is a website migration checklist?
It is an ordered list of the tasks needed to move a website to a new server or host without downtime or data loss, from planning and backups to testing, the DNS switch, verification and cancelling the old hosting.
How long does a website migration take?
Copying a small site takes minutes to hours. Plan at least a day overall, because the TTL should be lowered a day ahead and the old server kept for a few days after the switch.
Can I download this checklist as a PDF?
Use the print button and choose Save as PDF in your browser’s print dialog. The printout includes the tick boxes and leaves out the site navigation.
What is the most common migration mistake?
Switching DNS before testing the new server, closely followed by forgetting email records and cancelling the old host too early. Testing before the switch and keeping the old server for a few days avoid all three.
Does this checklist work for any platform?
Yes. The phases apply to WordPress, other CMSs, frameworks and static sites. Platform-specific steps, such as replacing URLs in a WordPress database, are covered in the linked guides.