Website Migration Checklist: Move to New Hosting Without Problems
A successful website migration requires a solid plan and the right preparation. Whether it is a website migration to a new server, a different CMS, or a completely new design, the steps in this article help you make the switch go smoothly.
A website migration to new hosting is one of the riskiest operations you can perform as a website owner. There are dozens of components that all have to work correctly: files, database, email, DNS, SSL, and more. One mistake can lead to downtime, data loss, or worse. But with the right preparation and a systematic approach, you can migrate without notable problems.
This in-depth checklist guides you through every phase of the migration process, from preparation to completion. Print it out, check off what you have done, and minimize the risks. Whether you are moving for better performance, lower costs, or better support: this guide helps you get through it safely.
Phase 1: preparation (one to two weeks before migration)
Gather documentation
Before you change anything, thoroughly document the current situation. Note all FTP or SFTP login details of your current hosting. Note the complete database credentials including host, name, user, and password. Export a list of all email addresses, forwarding rules, and autoresponders. Take a screenshot or export of all your current DNS records. Document all cronjobs and scheduled tasks that run. Note server-specific configurations such as PHP version, memory limits, and upload limits.
This documentation is your safety net. If something goes wrong during the migration, you can always fall back on this information. Keep it in a safe place outside your hosting.
Prepare the new hosting
Make sure your new hosting environment is ready before you start migrating. Create an account with your new hosting provider. Test access to the control panel and familiarize yourself with the interface. Check that the PHP version matches your current hosting or is newer. Request FTP credentials and test the connection with an FTP client. Create a database with the right permissions. If you also migrate email, create the accounts in advance.
Make a full backup
This is the most important step. Make a full backup of all website files including hidden files such as htaccess. Export your complete database as an SQL dump. Download both backups to your local computer, do not rely on server backups alone. Test the backup by importing the database into a test environment and checking whether everything works.
A reliable backup is your insurance. If the migration fails completely, you can always return to the original state.
Phase 2: carrying out the migration
Transfer files
There are multiple methods to transfer files. FTP upload is the simplest but slowest method, suitable for smaller sites. SSH with rsync is faster and more reliable for larger sites. Migration tools such as All-in-One WP Migration can move WordPress sites including the database. Your hosting provider may offer a free migration service.
Upload all files to the right folder on your new server. After upload, verify that the file permissions are correct: folders at 755, files at 644. Specifically check whether htaccess has been transferred correctly and that configuration files such as wp-config.php are present.
Migrate the database
Import your database dump into the new database through phpMyAdmin or the command line. This can take a while for large databases. After import, update the database credentials in your configuration file with the new host, database name, user, and password.
If your domain changes or you test the site temporarily on a different domain, you have to adjust URLs in the database. For WordPress you update siteurl and home in wp_options. Tools such as Search Replace DB or WP-CLI make this safe.
Adjust the configuration
Adjust all configuration files for the new environment. Update database credentials, adjust path configurations for uploads and cache directories, configure email settings if needed, and set up cronjobs again through the control panel of your new hosting.
Phase 3: testing before the DNS change
Test the site on the new server
Test your site thoroughly before you change DNS. You can do this through a temporary URL that your hosting provides, by adjusting your local hosts file to point your domain to the new IP, or through a staging domain.
Check that the homepage loads correctly and all subpages work. Verify that images and media display correctly. Test all forms and check that mail is sent and received. Log in to admin panels and test functionality. If you have an online store, test the entire order process in test mode.
Compare performance
Compare the load times with your old hosting. The new environment should be at least as fast, preferably faster. Test with tools such as GTmetrix or Pingdom. Check for error logs for warnings or problems you need to solve before going live.
Phase 4: DNS migration
Prepare DNS
Lower the TTL (Time To Live) of your DNS records 24 to 48 hours before the planned migration. A lower TTL, for example 300 seconds instead of the default 86400, makes DNS changes propagate worldwide faster. Note the IP address of your new server and prepare the new DNS records.
Change DNS
There are two methods to route traffic to your new server. You can change the A record to the new IP address while your nameservers stay with your current registrar. Or you change the nameservers entirely to those of your new hosting or a service such as Cloudflare.
If you also migrate email, update the MX records to the new mail server. Do not forget other records such as CNAME for subdomains and TXT records for SPF, DKIM, and other verifications.
Monitor propagation
DNS propagation takes up to 48 hours, although it is usually faster. Monitor the progress through whatsmydns.net. During propagation, some visitors may see the old site and others the new one. So do not make content changes on the old server during this period, it can be confusing which version you are editing.
Keep both servers active until propagation is complete. You do not want visitors to see an unreachable site because you canceled the old hosting too early.
Phase 5: post-migration verification
Functional verification
After full DNS propagation, test thoroughly again. Verify that the site is reachable through your domain. Check that HTTPS works correctly without mixed content warnings. Test all pages for errors. Verify that forms work and mail arrives correctly. Check that analytics tracking is active. Test external integrations such as payment gateways and API connections.
Email verification
If you migrated email, test receiving and sending email. Check that sent mail does not end up in spam for recipients. Verify that forwarding rules work correctly.
SEO verification
Protect your search engine rankings by verifying that robots.txt is correct and does not contain unintended blocks. Check that your sitemap is reachable and up to date. Verify canonical URLs to prevent duplicate content. Make sure no unintended noindex tags have been added. Report the address change in Google Search Console if your domain has changed.
Phase 6: completion
Wind down the old hosting
Keep your old hosting active for at least one to two weeks after a successful migration. This gives you a safety net if unexpected problems appear. Make a final backup of the old hosting for your archive. Only then can you cancel the old hosting.
Update documentation
Update all your documentation with the new details: new server access, new database credentials, new email configuration. Inform team members or external parties who need access about the changed details.
Set up monitoring
Set up monitoring on your new environment. Uptime monitoring warns you if the site becomes unreachable. Error monitoring detects problems early. Configure a backup schedule on your new hosting. Consider security monitoring for extra protection.
Emergency plan if something goes wrong
Even with perfect preparation, something can go wrong. Have an emergency plan ready. The fastest fix for problems is to point DNS back to your old hosting, which is why you keep it active. You can do a backup restore on the new hosting if there are data problems. Contact the support of your new hosting for help. Document what went wrong for later analysis and to prevent a repeat.
A website migration requires preparation, patience, and systematic work. Do not rush, test thoroughly, and keep a safety net. With this checklist you minimize risks and ensure a smooth transition to your new hosting environment.
Website migration: timeline and planning
A website migration goes best when you follow a clear schedule. Below you find an overview of the phases of a website migration.
| Phase | Duration | Tasks | Priority |
|---|---|---|---|
| Preparation | 1-2 weeks | Backup, inventory, plan | High |
| Website migration execution | 1-3 days | Files, database, DNS | High |
| Testing | 2-3 days | Functionality, links, SEO | High |
| Monitoring | 1-2 weeks | Performance, errors, SEO | Medium |
Essential steps in a website migration
- Make a full backup of files and database before the website migration
- Choose reliable web hosting as the new destination
- Verify your domain name DNS settings for a smooth switch
- Test the new environment thoroughly after the website migration
- Check all internal links and redirects after the website migration
- Install an SSL certificate on the new server
- Consider a VPS for better performance after the website migration
A well-planned website migration minimizes downtime and SEO loss. Use our domain name checker to check whether your domain is set up correctly after the migration.
Website migration checklist: the detailed preparation
A successful website migration begins weeks before you actually move files. The preparation phase determines whether your migration goes smoothly or turns into a nightmare.
Two weeks before the migration
Start two weeks in advance by inventorying all your website assets: files, databases, email accounts, DNS records, SSL certificates, cronjobs, and custom server configurations. Make a spreadsheet with all items and their current status. Lower the TTL of your DNS records to 300 seconds, which makes the DNS change propagate faster later. Test the new hosting environment by installing a copy of your website and testing it thoroughly.
One week before the migration
Make a full backup of all websites, databases, and email. Inform involved parties (colleagues, clients) about the planned migration and possible short downtime. Prepare a runbook with exact steps, time estimates, and contact persons for emergencies. Check whether your new hosting supports all required software: the right PHP version, database version, and extensions.
Website migration checklist: the migration itself
On the day of the migration, follow the website migration checklist step by step. Do not rush and check every step before you continue.
Transfer files and databases
- Make a current backup (not last week's backup, but a fresh one)
- Upload all website files to the new server through FTP or SSH
- Create databases on the new server and import the SQL dumps
- Adjust configuration files: database name, username, password, and hostname
- Install an SSL certificate on the new server
- Test the website on the temporary address or through a hosts file adjustment
DNS change and go-live
When everything works on the new server, it is time for the DNS change. Point your nameservers or A records to the new server. Monitor the DNS propagation through whatsmydns.com. Keep the old server active for at least 48 hours, because during propagation traffic can still arrive at the old server. Enable caching mechanisms and verify that everything functions correctly.
Website migration checklist: aftercare and verification
The migration is only successful once everything works correctly after the move.
Post-migration checklist
- Check all pages - Use a site crawler to find broken links and 404 errors
- Test forms - Fill in every contact form and check whether messages arrive
- Test email - Send and receive messages on all email addresses
- Measure speed - Compare load times with your baseline measurements from before the migration
- Search Console - Check for crawl errors in Google Search Console
- Analytics - Verify that Google Analytics and other tracking tools work correctly
- Backups - Set up automatic backups on the new server
Common mistakes after migration
The most common mistake is canceling the old hosting too quickly. Keep it active for at least 30 days as a fallback. Do not forget to check your robots.txt, because it is sometimes accidentally set to Disallow, which stops search engines from indexing your site. Also update hardcoded URLs in your database that still point to the old address.
Website migration checklist: specific CMS migrations
The website migration approach differs per CMS. For WordPress you use a migration plugin such as Duplicator, All-in-One WP Migration, or UpdraftPlus that automates the entire process. For Joomla you use Akeeba Backup for a full site export and import. For Drupal, the Backup and Migrate module is the standard choice. Static HTML websites you move easily by downloading all files and uploading them to the new server. For every CMS migration, after transferring you have to adjust the database connection details and check all URLs for references to the old domain or server.
Website migration: when to bring in professional help
Not every website migration is one you can do yourself. Bring in professional help when you have to migrate multiple websites at once, your website uses complex server configurations, you have an online store with active orders that must not be lost, or when you have no experience with databases and FTP. Many hosting providers, including Theory7, offer free migration assistance. This saves you hours of work and reduces the risk of mistakes. A professional migration also guarantees that your SSL certificates, DNS records, and email configuration are transferred correctly.
Website migration: summary and conclusion
A successful website migration stands or falls with the preparation. Start two weeks in advance with inventorying and planning. Always make a full backup before you start. Test the new environment thoroughly before you carry out the DNS change. After the migration, monitor all aspects of your website: pages, forms, email, speed, and SEO. Keep the old hosting active for at least 30 days as a fallback. With this approach, every migration goes smoothly and without data loss. At Theory7 we offer free migration assistance to make the process as simple as possible.
Website migration: frequently asked questions
We answer the most frequently asked questions about website migration here. How long does a migration take? You migrate a simple website in a day, a complex site with database and email in one to two weeks. Can my website go offline? Not if you first set everything up with the new provider and only then change the DNS. Do I lose my SEO positions? Not if you keep all URLs intact and set up 301 redirects for any changed URLs. Do I have to migrate my email separately? Yes, email requires separate attention: create accounts with the new provider and synchronize messages through IMAP.
Website migration: tools and utilities
The right tools make a website migration considerably easier. For WordPress, All-in-One WP Migration is the most popular migration tool: it exports your complete website including database, theme, and plugins in one file. Duplicator Pro offers similar functionality with more control over the migration process. For non-WordPress websites you use FileZilla for FTP transfer and phpMyAdmin for database export and import. DNS Checker (dnschecker.org) helps you monitor DNS propagation after changing nameservers. GTmetrix and Google PageSpeed Insights verify performance after the migration. At Theory7 we offer free migration assistance for clients who want to move their website.
Website migration: minimizing risks
Minimize the risks of your website migration by following a structured approach. Always make a full backup before you start and keep it in a safe external location. Test the new environment thoroughly using a temporary URL or hosts file adjustment. Enable a staging environment to test changes without affecting your live website. Schedule the migration during a quiet moment, preferably outside office hours. Communicate the planned migration to your team and important stakeholders. Prepare a rollback plan in case unexpected problems occur after the DNS change.
Sources and references
- Google PageSpeed Insights (pagespeed.web.dev)
- Cloudflare — Learning Center (cloudflare.com/learning)
- GTmetrix — Website Performance Testing (gtmetrix.com)