How to Move WordPress Site to a New Host: Step-by-Step, No Downtime

How to Move Your WordPress Site to a New Host (Without Breaking a Sweat)
Changing web hosts feels like packing up your apartment with all your digital plants, pets, and precious memorabilia, and no, your website doesn't like to be moved any more than you do. The process can be intimidating: downtime demons, lost emails, horror stories about missing images abound. But don't worry, you're about to outsmart all that. This guide is your real-world, step-by-step roadmap for moving your WordPress site to a new host, whether you're a seasoned blogger, a small business, or just finally fed up with that budget host from 2014.
If you want a smooth migration, minimal downtime, and zero regret purchases (looking at you, backup plugin that keeps trying to upsell), stick with me. I'll walk you through the pragmatic, less-painful approach, sprinkled with mini war stories, suggestions for the best plugins/tools, and those "don't skip this." moments only someone who's done a whole lot of these can offer. Grab your coffee… let's get moving.
Key Takeaways
- Backing up your WordPress site, including all files and the database, is the essential first step in moving your site to a new host.
- Choose the migration method—manual, plugin-based, or host-assisted—based on your site's size, complexity, and your technical comfort level.
- Lower your domain's DNS TTL and record all DNS and email settings ahead of time to minimize downtime and prevent email disruptions during the host switch.
- Test your migrated WordPress site on a temporary domain or via hosts file changes before updating DNS to ensure everything works flawlessly.
- After migration, update SSL certificates, verify CDN and email configurations, and check for broken links or images to maintain site security and SEO.
- For mission-critical or complex WordPress site migrations, consider hiring a professional or using host-assisted migration services for a smoother process.
Start fast with Shared Web Hosting
The simplest, most affordable way to get online. Includes SSL, CDN, and solid performance.
Browse plansQuick overview: What this guide covers and who it’s for
This isn't just for developers. This guide is written for:
- DIY site owners (even if your coding skills stopped at MySpace layouts, back in the day)
- Creative agencies and freelancers migrating client sites
- Shopify-to-WordPress converts (yes, welcome to the dark/light side)
- Anyone stuck with a slow, unreliable, or just plain unfriendly host
how to move wordpress site to a new host, a high-level 60-second plan
Here's the stripped-down, don't-skip-the-essentials elevator pitch:
- Back up everything, site files AND database. Even the embarrassing draft blog posts.
- Choose the migration method: manual, plugin-based, or let your new host handle it. (Don't worry, we'll break down the pros and cons for each.)
- Prep the new host, create database, get SFTP details, double-check PHP version. (Pro tip: Set up a temporary or staging domain.)
- Move files and database using your chosen method.
- Test before going public (use a hosts file or temp domain).
- Update DNS records to point to your new host.
- Fix anything that didn't make the trip, images, permalinks, emails, SSL, and caching.
Don't panic. It's not easy, but it's very, very doable. If you can install a plugin, you're 80% of the way there.
Do you really need to move hosts? When to switch and how to choose the right new host
Honest moment: Not every WordPress user needs to move. But if you're here, I'm betting you're sick of slow load times, fishy billing tactics, or Level-1 "support" telling you to clear your cache for the fifteenth time.
Here's a quick checklist, if you're nodding along, it's time to find greener pastures:
- Uptime issues: Does your site randomly disappear? Did one too many outages cost you sales or search rankings?
- Speed: Even after optimizing images and plugins, is your site crawling like a dial-up hamster?
- Support: Do you get smart, fast help… or endless ticket loops?
- Backups: Nightmare scenario, no daily backups. Or, they want to charge you extra when you need one.
- Security: Are you getting proper malware scans, SSL, and free upgrades?
- Features/Pricing: Outgrown the shared plan? Need staging, advanced caching, SSH?
Performance, uptime, support, backups, features, and pricing checklist
When shopping for a new host, don't just fall for the biggest Black Friday discount (I speak from painful, wallet-lightening experience). Instead, grill them on:
- Real-world uptime stats (not just promises)
- Hosting location options (closer = faster for most visitors)
- Support quality (try the chat before buying, seriously.)
- Free SSL and easy renewals
- Automatic backups (daily, offsite preferred)
- Easy scalability for traffic spikes
- Fair, transparent pricing (including renewal rates)
Some personal favorites (at time of writing):
- SiteGround (support legends, great for most sites)
- Kinsta (for high-traffic/growth)
- Cloudways (flexible, pay-as-you-go)
- WP Engine (advanced dev tools)
- DreamHost (budget-friendly, surprisingly solid)
But hey, choose what fits your budget, location, and needs. Don't be shy to ask hosts for a free migration or hands-on support for your situation.
Pre-migration checklist (what to do before you start)
Nobody likes surprise heartbreak (especially if you've spent hours crafting pixel-perfect pages). Here's what you should absolutely do before clicking, uploading, zipping, or praying:
Full backups: files + database (recommended tools & verification)
Backup both your files and your database. Don't rely just on your host's automation, you want your own local copy. Tools like UpdraftPlus (free for most), Jetpack Backup, or good old cPanel File Manager + phpMyAdmin get this done.
Verify your backup: Download and unzip/test backups locally or on a staging server before migration. (Don't be this guy: I once migrated a site only to realize the backup folder was empty. Oops.)
Audit plugins, themes, and media: disable caching: note custom settings
Audit active plugins & themes. Are you actually using them? Remove any abandoned or sketchy add-ons to avoid issues at your new host.
Disable caching plugins (like W3 Total Cache, LiteSpeed Cache) before migration to avoid corrupt/incomplete files.
Jot down custom settings. If you've customized wp-config.php, .htaccess, or run custom cron jobs, take notes/screenshots before moving.
Lower DNS TTL, record current DNS, and prepare credentials (FTP, DB, control panel)
Lower your domain's DNS TTL (Time to Live) to 300 or less at least a few hours/day before switching hosts. This speeds up post-move propagation.
Save all credentials: Write down FTP/SFTP, database access, and control panel logins. Triple-check email account settings.
Record your DNS records (MX, email, subdomains, etc.) for reference. Don't trust your memory (or my memory, for that matter.).
Migration methods explained: manual vs plugin vs host-assisted vs WP-CLI
There's no single "right" way to move your WordPress site. Think of migration like choosing between a private car, a moving truck, a rideshare, or that one friend with a strong back and a pickup. Here's the lowdown.
Manual Method: You get hands-on, download files and database, set up new hosting, re-upload everything yourself. Best for tinkerers, custom sites, or if you love the aroma of FTP in the morning. Complete control, but room for human error.
Plugin Method: Duplicator, All-in-One WP Migration, UpdraftPlus, WP Migrate, these automate packaging, migration, and import (sometimes for free, sometimes paid). Great for most standard sites, non-technical users, and solo site owners. Can choke on very large sites.
Host-Assisted: Some hosts (Kinsta, SiteGround, WP Engine) offer guided or free migration services. Literally send them your login details and go grab a snack while they hustle. But there's often a queue, so plan ahead.
WP-CLI (Command-Line): For big, complex, or multisite migrations, WP-CLI is lightning-fast. You're running commands like a pro (or pretending to be one on your terminal), perfect for pros handling hundreds of sites.
When to use each method (site size, complexity, multisite, custom setups)
- Go manual for small/medium sites OR if you need to clean up junk during migration.
- Plugins are generally easiest for most modest-sized single-site moves.
- Host-assisted is the least stressful…and great for sites with ecommerce, heavy traffic, or extra technical pieces (like server-side caching).
- WP-CLI/SSH is best for pros, big agencies, multisite, or where you want scripting and insane speed.
My own rule: if you aren't sure, test with a staging version using your chosen method before you cut over the live site.
Step-by-step: Manual migration using cPanel / SFTP and phpMyAdmin
Ready to get your hands a little dirty? Here's how you do a manual migration, for when plugins glitch, or you just want to know everything made the trip safely.
Step 1, Export site files (wp-content, themes, plugins) via SFTP or cPanel
Log into your old host's control panel or SFTP. Download the entire WordPress folder (public_html or wherever WP lives). At a minimum, you must get the wp-content folder (themes, plugins, uploads).
Tip: Some cPanels offer a neat "Compress" feature to save time downloading.
Step 2, Export the WordPress database (sql export best practices)
Use phpMyAdmin (or adminer) to export your site database as a .sql file. Choose "Custom" export for large apps: check "Add DROP TABLE", choose utf8 encoding. Back it up, then back it up again. Paranoid? Good.
Step 3, Create MySQL database and user on the new host
In your new hosting panel, create a blank database/user (write down the credentials, seriously, don't just let LastPass do it all.).
Step 4, Import database, handle serialized data and search-and-replace safely
Import the .sql file to your new database with phpMyAdmin. If your site URL or folder path is changing, grab the free Better Search Replace plugin or the WP-CLI equivalent. Don't break serialized data, this plugin handles that.
Step 5, Upload files to new server, update wp-config.php, set permissions
Upload your site files to the new server. Edit wp-config.php with the new database name, user, and password. Double-check file and folder permissions (usually 755 for folders, 644 for files).
Step 6, Test on temp URL or hosts file before switching DNS
Before flipping DNS, preview your live site on the new server using the IP address or by editing your hosts file. Look for broken images, plugin glitches, or theme oddities. Only go live when everything sparkles.
Step-by-step: Migrate using plugins (Duplicator, All-in-One WP Migration, UpdraftPlus, WP Migrate)
Zero shame in using tools, especially when they save headaches.
When plugins are best and plugin-specific walkthroughs (create package → upload → run installer)
Duplicator: Creates an archive and installer script. Upload both to new host, run installer.php, follow the prompts. Handles database and files.
All-in-One WP Migration: Export site to a file, install plugin on new site, import that file. Simple UI, but free version has strict upload limits unless you pay.
UpdraftPlus: Backup to cloud (Dropbox/Google Drive), then restore on new host (with UpdraftPlus installed there too).
WP Migrate: Great for devs, has database find/replace in one click: premium supports full migrations.
Handling large sites and upload limits (chunking, FTP/SSH import, command-line)
For big sites: Use Duplicator Pro or All-in-One's paid versions to bypass upload caps. Some let you "chunk" large archives or import straight from FTP/SSH/URL. Worst case? Manual migration is your fallback.
Host-assisted and one-click migrations: what to expect
If you're allergic to stress (who isn't?), host-assisted migrations are magical. Most premium hosts offer to move your WordPress site for free or a small fee, just fill out a secure form with your login details and point them at the old site. Pros do the grunt work, and they'll usually report back with a full checklist.
How host migration tools work and questions to ask your new host
Ask BEFORE you buy: Will downtime be minimized? Do they handle SSL and email configs? Any migration limits for site size or number of domains? Is there rollback support if something goes wrong?
Some hosts do "push-button" migrations via a control panel, literally one click. But always, always check that everything actually works on the new host before canceling your old account.
Minimizing downtime: hosts file, TTL tactics, staging domains and sync strategies
So, you want zero downtime? Here's how to make visitors (and Google) barely notice the switch.
Use hosts file mapping to preview site before DNS change
Edit your hosts file (Windows, Mac, Linux) to point your domain to the new server's IP before flipping DNS. That way, you can browse/test the new site while the public still sees the old.
Tools: Hosts File Editor (Windows), Gas Mask (Mac), or just your favorite code editor + admin rights.
Incremental sync, rsync and database freeze windows for high-traffic sites
If you can't afford missed sales or lost comments, plan for a quick cutover window. Use plugins like WPvivid (to resync last-minute changes), or rsync (command-line file syncing) for huge sites.
For e-commerce or high-interaction sites, put the old site in maintenance/read-only for a few minutes during final sync. Warn users first, your future self will thank you.
SSL, HTTPS and security after migration
Nothing screams "amateur hour" like landing on your new site and being greeted by a gaping (Not Secure) warning. Take SSL seriously.
Migrating or issuing SSL certificates (Let's Encrypt, import certs, reissue on new host)
If your new host offers free Let's Encrypt SSL, activate it after moving but before switching DNS (again, test with hosts file.).
If you have a paid SSL, you might need to reissue/import certificates or grab the CRT/KEY/CA bundle from your old host. Ask support, don't just copy/paste.
After DNS change, double-check HTTPS redirects, mixed content warnings (missing padlock = usually missing images or scripts), and site URLs in Settings > General.
Email, MX records and other DNS services you must update
You'd be surprised how often folks kill their email (or worse, their client's inbox.) with a botched DNS move. Protect yourself and your reputation.
How to avoid email downtime: migrate MX records, SPF, DKIM, and third-party mail services
Before changing nameservers or A records, copy down all MX (Mail Exchange) records, SPF, and DKIM records for each domain. These control where your mail goes, and who's allowed to send it.
If you use G Suite/Google Workspace, Zoho, Microsoft 365, or another third-party provider, don't touch your MX records when switching host A records. But do verify mailbox setup on both hosts, just in case.
For safe measure, test sending/receiving mail post-migration from webmail and any configured mail apps.
CDNs, caching, and third-party integrations: what to update after migration
Edge caching, CDNs, and APIs, oh my. The modern website is a web of tiny dependencies.
Purge caches, update CDN origin, verify API keys and webhooks
If you're using Cloudflare or similar, log in and purge all caches after migration. Update the origin server IP if it's changed.
With custom plugins (especially eCommerce), double-check API key settings and webhook endpoints (Stripe, PayPal, email platforms, etc.).
Clear local, plugin, and server-side caches. Weird formatting or content not updating? Nine times out of ten, cache is the culprit.
Post-migration checklist: verify everything (SEO, speed, functionality)
Trust me, you'll sleep better having checked things off this list:
Check permalinks, images, forms, login, admin, and plugin compatibility
Log into your site, re-save Permalinks under Settings → Permalinks (forces WP to update rewrite rules).
Click through key pages: homepage, blog, galleries, contact forms. Broken images? Fix path issues with Better Search Replace.
Test admin login (ideally with two browsers). Check that all plugins and the theme survive the trip.
Search Console, Analytics, sitemap, robots.txt, and crawl/test for 404s or redirects
Re-add/reverify your site in Google Search Console and Analytics (if possible, track the new host IP or see if bot traffic changed).
Submit your new sitemap, check robots.txt, and run a crawl with Screaming Frog or Ahrefs to catch stray 404s. If you spot broken links, fix them fast.
Common problems and how to fix them (database connection, 500 errors, mixed content, missing images)
Don't freak out at that white screen of death, most issues have quick fixes.
Step-by-step troubleshooting recipes with commands and file locations to check
Error establishing database connection? Double-check credentials in wp-config.php and confirm the DB user has sufficient privileges.
500 Internal Server Error? Check .htaccess (reset it by just renaming), or review error_log in cPanel/file manager. Re-upload core files if needed.
Mixed content warning? Run Really Simple SSL plugin. Review all hard-coded URLs (especially in widgets or theme files).
Missing images? Confirm uploads directory path is correct, and permissions allow access (usually 755 for folders, 644 for image files). Sometimes, a find/replace on the media URLs helps.
When all else fails: disable all plugins (rename plugins folder via FTP) and reactivate one by one.
Rollback plan: how to revert safely if something goes wrong
Even the best of us have to hit CTRL+Z sometimes.
Keeping backups, DNS rollback steps, and communicating downtime to users
Always keep multiple backups: pre-move, post-move, and after every major step.
If the migration goes off the rails, you can point your DNS back to the old host within minutes (provided you kept it live and notes on all your records handy).
If your site will be down for longer than a coffee break, put up a maintenance message. Be transparent with your users, everyone loves an honest admin.
Remember: Migration isn't about never messing up, it's about bouncing back gracefully.
Advanced migrations: WordPress Multisite, very large sites, WP-CLI and SSH optimizations
Feeling brave? Welcome to Advanced Migration Mode.
Multisite export/import nuances, domain mapping and user migration
Multisites are a whole different animal, each subsite shares tables and media. Use WP-CLI (wp export/import) and premium plugins like WP Migrate DB Pro. Check domain mapping plugins and adjust user roles, as new IDs may differ.
WP-CLI commands for exporting/importing and serialized search-replace
Export posts, users, and more with wp export and wp import. Batch update URLs (including serialized data.) with:
wp search-replace 'olddomain.com' 'newdomain.com' --all-tables
For enormous sites, use rsync for files, and mysqldump for big DBs. SSH can turn an 8-hour FTP slog into a coffee break.
Tools, plugins and commands checklist (with links and short use-cases)
Here's a toolbox you'll thank yourself for bookmarking:
- Duplicator (link): Package+installer combo: fast for most single sites.
- All-in-One WP Migration (link): Simplest UI, free/paid versions.
- UpdraftPlus (link): Automated backups, cloud support, site restore.
- WP Migrate DB (link): Database transfer and URL rewriting, perfect for devs.
- WP-CLI (link): Command-line control for real pros, handles everything from search/replace to full-migrations.
- Better Search Replace (link): Safe URL swaps (handles serialization.), plugin-based.
Use these not just for migration, but as "site insurance". A little preparation, a lot fewer fires.
Estimated time, difficulty and cost: how long migrations typically take
Let's get real, your time investment depends on site size, method, and your caffeine tolerance.
Small sites (brochure style): 30 minutes to 1 hour with a plugin.
Medium eCommerce/blog: 1–3 hours, inc. DNS, SSL, and bug-bashing.
Giant/multisite/enterprise: Several hours to a full day, sometimes longer for DNS/global propagation.
Difficulty: If you've installed a plugin or managed your own updates, you can definitely use plugin or host-assisted migration. Manual and advanced/WP-CLI might need copy-pasting and a chill playlist.
Cost: Many plugins are free or donation-ware. Expect $0–$50 for premium versions if you hit upload caps, plus hosting upgrades if scaling.
When to hire a pro: managed migration services vs DIY
Nobody gets a medal for migrating their site solo (well, except for bragging rights at the next web designer meetup). If you get the cold sweats reading about terminals, FTP, or frequent eCommerce orders that cannot be missed, hiring a migration pro is 100% sensible.
Managed hosts (Devoster,Kinsta, WP Engine, Cloudways) and agencies often include migrations free with new plans.
Freelancers or agencies will charge $50–$250+ (depends on site size, complexity, urgency).
Outsource if: you're short on time, the site is mission-critical, or you just hate fiddling with tech.
Remember, DIY migrations are totally possible, just follow these steps, don't skip backups, and Google liberally. But don't let pride cost you traffic or sanity.
Have questions? Get in touch
Not sure which plan fits or how crypto billing works for you? We're here to help.
Contact usConclusion and next steps — ready-to-run migration plan
Alright, you've made it, take a virtual high-five, for real. Migrating your WordPress site isn't rocket science, but it does require checklists, backups, nerves of steel, and maybe a little stubborn optimism.
Here's your next move:
- Set up a test/staging environment, don't test live.
- Back up again, seriously, it's never too many.
- Try the migration method that fits your site's size, budget, and risk tolerance.
Have horror stories or pro tips? Pop them in a comment below or share in your favorite dev group. And when your site goes live at warp speed, buy yourself (and maybe your dog) a treat. You've earned it.
Frequently Asked Questions About Moving a WordPress Site to a New Host
What is the best way to move a WordPress site to a new host?
The best way to move a WordPress site to a new host depends on your needs and skills. You can migrate manually, use plugins like Duplicator or All-in-One WP Migration, or let your new host assist. Each method has pros and cons related to site size, complexity, and downtime.
How do I avoid downtime when moving my WordPress site to a new host?
To minimize downtime, prepare backups, lower your DNS TTL, and preview your site on the new host using a temporary domain or hosts file before changing DNS. Test everything thoroughly so your visitors barely notice the switch.
Are there risks of losing emails or images when moving a WordPress site?
Yes, lost emails or missing images are common migration issues. Before migrating, record and migrate all DNS, MX records, and email settings. Double-check your media files are backed up and verify images display correctly on the new host.
When should I consider switching my WordPress hosting provider?
Switch hosting providers if you experience frequent downtime, slow site speed, poor support, inadequate backups, or lack essential features and security. Upgrading can improve your website’s performance and safety.
Which plugins are recommended for moving a WordPress site to a new host?
Popular plugins for migrating WordPress sites include Duplicator, All-in-One WP Migration, UpdraftPlus, and WP Migrate. These tools automate backups and transfers, making the process easy for most users.
What post-migration steps should I follow after moving my WordPress site?
After migrating, update DNS records, test your site’s functionality, fix any broken images or links, re-enable caching plugins, and verify SSL. Also, re-add your site to Search Console and Analytics, and check for 404 errors or mixed content issues.
Ready to Experience Devoster?
Join thousands of satisfied customers with transparent pricing and lightning-fast hosting.