DigiHosts
tutorials

How to Migrate Your WordPress Site to a New Host (Without Downtime)

Step-by-step guide to moving your WordPress site safely. No technical skills required — we cover free tools and manual methods.

ML
Maria Lopez
·March 15, 2026·15 min read
Share:

Before You Start

Migrating a WordPress site can feel daunting, but with the right approach, you can move everything — posts, pages, media, themes, plugins, and databases — without losing a single byte of data or experiencing downtime.

Prerequisites

Before starting, make sure you have:

  • Access to your current hosting account (cPanel or dashboard)
  • Access to your new hosting account
  • FTP client (FileZilla) or file manager access
  • About 1–2 hours of time

Method 1: Using a Plugin (Easiest)

The simplest way to migrate is with the All-in-One WP Migration plugin. It handles everything automatically.

Step 1: Install the Plugin

In your WordPress dashboard, go to Plugins → Add New → search for "All-in-One WP Migration" → Install → Activate.

Step 2: Export Your Site

Navigate to All-in-One WP Migration → Export. Select "File" as your export method. The plugin will create a downloadable archive of your entire site.

Step 3: Set Up WordPress on New Host

Install a fresh WordPress on your new hosting account. Most hosts have 1-click WordPress installers. Install the same All-in-One WP Migration plugin.

Step 4: Import

Go to All-in-One WP Migration → Import on your new site. Upload the archive file from Step 2. The plugin will handle everything else.

Step 5: Update DNS

Point your domain to your new host's nameservers. This is done in your domain registrar's dashboard. DNS changes take 24–48 hours to propagate globally.

Method 2: Manual Migration (More Control)

For larger sites or when you need full control over the process.

Step 1: Backup Your Database

Access phpMyAdmin on your current host. Select your WordPress database. Click Export → Quick → Go. Save the .sql file.

Step 2: Download All Files

Connect to your current host via FTP. Download everything in your public_html or www directory. This includes wp-content (themes, plugins, uploads), wp-config.php, and all WordPress core files.

Step 3: Create Database on New Host

In your new host's cPanel, create a new MySQL database, a database user, and assign the user to the database with all privileges.

Step 4: Import Database

Open phpMyAdmin on the new host. Select the new database. Click Import. Upload the .sql file from Step 1.

Step 5: Update wp-config.php

Edit wp-config.php and update the database name, username, password, and host to match your new hosting setup.

Step 6: Upload Files

Connect to your new host via FTP. Upload all files to the public_html directory.

Step 7: Update DNS

Same as Method 1 — update your domain nameservers.

Avoiding Downtime

The key to zero-downtime migration is to keep your old site running until DNS has fully propagated to the new host. Here's how:

1. Don't cancel your old hosting immediately

2. Set up the new site completely before changing DNS

3. Test the new site using a temporary URL or hosts file modification

4. Once DNS propagates, verify everything works

5. Wait 48 hours, then cancel the old host

Post-Migration Checklist

  • Test all pages and posts for broken links
  • Verify media files load correctly
  • Test contact forms and other interactive features
  • Check SSL certificate is active
  • Update any hardcoded URLs in the database
  • Re-submit sitemap to Google Search Console
  • Test site speed on the new host

Need Help Choosing a New Host?

Use our AI Hosting Advisor to find the best host for your specific WordPress setup, or browse our Hosting Directory to compare providers side by side.

WordPressMigrationTutorial
Was this article helpful?