How to Move Your WordPress Site Using a Plugin
Home » Blog » WordPress » How to Move Your WordPress Site Using a Plugin

How to Move Your WordPress Site Using a Plugin

Updated:   WordPress 9 min read

Your support helps keep this blog running! Secure payments via Paypal and Stripe.


Migrating a WordPress site to a new host or domain doesn’t have to be a headache. Using the right plugin, the process can be smooth and efficient—as long as you follow the modern best practices. In this guide, we’ll walk you through a plugin-based migration step by step, highlight limitations you should know, and provide a post-migration checklist to ensure you don’t lose SEO, links, or functionality.

Backup is a MUST

Create a full site backup, including the database. You can use WP Migrate Lite, UpdraftPlus: WP Backup & Migration Plugin, or other methods. The UpdraftPlus free version can back up and restore a single site. For Multisite, you need to buy the UpdraftPlus premium version. The backup file created from the UpdraftPlus free version can not be used to restore the WP multisite. The WP Migrate Lite can create a full backup for the WP Multisite. It can also export the entire multisite network. Plus, it can run find and replace URLs across the entire multisite network.

Why You Might Migrate Your WordPress Site

There are several common reasons for moving your WordPress site:

  • Switching to a faster or more reliable host
  • Rebranding or changing domains
  • Fixing server issues or upgrading PHP
  • Consolidating multiple websites

Before doing anything, always back up your full site files and database — and plan for possible downtime or DNS propagation delays.

3 Primary Methods for Migrating a WordPress Site

WordPress lets you change almost everything you need. Because of these many customization options, your WordPress site can become complex. This complexity can cause problems when you try to move it to a new web host.

Some WordPress sites are Multisite (running many sites under one install), and some are single sites. Sometimes, migration plugins, even the paid versions, cannot move a Multisite correctly. In some cases, the new web host might not be able to move your site smoothly to their servers.

That is why I wrote about three different methods for moving your WordPress site. All these methods come from my own experience and should be helpful for you.

Method 1: Moving Your WordPress Site Manually

With this method, you are in charge of every step. This approach works for both single sites and Multisite installations.

  1. Database Migration: You will manually change the database settings and then import the database file to your new hosting account.
  2. File Migration: You will also manually move all your WordPress files to the new hosting.

Tip: If you also need to migrate GUIDs (unique identifiers), you can use the WP Migrate Lite plugin. This plugin helps move only the database (for both single and Multisite) by giving you a migration SQL file. You still have to manually import this file into the new host’s database and manually move all your WordPress files.

Method 2: Moving Your WordPress Site with a Plugin

I use two main plugins for this:

  1. Duplicator Plugin: This plugin creates a complete installation package for you. You use this package to set up your site on the new host.
    Important: You must first create a new database and database login on your new host before finishing the Duplicator installation. (See how to use the free version of the Duplicator plugin)
  2. WP Migrate Pro: You will export the full site and import the backup file to the new host.
  3. All-in-One WP Migration Plugin: I will talk more about this plugin later in this post.

Method 3: Asking Your Web Host to Move the Site

You should always check if your new web host offers a migration service. Most web hosts I’ve seen offer some version of migration to bring your site to their platform. If you have many websites to move, they might ask you to prepare a cPanel backup file from your old hosting provider for them.

Moving a WordPress site with the All-in-One WP Migration Plugin (Free version)

With the All-in-One WP Migration plugin, you can use the plugin to export the database and all WordPress files from your current hosting and import the migration file to a fresh WordPress installation at the new hosting.

Maximum Upload Filesize Limitation

The plugin itself won’t cause problems, but your web hosting package might have limitations. One potential issue when importing the migration file is the maximum upload file size limit set by your new host. I will address this common problem, though I can’t guarantee a solution will work for every hosting package, as configurations vary between providers.

Now let’s do it.

On your current website:

  1. First, install the All-in-One WP Migration plugin and activate it
  2. At the WordPress admin, you will see the “All-in-One WP Migration” menu. Open its menu and choose Export 
  3. At the Export Site page, choose FILE from the EXPORT TO dropdown
  4. Wait until the process is done
  5. Download the migration file. The migration file is the database and all WordPress files except WordPress code files. Meaning, it includes themes, plugins, and media files. In other words, the migration file includes the wp-content folder only.

At your new hosting:

  • Install fresh WordPress 
  • Install the All-in-One WP Migration plugin and activate it
  • At the WordPress admin, you will see the “All-in-One WP Migration” menu. Open its menu and choose Import 
  • Drag the migration file you had earlier to import the area
  • Wait until the import is done
  • Follow the instructions on the screen, which basically you need to save the permalink twice. Saving the permalink without changes just flushes all URLs in WordPress and makes sure all URLs are still working after import.
  • That’s it. 

Deal with Maximum Upload Filesize

If you are at the stage where you drag the migration file to the import area and it fails because the migration file is bigger than the maximum upload filesize that WordPress allows.

fix_maximum_upload_filesize
Can not import the migration file because the file is bigger than the maximum upload file size

On the import site page, you will see the instructions for increasing the maximum upload file size for WordPress. You can follow along or continue reading.

Update .htaccess file

This file is VERY important. You must back up the .htaccess file before changing anything in the file. Once you have your .htaccess backup file, you can continue to change the values or add the new PHP settings below into the .htaccess file.

For example, your migration file is 500MB, you will need to increase the upload maximum filesize from 128MB to 600MB. Also, you must change the post maximum size value to be the same as the upload maximum filesize.

php_setting_maximum_upload
Increasing “upload max filesize” and “post max size” to meet your migration file size

You may need to increase the maximum execution time and max input time if your internet is slow.

Once you upload the .htaccess file, go back to the import site page and refresh the page to see if the Maximum Upload file size has changed to your number or not. If not, it means your hosting won’t allow you to change the PHP settings via the .htaccess file. Then you will need to use the .htaccess backup file to replace it. 

But after reloading the import site page, the site breaks, which means you added something wrong in the .htaccess file, just use the .htaccess backup file to replace it. Then try to change or add PHP settings again.

Backup

Back up the .htaccess file before making any changes.

Changing the PHP Settings at cPanel

If updating the .htaccess file is not possible, then your hosting may have other options.

Log in to cPanel at your new hosting and look for MultiPHP INI Editor. You can change PHP settings from there. Once you finish the changes, go back to the import site page and refresh the page. The maximum upload file size should be changed now.

Changing the PHP Settings via php.ini

Some web hosting allows you to change the PHP settings via php.ini. You will find this file at the webroot (htdoc or public_html). If you don’t have one, create the php.ini file (it is a configuration file type) and transfer the file to your host at the webroot of your site. In the php.ini, you will add the code below. Make sure you change the number to meet your needs.

php_ini_file
PHP settings in php.ini

Changing the PHP Settings via .user.ini

If the php.ini doesn’t work, you may try to use the .user.ini file instead. You will find this file at the webroot. If you don’t see one, just create one and add the PHP settings below to it.

php_ini_file
PHP settings in .user.ini

If none of the methods above work, you need to contact your host provider for support. Or you may try the alternative methods below.

An issue I found with using the All-in-One WP Migration plugin in 2021

** Update in 2025, I don’t see the extension file for download anymore. I assume the issue was fixed.

Please complete the form. Upon successful submission, the file download will begin automatically. Please allow a few seconds for the submission to complete.

Please tell me what source led you to this post? (eg. Google, ChatGPT, StackOverflow, Reddit)
The form has been submitted successfully!
There has been some error while submitting the form. Please verify all form fields again.

Conclusion

Because every WordPress site is different—from simple single sites to complex Multisite networks—no single migration method works perfectly for everyone. I hope this guide helps you choose the right approach for your site and makes your next move much less stressful.


Your support helps keep this blog running! Secure payments via Paypal and Stripe.


Share this:
Senior WordPress Developer (Freelancer)

Senior WordPress Developer (Freelancer)

I’m a professional WordPress and WooCommerce developer based in Chiang Mai, Thailand, with over a decade of experience creating fast, secure, and scalable websites. From custom themes and plugins to full WooCommerce stores, I help businesses build a strong and reliable online presence. Need a freelance WordPress developer you can count on? View my portfolio or get in touch to discuss your project.