How to Migrate a WordPress Site with the Duplicator Plugin

WordPress has a lot of migration systems. We’ve had lots of good experiences with All-in-One WP Migration, some people swear by WP Migrate DB Pro, and others are partial to WP-CLI’s terminal-based systems. On top of these options, I’ve recently found a plugin I really like called Duplicator that approaches WordPress migrations in a unique way. Here’s a guide on how to use Duplicator, and what sets it apart.

What Makes the Duplicator Plugin a Great WordPress Migration Tool

With the Duplicator plugin, you don’t need WordPress to be already running on the destination server.

One of the few tools I’d never tried until recently was Duplicator. When I did, I loved it, mainly because of one pleasant surprise about how to use the Duplicator plugin: you don’t need WordPress to be already running on the destination server. Instead, you just copy over two files, put them in the destination folder, and the Duplicator installer takes care of installing both WordPress itself and all your site’s contents.

This is a really great advantage over other WordPress migration tools. Rather than Duplicator’s very quick process, you first have to install WordPress, then install a migration plugin to accept my migration as an “Import.” Duplicator skips that, with an installer.php file that will get WordPress itself installed, and your WordPress site migrated, in a few click of a wizard.

Here’s a video demonstrating how to use Duplicator to migrate a WordPress site:

And here’s the text version of the video, broken down into a step-by-step WordPress Duplicator plugin tutorial:

How to Migrate a Site Using the WordPress Duplicator Plugin

  1. Install and activate the Duplicator plugin, on the WordPress site you’re copying from.
  2. Click on “Duplicator > Packages” in the left-side menu (it’s toward the bottom).
  3. In the top right on that screen, click the “Create New” button.
  4. Click through the wizard. That’ll be a blue “Next” button on the “1-Setup” screen, and a “Build” on the “3-Build” screen.
  5. When you see “Package Completed” click the “One-Click Download” link. You should be prompted (by your web browser) to download two files. Save both.
  6. After they’ve completed the download, move the two files (installer.php and something ending with .zip) into the folder you’ll want the WordPress site in.
  7. In a web browser (with your server running) visit the installer.php file.
  8. If everything works, you should see a wizard screen similar to the style you saw in your WordPress dashboard. You’ll need to click “I have read and accept all terms & notices.”
  9. Click “Next.”
  10. Here you’ll need to have a database ready. Then tell Duplicator your database name, user, and password. For me, that meant creating a new one with MAMP, but this step will vary depending on your environment. For many shared hosts, you’ll have a cPanel based “Database Wizard” to do this.
  11. If it all works, you’ll see “Step 4 of 4: Test Site”. There you’ll want to click the “Site Login” button, and log in to your WordPress site using the same username and password as you have on the remote site.
  12. You should now be in a full-fledged copy of your WordPress site.
  13. Make sure to clean up after Duplicator. It’ll give a helpful admin notice (a banner at the top) showing you things. If you click “Take me there now!” you’ll then be on the screen to click “2. Remove Installation Files Now!” After you do that, you’re done.

It’s pretty amazing how polished and slick the Duplicator plugin is. I know 13 steps looks like a lot, but migrating sites is hard, and the above outline is made of very small explicit steps—I assure you this is easier than most other WordPress migrations I’ve done in my career. You can hear my surprise and excitement in the video. ;p

Studying Migrations Because You’re Not on the Best WordPress Hosting?

We hope this Quick Guide helps you know how to use the Duplicator plugin to migrate WordPress sites. We also know that lots of people do WordPress site migrations because they’re dissatisfied with their current hosting plan. If that’s you, be sure to check out our comprehensive guide to where to find the best WordPress hosting:

The Best WordPress Hosting in 2020: An Honest Guide

38 Responses


  • Backup Buddy (by iThemes) works exactly the same way, plus you can obviously use it for backups.


  • If you could add screenshots along with the steps, it would be more helpful.

    Thanks for article.

  • Martin Jocher says:

    If I download the archive zip, it’s suddenly 0 Byte.
    Why can this happen?

  • Robin says:

    This WordPress duplicator is used to migrate a website from one hosting to another hosting. This plugin creates a backup of our website. Can we use UpdraftPlus WordPress Plugin to create our backup and then transfer our website??
    Can we use UpdraftPlus instead of WordPress duplicator?

  • Tony says:

    this works ok even if moving to a new directory and new domain?

  • puguh says:

    I forgot to download installer.php, so what can I do now? My previous site has gone and i just have archive file. Could I take another installer.php and put a side archive?

  • Webbie says:

    Hi David,
    Thanks for putting up this tutorial. I’ve just finished building a new website on my localhost and am ready to migrate. Your tutorial is clear, apart from step 10, where you say: “Here you’ll need to have a database ready. Then tell Duplicator your database name, user, and password.”

    Do you mean I have to set up a new database at the domain I want to migrate to, or do you mean the specs of the database on my localhost, which obviously is already filled with my newly made website?

  • Federico says:

    Hi David,
    thank you for this great step-by-step guide. Do you suggest to use Duplicator (maybe pro version) also to have regular backups?
    Or do you suggest another plugin?

  • Dave says:

    I want to duplicate my live site to a subdomain.

    1. Does the Duplicator package contain all of WORDPRESS or do I need to install WORDPRESS first on my subdomain?

    2. Where do I upload the Package to on the subdomain?

    Thank you.

  • Kunal Mate says:

    Really helpful for work on the local machine.
    Great plugin.

  • Abdullah Prem says:

    After watching this video, I did migration myself.

  • Larry says:

    Sir, If I am going to clone the site to target host. The target host tells me there is an error of extracting the archive. The page tells me to go Advanced Option but I cannot find this option at my target host installer.php . Please tell me what to do next

  • pault says:

    Hello, I completed all the steps, and it says it was successfully migrated over, but when i go to the subdomain i put it on, it says “Future home of something quite cool.” … but yet the wordpress dashboard seems to be up and running… just not the front site. Any thoughts? Thanks so much!

  • Thanks for the wonderful guide. Keep writing 🙂

  • Brian says:

    What about replacing an existing WP site? i.e. overwriting it.

    Here’s the scenario:
    Existing site is in the (/), new site layout and design is in /new/. I would simply like to overwrite the old site with the new one. Assuming I have backed up the original site, is it ok to run the installer in the root dir of the existing WP site?

  • Devendra Singh says:

    love you man…….

  • Arnold says:

    I develop sites under a temp folder on my website and the client has a link so that they can see my progress and suggest changes during the process. Once everything is done to their satisfaction (and I’ve been paid) I transfer to their domain.
    I’ve been using Duplicator for about 8 years now. Seen all the hype about other migration plugins, but never felt the need to try them as Duplicator did all that I needed and I found it straightforward to use.

  • Arnold says:

    Just a quick question.
    Just noticed this – how come the article date is May 9, 2019, but the first comment is June 5, 2018?

  • Nancy says:

    Hi, what do I do if I want to reinstall an old site locally but I don’t remember my login info

  • Phillip says:

    Hi Dave,

    In trying to follow your directions of moving my remote site to Localhost, I am having problems getting the installer.php to activate. I have the latest WordPress and PHP installs.

    Are you aware of the reasons why this might be so?

    With thanks…

  • pelumi says:

    works for me too.

    I was using updraft Plus and it worked well also

  • Diya Jain says:

    You are absolutely right…. it’s a big task.
    By the way nice article with defined pointers.

  • Corey Fronek says:

    I just did this yesterday. Didn’t know that I needed to have a completely wiped website to throw it on so there would be no errors. I originally tried to have backup the site and then clone it but ran into some issues… So this plugin worked great!

  • Anna Nordin says:

    It didn’t work for me 🙁

    The installer file just downloaded on my computer instead of being open in the brower window.

  • Mitchell says:

    I have a perfectly running localhost web site running on the Mac OS 10.6.8 partition of my laptop disk. I used Duplicator to clone it to the Mac OS 10.11.6 partition of the same laptop disk.

    My localhost website cloned perfectly. BUT, in addition to the proper menus on the left side, the clone also included a second menu system entitled “Pages” below the first set. The second set listed ALL the pages of my web site including ones that originally could only be reached with internal links.

    Why did I get that second set?

  • Lori says:

    I tried several WP plugins to download the Database before finding Duplicator (all the others ran out of memory). the original designer wouldn’t give us access to the control panel so we couldn’t use the other plugins but with Duplicator we can download to the computer so that worked.

    We are moving the site to a new host. I got the database installed on the new host (with the help of the host’s tech person) but he said the “content” is missing and he said he can’t help me any further. I’ve never done this before so not sure what to do. Is the content hiding somewhere in a folder or does duplicator not copy the content?

  • I just did this yesterday. Didn’t know that I needed to have a completely wiped website to throw it on so there would be no errors. I originally tried to have backup the site and then clone it but ran into some issues… So this plugin worked great!

  • Does this work if you already have WP installed on the target server? Or should it be a server that doesn’t have WP installed?

  • Jez says:

    I’m pulling my hair out… I can’t get beyond stage one – rather than the system prompting me for the database credentials, I just get ‘error establishing database connection’. Any ideas?
    Thanks 🙂 Jez

  • marwa says:

    my installer.php not open in browser

Add a Comment

Your email address will not be published.