Moving your WordPress website to another hosting provider may sound complicated, but with the right approach it is fairly simple. In this article I'll walk you through three methods: with a plugin, manually, and through your hosting provider.

Before you start

Before you get started with the move, there are a few things you need to arrange:

  • Make sure you have access to your current hosting (FTP or file manager)
  • Make sure you have access to your current database (phpMyAdmin)
  • Get your new hosting package ready
  • Write down your current WordPress version, theme and active plugins
  • Make a full backup of your site (just to be safe)

Got all that sorted? Then let's get started.

Method 1: moving with a plugin (easiest)

The easiest way to move your WordPress site is with a migration plugin. The most popular option is All-in-One WP Migration.

Step 1: install the plugin on your old site

  1. Go to Plugins > Add New
  2. Search for "All-in-One WP Migration"
  3. Click Install and then Activate

Step 2: export your website

  1. Go to All-in-One WP Migration > Export
  2. Click "Export To" and choose "File"
  3. Wait until the export is finished and download the file

This file contains your complete website: all pages, posts, images, themes, plugins and settings.

Step 3: install WordPress on your new hosting

On your new hosting you first need to do a clean WordPress installation. At Theory7 you can do this easily in DirectAdmin with Installatron. A few clicks and you have a working WordPress installation.

Step 4: import your website

  1. Log in to your new WordPress installation
  2. Install the same plugin: All-in-One WP Migration
  3. Go to All-in-One WP Migration > Import
  4. Upload the export file you downloaded earlier
  5. Wait until the import is finished

After the import you need to log in again with the login details of your old site.

Note: file size limit

The free version of this plugin has an upload limit (usually around 512MB). Is your site larger? Then you have a few options:

  • Buy the premium version of the plugin
  • Increase the upload limit through your hosting
  • Use method 2 (moving manually)

Method 2: moving manually

With a manual move you copy the files and the database yourself. This is a bit more work, but you have full control.

Step 1: download all files via FTP

  1. Connect to your old hosting with an FTP program such as FileZilla
  2. Navigate to the folder where WordPress is installed (usually public_html or www)
  3. Download the complete folder to your computer

This can take a while, depending on the size of your site.

Step 2: export the database

  1. Log in to phpMyAdmin on your old hosting
  2. Select the database of your WordPress site
  3. Click Export
  4. Choose "Quick" as the export method and "SQL" as the format
  5. Click Go and save the .sql file

Step 3: create a new database

In DirectAdmin (the control panel you use at Theory7), go to MySQL Databases to create a new database. Write down the database name, username and password.

Step 4: import the database

  1. Open phpMyAdmin in DirectAdmin
  2. Select the new database
  3. Click Import
  4. Upload the .sql file you downloaded earlier
  5. Click Go

Step 5: upload the files to your new hosting

  1. Connect to your new hosting via FTP
  2. Upload all WordPress files to the correct folder (usually domains/yourdomain.com/public_html)

Step 6: edit wp-config.php

Open the wp-config.php file and update the database settings:

define('DB_NAME', 'new_database_name');
define('DB_USER', 'new_username');
define('DB_PASSWORD', 'new_password');
define('DB_HOST', 'localhost');

Step 7: update the URLs in the database (if needed)

If your domain name changes, you need to update the URLs in the database. You can do this with a plugin such as Better Search Replace, or in phpMyAdmin with the following queries:

UPDATE wp_options SET option_value = 'https://newdomain.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://newdomain.com' WHERE option_name = 'home';

Note: replace 'wp_' with your own database prefix if you changed it.

Method 3: let us move your site

Don't feel like doing this yourself? At Theory7 we are happy to help you move your WordPress site. Contact our support and we'll discuss the options. In many cases we can take care of the complete migration for you.

Take a look at our WordPress hosting plans for fast and reliable hosting with personal support.

After the move

Once your site is running on the new hosting, there are a few more things to check:

  • Test all pages - Go through your site and check that everything works
  • Test forms - Send a test message through your contact form
  • Check images - Do all images load correctly?
  • Test the speed - Is your site fast enough?
  • Update your DNS - Point your domain to the new hosting (see also: DNS explained)
  • Install an SSL certificate - At Theory7 you arrange this for free with Let's Encrypt in DirectAdmin

Transferring your domain name

If you also want to transfer your domain name, that is a separate process. You need a transfer code from your current domain provider. Transferring a domain usually takes 5-7 days. Read more about transferring a domain name.

Tip: you can move your website first and test it on a temporary address, and only then transfer your domain name. That way you have no downtime.

Frequently asked questions

How long does a WordPress move take?

With a plugin you are done in 15-30 minutes. Moving manually takes 1-2 hours, depending on the size of your site and your experience.

Will I lose data when moving?

If you follow the steps carefully, you won't lose any data. Always make a backup first, just to be safe.

Do I need to set up my plugins again?

No, if you move the complete site (including the database), all your settings are kept.

Can I move my site without downtime?

Yes. First move your site to the new hosting and test it on a temporary address. Only then point your domain to the new server.

What if something goes wrong?

That's why you make a backup beforehand. If something goes wrong, you can always go back to the old situation. Need help? Our support is happy to help you.