Migrating a WordPress site to a new host does not have to mean hours of downtime, broken pages, or a stressful DNS guessing game. This guide gives you a practical, reusable migration checklist you can follow before, during, and after a move, whether you are changing WordPress hosting for better performance, cleaner management, or a more scalable web hosting plan. The focus is simple: preserve your live site, test the copy properly, switch traffic carefully, and verify everything that matters once the move is complete.
Overview
If your goal is to migrate a WordPress site to a new host with minimal downtime, the safest approach is not to move fast. It is to move in a controlled sequence.
A WordPress hosting migration usually involves four separate layers:
- Files: your WordPress core files, themes, plugins, uploads, and custom assets
- Database: posts, pages, settings, users, WooCommerce data, forms, and plugin configuration
- DNS management: the domain records that determine where visitors are sent
- Services around the site: SSL, email routing, CDN settings, backups, cron jobs, redirects, and caching
Many failed migrations happen because one of those layers is treated as an afterthought. For example, a site may copy over correctly but still break because the DNS records were updated too early, the SSL certificate was not reissued, or the wp-config.php file still points to the old database.
Before you start, separate two questions that are often mixed together:
- Are you moving the website hosting? This changes where the WordPress site runs.
- Are you transferring the domain registration too? This changes where the domain is managed, which is a different process and usually does not need to happen on the same day.
In most cases, you can change the WordPress host first and leave domain registration where it is. That reduces risk and makes DNS management easier. If you need help understanding the difference, see WordPress Hosting vs Regular Web Hosting: What Actually Changes? and Domain Transfer Checklist: How to Move Your Domain Without Downtime.
Use this migration order as your baseline:
- Audit the current site
- Create a verified backup
- Prepare the new hosting environment
- Copy files and database
- Update configuration
- Test on the new host before public cutover
- Lower DNS TTL if practical
- Switch DNS
- Monitor traffic, forms, login, checkout, and errors
- Keep the old host active until the move is clearly stable
If your new provider offers managed WordPress hosting or a guided migration tool, that can reduce manual work, but the checklist still matters. Automation shortens steps; it does not remove the need to verify the result. For host selection criteria, see Best Managed WordPress Hosting Features to Look For Before You Migrate.
Checklist by scenario
This section breaks the migration process into practical scenarios so you can use the parts that fit your setup.
Scenario 1: Standard WordPress site on shared or managed hosting
This is the most common case: one website, one database, no major custom deployment workflow.
- Inventory the site
List the current PHP version, WordPress version, active theme, active plugins, cron tasks, redirects, SSL details, and any external services tied to the site. - Create a full backup
Export the database and copy the entire web root, especially wp-content/uploads, custom theme files, and must-use plugins if present. Do not rely on “backup exists” as proof; confirm that the backup can be downloaded and opened. - Check compatibility on the new host
Confirm PHP version support, database version compatibility, storage limits, and whether the new hosting control panel behaves differently from the old one. - Set up WordPress on the new host
Create the new database, database user, and install location. Some hosts create this automatically through a migration wizard. - Move files and database
Use SFTP, SSH, a control panel file manager, or a trusted migration plugin. Import the database into the new environment. - Update wp-config.php
Set the correct database name, user, password, and host. If table prefixes differ, verify them carefully. - Test using a staging URL, temporary domain, or hosts file override
Do not point public DNS yet. First check homepage rendering, login, navigation, media, permalinks, and contact forms. - Regenerate permalinks
In WordPress admin, save permalinks again to refresh rewrite rules if needed. - Install or issue SSL on the new host
Make sure the site loads over HTTPS before or immediately after DNS cutover. - Update DNS when ready
Point the domain or relevant A/AAAA/CNAME records to the new host. Keep the old hosting account active while DNS propagates. - Monitor the live site
Check logs, analytics, form submissions, admin login, and frontend performance for at least 24 to 72 hours.
Scenario 2: WooCommerce or other dynamic WordPress site
Stores, membership sites, booking systems, and community sites need extra care because data changes constantly.
- Schedule a quiet migration window
Choose a lower-traffic period to reduce the gap between the final sync and DNS cutover. - Minimize content changes during the move
If possible, pause product edits, major publishing, or user-generated changes during the final migration stage. - Capture a final database sync close to cutover
A backup from yesterday may not include recent orders, form entries, or account changes. - Test transactional functions
Verify cart behavior, account login, password reset, checkout flow, payment gateway callbacks, tax/shipping rules, and notification emails. - Review webhooks and API callbacks
Some integrations use fixed IPs, URLs, or firewall rules. These may need updating after you change host. - Confirm scheduled tasks
WooCommerce subscriptions, email queues, and cleanup jobs can fail if cron configuration changes. - Keep old hosting available longer
For dynamic sites, do not cancel the previous service immediately after the DNS switch.
Scenario 3: WordPress site with custom development workflow
If the site uses Git deployment, Bedrock-style structure, Composer, object caching, or server-level rules, treat the move as a deployment project rather than a simple copy.
- Document server dependencies
List Nginx or Apache rules, PHP extensions, Redis or Memcached usage, WP-CLI needs, image processing libraries, and cron commands. - Mirror the runtime environment
A migration often fails because the code works but the stack differs. Match versions wherever practical. - Review path assumptions
Absolute paths, custom includes, and upload directories may need adjustment. - Verify environment variables
API keys, salts, cache settings, and mail service credentials should be set correctly on the new host. - Test CLI and deployment hooks
Run cache flushes, database migrations, or post-deploy commands before making the new environment public.
Scenario 4: Moving to VPS hosting or cloud hosting
When you move from shared hosting to VPS hosting or cloud hosting, you gain flexibility but also take on more responsibility.
- Plan the server stack
Decide on web server, PHP handler, database engine, backups, firewall, fail2ban or equivalent, and monitoring before the site is copied. - Harden the environment
Disable password-only root logins where possible, set up SSH keys, update packages, and restrict access. - Prepare backups before go-live
Do not treat backup setup as a later task. Configure retention, test restores, and store copies outside the server. - Benchmark after migration
A stronger plan does not guarantee a faster site unless caching, database tuning, and image handling are set correctly.
If you are still deciding between shared hosting, VPS hosting, and cloud hosting, see Shared Hosting vs VPS vs Cloud Hosting: Which Option Fits Your Website in 2026?.
What to double-check
After the content is copied but before you consider the migration complete, run through this verification list. This is the part many site owners skip, and it is where avoidable problems tend to appear.
DNS and cutover readiness
- Current nameservers are documented
- Existing DNS records are exported or copied
- A, AAAA, CNAME, MX, TXT, and any verification records are accounted for
- TTL was lowered in advance if you control it and if a faster change window matters
- Email records are preserved if email stays with the current provider
If you need a refresher on records, see How to Connect a Domain to Web Hosting: DNS Records Explained Step by Step.
WordPress application checks
- Admin login works
- Homepage and key landing pages load correctly
- Permalinks resolve without 404 errors
- Media files display from the correct path
- Theme settings and widgets carried over
- Forms submit and send notifications
- Search works
- Any caching plugin is reconfigured for the new environment
- Any security plugin does not block your own access after the IP change
SSL, redirects, and canonical behavior
- SSL certificate is active and valid on the new host
- HTTP redirects to HTTPS properly
- Preferred www or non-www version is consistent
- Canonical tags still point to the correct production domain
- Mixed-content warnings are fixed if URLs changed
Performance and reliability
- Page cache, object cache, and CDN settings are aligned with the new host
- Image optimization still works
- Error logs are clean enough to review, not filling with fatal or warning noise
- Scheduled backups are active on the new platform
- Uptime monitoring or external checks are in place
Search and tracking continuity
- Analytics code is still present
- Search console or verification tokens remain valid
- Robots.txt did not inherit a staging block by mistake
- Noindex tags are removed from production if used during testing
- XML sitemap remains accessible
Common mistakes
The quickest way to move a WordPress site without downtime is often to avoid the mistakes that create downtime in the first place.
Changing DNS before testing the new host
This is the classic error. Once traffic starts reaching the new server, every missing dependency becomes a live problem. Always test first through a temporary URL, preview environment, or local hosts file method.
Forgetting email-related DNS records
Website hosting and email routing are often separate. If you replace DNS records carelessly, the site may come back online while email breaks. Preserve MX, SPF, DKIM, and other relevant records unless you are deliberately changing email providers too.
Relying on a plugin without understanding its limits
Migration plugins are useful, but large media libraries, custom tables, server-specific rules, and timeout limits can still cause partial moves. Treat plugin success as the start of verification, not the end of it.
Canceling the old hosting plan too early
Keep the old account active until DNS propagation has settled, post-migration tests pass, and you are confident no recent content was written to the old database during the transition window.
Skipping backup restore testing
A backup that cannot be restored is only a hopeful archive. At minimum, verify that the database export opens properly and that file archives contain the expected WordPress structure.
Ignoring hard-coded URLs and serialized data
If the domain changes or a staging URL was used during testing, some URLs may still point to the old environment. Use WordPress-aware search-and-replace methods that handle serialized data safely.
Leaving staging protections in place
It is common to protect a staging copy with noindex settings, password protection, or blocked access. Useful in testing, harmful in production if left behind.
Assuming better hosting automatically means better speed
Performance depends on the full setup: caching, image delivery, plugin load, database health, PHP version, and theme efficiency. A new host can help, but only if the environment is tuned. If you are evaluating long-term fit, Best Web Hosting for Small Business Websites: Features, Limits, and Upgrade Paths offers a practical buying lens.
When to revisit
This checklist is worth revisiting any time the moving parts around your WordPress site change. Migration risk is rarely about WordPress alone; it usually comes from changes in infrastructure, traffic patterns, plugins, or operational habits.
Review and update your migration plan in these situations:
- Before seasonal traffic periods
If your site has busy quarters, campaigns, or launch windows, avoid last-minute host changes and re-check rollback steps in advance. - When your hosting plan changes
A move from shared hosting to VPS hosting or cloud hosting changes operational responsibilities, even if the site itself stays the same. - When key plugins or payment workflows change
Major updates to WooCommerce, membership systems, caching, or security plugins can change how a migration should be tested. - When DNS management moves to a new provider
Different DNS interfaces, defaults, and proxy settings can affect cutover behavior. - When your backup and restore process changes
Any change in backup tooling should trigger a fresh restore test before a migration project. - When your site grows beyond its current setup
Higher traffic, larger databases, and heavier media libraries often require a more deliberate migration approach.
For a practical next step, save this condensed action list and run it every time you change WordPress host:
- Audit current environment and services
- Create and verify a full backup
- Prepare the new hosting environment
- Copy files and database
- Update configuration and SSL
- Test privately before DNS cutover
- Preserve all needed DNS records
- Switch DNS carefully
- Monitor functionality, logs, and performance
- Keep the old host active until the move is fully stable
If you are planning the wider move, it also helps to review Best Managed WordPress Hosting Features to Look For Before You Migrate and How to Connect a Domain to Web Hosting: DNS Records Explained Step by Step. A good migration is less about one perfect tool and more about having a repeatable process you trust.
The calm way to change WordPress host is to treat the live site as something to protect, not something to rebuild under pressure. With a tested copy, careful DNS timing, and a disciplined post-move check, you can migrate with little or no visible disruption to visitors.