Moving WordPress site to a new host for FREE! Ultimate guide (Updated 2023)

Updated on By

Thinking to migrate or moving WordPress site – to live server, or to a different server, or to a new domain?

It does look like a lot of tough work, doesn’t it?

But don’t worry, this article about moving WordPress site provides you with step by step description on how you can do it yourself?

Here’s your complete guide on

But before we begin with WordPress website migration, we need to have a backup. So, let’s first discuss how you can backup your WordPress website?

Backup before moving WordPress site

Before you start moving WordPress website, you should make sure that you have a complete backup of your website.

A backup of your website can be your live saver if anything goes wrong while performing the migration. If your site crashes or data is lost, or it simply just doesn’t work on the new platform, you can restore the backup and resume your business with your website.

Therefore, backup is a must!

Here, I’ll show you two simple ways to which you can back up your website.

  1. Backup using the server option
  2. WordPress website backup using plugins

Backing up your website using the option provided by the server

We’ll call it manual backup when you use the tools provided by WordPress or your host. Because here, you’ll be performing some steps to have your WordPress site back up.

Backing up your WordPress host:

Your server has the facility to let you have a local (safe-keeping) copy of your WordPress site. Taking a backup of your WordPress site using the options here is manual work, but it is simple and easy.

Almost all of the control panels let you choose if you want to have a full website backup or a partial backup by choosing the tables and a separate WordPress files backup.

Click the Download a full website backup button to copy full website data on your local computer.

How you can save the backup from your server can be different from server to server. But basically, you’ll find the option to backup your site right on the dashboard.

The process has to be simple. You are supposed to always go for a full website backup even when there are options for custom backup.

Backup WordPress website through plugins:

One of the best reasons why I love WordPress is the availability of free and paid plugins for various purposes.

And here we have a variety of plugins that you can use to back up a WordPress website.

There are a variety of plugins that you can use to backup WordPress website. There are plugins that will automatically backup your website at determined duration. And plugins that will let you save your backup offsite. You can choose any of them that you like as per your requirements.


Get Hosting

Signup now to get our discount – only $2.95/month.

Templatic Themes fans get a special low price when hosting with Bluehost. Signup and claim this deal.

Moving WordPress Site

Once you have the backup of your website ready you’re all set to move your website. Here, we’ll talk about moving WordPress site

How to upload WordPress website from localhost to server?

Using WordPress on localhost is really easy. If you have a site on localhost and you will have to publish WordPress site by uploading to a live server to make it accessible on the internet. 

Generally, you can install a program like WAMP or XAMP and create your website. So when you are in the preliminary stage of website development, you won’t need to work with a live site.

You can use all the settings and explore the options to create a local copy of your website. When this local copy of your website is ready, you can upload it to the server using one of the following ways:

  1. Through plugin
  2. Manually moving your WordPress website through FTP

Uploading your website to the server with a plugin

No matter what way you prefer to move WordPress from the local server to live site, backing up your site is a must.

So first, we will take a complete backup of our website.

Now, we don’t have to worry much if we mess up the website’s setup while trying to upload WordPress website from localhost to cPanel

To upload our website to the live server, we’ll use the plugin called the Duplicator plugin.

While on the local host, you can search for the duplicator plugin and download it. You can also download the duplicator plugin from here.

The duplicator plugin will help you for both, backup and migration and it’s free.

How to use Duplicator plugin?

An alternate for the duplicator plugin is the Backup buddy plugin. It is a paid plugin and hence comes with some extra features.

The steps for moving WordPress site from localhost to server with the Duplicator as well Backup buddy plugin is almost identical. Here we’ll see how you can do it with the help of the FREE Duplicator plugin.

So now, we’ll install the duplicator plugin on the local host to get started.

Once you download the plugin, you can log in to your WordPress Dashboard. Navigate to Plugins >> Add new to install it.

Upload the zip file of Duplicator plugin and press install. Once the plugin is installed, you can activate it.

Upon activation, you will be shown a screen like the one shown in the screenshot:

We don’t have any packages yet, so now we’ll create a package.

Pressing next will lead you to the next step. This will conduct a scan and show you the report. It generally indicated if the file sizes are too large, or any other problem.

The WordPress Duplicator plugin will create two files in a package –

1. The zip file of your website’s data – The archive file
2. A PHP file, which is the installation file

Once the export is ready, you can download it

Now using FileZilla, you can log in to your site on the server.

FileZilla is free too. You can access the files on your server or upload new files on the server using this program.

What we’re going do is to upload our website’s file to the server.

So now, you can navigate to the public_html folder, and paste your files there. Or you can copy the files to any folder you want to. Copying the files separately will make your work easier.

It takes a little time for the archive file to the be copied on the server, depending on its size.

Once the files have been uploaded on to the server, you can click the installation file to install your website on the server.

Run the installer.php file and you’re ready to go.

How to upload WordPress website from localhost to cPanel manually

Using a plugin to upload your website to the server is the easiest way.

However, if due to any reasons, you don’t want to use a plugin to make WordPress site live, you can do it manually. Without downloading and installing any plugin on your website.

Even though there’s a lot of manual work, this process doesn’t take much time as well as efforts. Have a look at the steps and you’ll have a brief idea of how it will work:

Export your WordPress files and databases

For moving WordPress site, we’ll first need to have the WordPress files as well as the MySQL database handy.

While we used the Duplicator plugin, it would automatically archive the WordPress files zip and the installer file, here, we won’t have an installer file.

However, the two things we will need here are:

  1. WordPress files set
  2. The Database

Extracting the Database files to manually move WordPress site to a live server

Moving WordPress site - export db

Access your phpMyAdmin panel by navigating to http://localhost/phpmyadmin/.

From the verticle menu, Click on the database name you want to export.

Then from the horizontal menu on the top of your phpMyAdmin dashboard, choose “Export” option.

The export tool will let you export the whole database, or you can choose the tables you want to export using the “custom” option.

As we are trying to copy the whole website to the live server, we won’t use the custom option.

Also, the drop-down below will let you select the format in which you want to export your database. By default, it is SQL and that is what we need.

Now, click the go button and your database will be exported and saved to your local drive.

Moving WordPress website - Export sql database

Uploading WordPress files to the server

To upload the WordPress files to the server, reach the location of the folder on the server through FTP. Now using the left panel on your FTP window, find the local folder containing files on your WordPress website.

Uploading the database to server

Once the transfer is complete, you will have to create a new database for your WordPress website on the server.

You can click on the MySQL Database option on your cPanel and create a new database. The database has to be blank, without any table, so that we can export the tables from your local SQL backup.

Provide a name for the database and click the create the database button. Along with this, you can create a username and password to access this database. We’ll see how in the steps to follow.

You will be asked to create user details, you can choose a username and generate or choose a password

Next, you can associate the user with the database by choosing the database name and the username.

Now is the time you access this database and import the SQL database on the server using phpMyAdmin. Find the database you just created from the lefthand side panel.

Navigate to the import menu, and import the SQL database from your local computer.

Connecting the live database with your files on the server (uploaded with FTP)

To do this, navigate to the options table in your database. Here, my prefix is wp because I didn’t change it, so my table name will be wp_options.

Click on the table name. This will show you to the content of the table. The first option siteurl and the second, home – both navigate to the localhost. We will replace them with our site address using the edit option.

Also, connect to your FTP, and find the wp-config.php file. You will have to update this file with the new database name and password.

Now you have to replace the username and the password in this file with the username and password you’ve just created on the live server.

With these steps, your site should be ready to go!

How do I move my WordPress site from one server to another?

There are many reasons why you would like to move your WordPress website to a different server. The reason can be any – slow server, security issues, or maybe you just found a service that is much affordable.

Backup before you transfer your website’s files to your new web hosting

Before we start migrating a WordPress site to a new server, back up your website.

For moving WordPress site to a new server, you first have to copy them to your local computer.

You can do this by using an FTP client like FileZilla. Connect to your remote server using FileZilla so that you can access the folders/files on your server.

Now you can copy all the files/folders available under your website’s directory to your computer by creating a folder.

This may take a little time depending upon the size of files and images stored on your website.

 Export the database to move WordPress site to new host

Now, login to your cPanel and find the phpMyAdmin control panel.

From the list on the left-hand side, select the name of the database associated with your website. Click the database name on the right side and choose the export menu.

The process of exporting database from the localhost as well as the server is the same.

Pressing “Go” will export a copy of your database to your local computer.

Move WordPress site to a new server without using a plugin

Again, we’ll start with a backup. For backing up your website from the server, you can log in to the cPanel of the server where your website is hosted.

On the dashboard, you’ll find an option to backup. Here, we won’t go for a full website backup but instead, opt for partial backup where we’ll back up the database as well as the WordPress files.

To do so, log in to your new server using the cPanel details they provide. If you want to create your website at the root of your domain, you can do so very easily. Or if you already have your website in some other directory, you can easily move WordPress site to root.

Now that we have a separate file for the database as well as the WordPress files, we can move them to another server.

The process here will be similar to the one we followed while installing WordPress site to the server from the local host.

Step 1: Upload the database to the server

Login to your cPanel and find the MySQL database option to create and transfer WordPress databases for your website.

Follow the steps to create a new database on the new server. Also, create a user and add it to that database as shown here.

Now, go to the phpMyAdmin option, and the database name will start appearing on the lefthand side panel. Click on the name of the database you just created and go to the import option.

From here, you can upload the SQL file that you downloaded from the previous server. With successful import, your database will be populated with all the required tables for your website.

Step 2: Upload the files to the relevant folder on the server using FTP

Using some FTP program such as FileZilla, upload the WordPress files that you have in your backup folder to the root directory, or any subdirectory depending up the location you want.

Step 3.  Connecting the live database with your files on the server (uploaded with FTP)

The steps to connect the database to the server files remain the same as we discussed earlier.

All you have to do is to update the wp.config file with the new database name and username/password and the database table options with the new URLs.

After changing WordPress URLs, you can test your website for missing images, broken link, etc.

How do I move my WordPress site to a new domain?

You might want to move WordPress to a new domain for a variety of reasons like rebranding or moving to a stronger/more suitable domain.

While moving WordPress site to a new domain is made easier with the latest tools and techniques but still, I recommend it only when it’s really necessary.

Because moving WordPress site to a new domain will (temporarily) affect your search engine rankings and traffic. However, over time your rank and traffic both will be restored. But you have to be a temporary slow down of traffic inflow in your website.

Therefore, don’t try to move your domain prior to any important launch or event on your website.

So, let’s begin with the steps to moving WordPress site to a new domain

Our first step will be definitely – Backing up your WordPress website with a plugin.

Now, for moving the domain name, we’ll copy the files from your existing domain and paste them into the new domain.

To do so, first, we will use the duplicator plugin.

You can create a new package backup as shown in the previous section. With the package, you will have an installer.php file as well as a zip of your website’s static files.

Make sure that the directory on your new domain where you want to set this website, is completely empty. Now we will move WordPress file Using FTP.

Once the files are uploaded, you can run the installer.php file.

If the domain name is and you have uploaded the files to the root directory, then you can run this file by –

The installation wizard will ask you to define database details for the new website. After providing proper information, you can press “Run deployment”.

The installer will make the necessary extractions and install your website for you. The installation process might take some time depending on the size of your website.

Next, the deployer will let you make a few settings for your new WordPress install. It will automatically fill up this form for you with the previous URLs but you can replace them with the ones you wish.

Once done, press update.

Setting permanent 301 for the old domain and URLs

If you had visitors accessing your website through your old domain name(which in most cases is true), this step is most important.

Generally, domain name becomes the identity and the permanent address of your website, therefore changing domain name frequently, is not a good idea.

Setting a permanent redirection helps your visitors smoothly experience and browse your WordPress website without being affected by the domain change.

So we will set the permanent 301 redirections on our old site. For this, we’ll have to access the .htaccess file.

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{HTTP_HOST} ^$ [OR]
  RewriteCond %{HTTP_HOST} ^$
  RewriteRule (.*)$$1 [R=301,L]

Providing redirects is important from the SEO point of view too. We won’t consider our domain transfer successful or complete until we’ve provided the redirects.

After steps

On completing the deployment, the plugin will inform you about a few changes you would like to make to your new website.

First is the permalinks settings. Login to your WordPress dashboard and navigate to Settings >> Permalinks to set the link structure for your pages/blogs. 

Then you can proceed to an in-depth, thorough check for missing images, page not founds, broken links, etc.

Outsourcing your WordPress website migration

Another way for moving wordpress site to new host is by outsourcing the whole migration process. Even though using WordPress plugin, you can do it yourself effortlessly, you might want to outsource the migration process due to time constraints or any other issue:

The two mentioned below are the best companies you can go for WordPress migration services. is a WordPress support service providers that can help you with a variety of WordPress website routines. You can hire them to migrate WordPress site.

moving wordpress site to new host - Custom WordPress services can be your solution for:

  • WordPress website migrations
  • SEO audits
  • Custom WordPress development
  • Website maintenance work
  • Security and performance monitoring is, in fact, a one-stop solution for professional help regarding your website. So if you are looking for experts to get your work done, you can look forward to their fulfilling service.

Price: Based on consultation. Get in touch with them to know how much they would charge for your website migration.


Custom WordPress site migration service

Fantasktic is the migration service experts that are specialized in migrating WordPress sites. Besides that, they also provide a few other services like post migration services, multisite or special case migrations, moving non WordPress websites to WordPress, support, etc.

Also, you can request support for your enterprise solution.

You can write them at [email protected] and get a quote for your request

Over to you…

With all the options mentioned in this article, you can surely find a solution for moving WordPress website. Choices are many and you can choose according to your requirements.

Migrating WordPress website needs to be a careful and thoughtful process. Even though with all the tools and technology, making it easy to move WordPress site from localhost to server, server to server and to a new domain, you have to be very careful. You cannot change your decision regarding this every now and then, it has to be a long-term decision. So be careful about what you choose.

Or, We can Move your WordPress Website for FREE!

When you subscribe to our hosting partner using this link, our team will will safely and securely migrate your WordPress website for FREE. Simply contact us with necessary details after you purchase the hosting and we will handle the rest.

Yes, migrate my site for FREE!.

Before moving WordPress site, you need to make sure that the new server or domain name is fair and at least guarantees you the same advantages as your previous host/domain (if not more).

And once you’re sure that you want to migrate, you can choose one of the methods mentioned here and re-publish WordPress site.

If you have already tried moving WordPress site, do let us know how that went?

Feel free to share your experience/opinions/views on WordPress website migration and backup using the comment section below.

Share This Post:
Disclosure: This page contains external affiliate links that may result in us receiving a commission if you choose to purchase mentioned product. The opinions on this page are our own and we don't receive additional bonus for positive reviews.