Cloning a WordPress site sounds technical. It isn’t, once you’ve done it once. You make a working copy of your site. Files, themes, plugins, database, the lot. Then you put that copy somewhere else: a staging server, a new host, or a fresh domain.
This guide walks you through both methods. Plugin first (easier), manual after (more control). I’ll also cover the security cleanup most tutorials skip.
What is WordPress Site Cloning?
A clone is a working, browsable copy of your site. You can load it in a browser and click around just like the original.
A backup is different. It sits on a drive as a zipped file, waiting for an emergency. You can’t browse it.
When you clone a WordPress site, you copy 2 things together: every file in your install (themes, plugins, uploads, core) and your database (posts, pages, users, settings). Move both, and the copy works.
Why Clone a WordPress Site?

A few common reasons:
- Moving to a new host without losing content
- Building a staging site to test plugin updates safely
- Setting up a fresh site that reuses your existing design
- Keeping a working spare in case your live site breaks
If any of these match what you’re doing, you’re in the right place.
How to Clone a WordPress Site: Step-by-Step Guide

Cloning a WordPress site can be done in several ways, depending on the tools you use. The most popular and secure method is using WordPress plugins, though manual cloning is also an option for more advanced users. Let’s explore the steps to clone a WordPress site using both methods.
Step 1: Back up your site first
Always. Even if your cloning plugin claims it won’t touch the original. Things go wrong.
UpdraftPlus is the one I use. Install it from Plugins > Add New, click Backup Now, download the files. Takes 5 minutes for most small sites.
BackupBuddy and Jetpack VaultPress work too. Pick whichever, but don’t skip this step.
Step 2: Choose a cloning plugin
Three plugins handle most cases. Pick based on your situation.
Duplicator
Bundles your entire site (files plus database) into 2 files you can drop anywhere. Most flexible option, works for full migrations and staging copies.
All-in-One WP Migration
Exports everything to a single file. Drag and drop into the destination site. Easier than Duplicator, but the free version caps file size at around 512MB.
WP Staging
Built specifically for staging copies on the same server. Less useful for full migrations to a new host.
I’ll use Duplicator for the walkthrough below since it’s the most flexible.
Step 3: Build your clone package with Duplicator
Install Duplicator from Plugins > Add New. Activate it.
Go to the Duplicator tab in your dashboard. Click Create New Package.
Name the package something you’ll recognize later (the date works fine). You can store it locally or push it to Google Drive or Dropbox.
Click Build. Duplicator scans your site, then bundles everything into 2 files:
installer.php (the script that rebuilds your site)
- An archive file ending in
.zip (your actual site content)
Download both. Keep them in the same folder on your computer.
Step 4: Set up the new server
Where’s the clone going?
If you’re moving to a new host, get your hosting account ready first. You need a fresh MySQL database with a username and password. Most hosts let you create one in cPanel in under a minute.
If you’re building a staging site, create a subdomain on your current host. Something like staging.yoursite.com. Point it to a new empty folder.
Either way: empty folder, fresh database, credentials in hand. That’s all you need.
Step 5: Upload the 2 files
FTP works. FileZilla is the standard tool, but any FTP client does the job.
Connect to your destination server. Drop installer.php and the archive zip into your empty folder. Done.
If your host gives you cPanel access, you can use File Manager instead. Faster than FTP for 2 small files.
Step 6: Run the installer
Open a browser. Visit yournewdomain.com/installer.php.
Duplicator shows you a setup screen. Plug in:
- Database name
- Database user
- Database password
- Database host (usually
localhost)
Click Validate. If everything checks out, click Next. The installer rebuilds your site from the archive.
Takes 30 seconds to 5 minutes depending on site size. When it finishes, log into your new dashboard. Your clone is live.
Clean Up After the Install
Duplicator leaves installer files on your server. Anyone who finds them can mess with your site.
Go to Settings > Duplicator in your dashboard. Click “Remove installer files.” Done.
If you skipped that, manually delete installer.php, installer-backup.php, and any .archive.zip files from your site’s root via FTP.
Then check 2 things:
- Permalinks. Go to Settings > Permalinks and click Save. This rebuilds your URL structure.
- SSL. If your new domain runs HTTPS, install a certificate before going live. Let’s Encrypt is free and most hosts set it up in 1 click.
How to Clone a WordPress Site Manually (Without a Plugin)
Skip the plugin. Do it yourself. More work, but you’ll understand exactly what’s happening.
You need FTP access and phpMyAdmin (or any MySQL tool).
1. FTP into your live site. Download the entire wp-content folder and your wp-config.php file.
2. Open phpMyAdmin. Select your WordPress database. Click Export, choose SQL format, download the file.
3. Set up a fresh WordPress install on your destination server (most hosts have a 1-click installer).
4. Upload your old wp-content folder, replacing the one in the fresh install.
5. In the destination’s phpMyAdmin, drop the default WordPress tables. Then import the SQL file you exported.
6. Edit wp-config.php on the destination. Update these lines with the new database details:
define(‘DB_NAME’, ‘new_database_name’);
define(‘DB_USER’, ‘new_username’);
define(‘DB_PASSWORD’, ‘new_password’);
7. If your domain changed, run a search and replace on the database. The Better Search Replace plugin handles this safely. Replace the old domain with the new one across all tables.
Slower than Duplicator. But if something breaks, you know exactly where to look.
Security Checks After Cloning
A few things people forget:
- Delete leftover installer files: Mentioned above, worth repeating. These are the #1 way cloned sites get hacked.
- Reset admin passwords on the clone: If the staging server has weaker security, anyone with the URL has your admin credentials. Change them.
- Update file permissions: Folders should be 755, files should be 644, and
wp-config.php should be 600 (or 640 if your host needs it). FTP clients let you set these in bulk.
- Install an SSL cert: Free via Let’s Encrypt. Most hosts install it through a single button in cPanel.
- Block search engines on staging: Settings > Reading > tick “Discourage search engines from indexing this site.” Otherwise Google might index your staging URL and outrank your real site.
Common cloning problems (and fixes)
Things that go wrong, and what to do about each.
- Error establishing a database connection: Your
wp-config.php has the wrong database credentials. Double-check the name, user, password, and host. Typos are the usual culprit.
- Installer times out: Your site’s too big for your server’s PHP limits. Edit
php.ini and bump max_execution_time to 300 and memory_limit to 256M. If you can’t edit php.ini, ask your host to do it.
- Missing images or media: Sometimes the archive misses large media files. Reupload
wp-content/uploads manually via FTP.
- White screen on the new site: Usually a plugin conflict. Rename the
plugins folder via FTP to disable everything, then re-enable plugins one at a time until you find the broken one.
- URLs still point to the old domain: Run Better Search Replace and update all instances of the old domain in the database.
- Login redirects you back to the old site: Same root cause. Old domain still hardcoded in
wp_options. Edit siteurl and home rows in phpMyAdmin directly if Better Search Replace isn’t an option.
Conclusion: Clone a WordPress Site
WordPress site cloning is an effective tool for website administration, whether you are constructing a staging site, transferring hosts, or protecting your content. By following these procedures and using the appropriate plugins, you may rapidly, reliably, and securely duplicate your website.
Advanced cloning solutions such as Duplicator, All-in-One WP Migration, and WP Staging simplify the procedure and guarantee flawless replication of all components of your website. Please ensure that you consistently create a backup of your website before commencing any work, and strictly adhere to security protocols to safeguard your data.
Clone a WordPress Site FAQs
How do I duplicate a WordPress page without a plugin?
Open the page in the WordPress editor. Switch to Code Editor view. Copy everything. Then create a new page, paste the content in, and update the title, slug, and permalink so they don’t clash with the original. If you’re using Elementor or another page builder, use its “Save as Template” feature instead. Cleaner result.
How do I export a whole WordPress site?
Tools > Export gives you an XML file with posts, pages, and comments. That’s not a full site, despite what the menu suggests.
For a real export you need 3 things:
- The
wp-content folder (download via FTP)
- The database (export from phpMyAdmin)
- Your
wp-config.php file (for reference, since you’ll update credentials)
Together, those 3 are your whole site.
How do I clone a website using Duplicator?
Install the plugin. Create a new package. Download the installer.php and archive zip it generates. Upload both files to your destination server. Visit yournewdomain.com/installer.php in a browser. Enter your new database credentials. Click through the setup. Duplicator rebuilds the site on the new server using the archive. Takes a few minutes.
Can I copy a WordPress site without admin access?
Only if you have FTP or hosting panel access. Without WordPress admin, you can still download wp-content via FTP and export the database from phpMyAdmin. No FTP, no hosting access, no admin? Then no, you can’t clone it properly. You’d have to rebuild from scratch by inspecting the front end and copying visible content.
Can I build a new WordPress site while the old one stays live?
Yes. Two options:
- Spin up a staging subdomain (
staging.yoursite.com) on your current host.
- Build locally using LocalWP, then push to a fresh server when you’re ready.
When the new version’s done, swap it onto the main domain. Most hosts now offer 1-click staging from the hosting dashboard, so check there first before setting it up manually.
How do I clone a WordPress site to another domain?
Same process as a regular clone, with 1 extra step at the end: update every reference to the old domain in your database. Duplicator handles this automatically during install. If you cloned manually, run Better Search Replace and swap oldsite.com for newsite.com across all tables. Then resave permalinks.
How long does it take to clone a WordPress site?
Cloning a small WordPress site (under 500MB) takes 10 to 15 minutes end to end. Larger sites with heavy media libraries can take 30 minutes to an hour. The bulk of the time is the build and download steps, not the install itself.
Does cloning a WordPress site affect SEO?
Only if you do it wrong. Two things to watch:
- Block search engines on the clone (Settings > Reading) so Google doesn’t index it as duplicate content
- If you’re permanently moving to a new domain, set up 301 redirects from old URLs to new ones
Done right, cloning has zero SEO impact on your live site.
Leave a Reply