Moving a WordPress site from a subdomain — dev.example.com or staging.example.com — to the main domain example.com looks like it should be simpler than a full domain migration, since technically you’re often staying on the same hosting account. In practice it has its own sharp edges, mainly because the subdomain and the main domain frequently share the same hosting environment in ways that create conflicts a completely separate migration wouldn’t have.
Why this specific move is trickier than it looks
If example.com already has something live on it — even a simple placeholder page — you’re not migrating into empty space, you’re replacing an existing installation, which means a careless restore can destroy whatever is currently there. And because the subdomain and root domain often live in related folders on the same hosting account, file path conflicts and permission issues come up more often here than in a migration between genuinely separate servers.
The manual approach
Export the subdomain’s database and files exactly as you would for any migration. Before touching the main domain, back up whatever currently exists there too, even if it’s “just” a placeholder — you want a way back if something goes wrong. Import the subdomain’s database into the location the main domain uses, upload the files to the main domain’s root directory, and then do the URL replacement from the subdomain to the root domain, with the same serialized-data caution that applies to any URL change.
A conflict worth checking for specifically
If the subdomain was set up as a WordPress installation in a subfolder that happens to sit inside the main domain’s file structure (a common hosting configuration), moving files without checking for this first can leave orphaned duplicate files behind, or in worse cases, an installation that’s technically accessible from two different addresses at once. Worth a clean look at your hosting file structure before starting, not after.
Where a plugin genuinely simplifies this
Quick Restore treats a subdomain-to-root-domain move the same way it treats any staging-to-production migration — back up on the subdomain, restore at the root domain address, with the confirmation-before-overwrite step specifically protecting you from accidentally destroying whatever currently lives on the main domain without realizing it. The URL rewrite from subdomain to root domain runs through the same serialization-safe process as any other domain change, so this isn’t a separate, more fragile code path than a standard migration.
After the move
Update any DNS or hosting-level redirect that was pointing traffic at the subdomain, decide whether the old subdomain should now 301-redirect to the new root domain URLs (usually yes, if the subdomain had any inbound links or search visibility of its own), and double check internal links within the site itself — menus and hardcoded links built while the site lived on the subdomain sometimes reference that subdomain directly rather than a relative path.
Back up WordPress the easy way
Every paid Quick Restore plan is one payment with 12 months of updates. No subscription.
Free
Try it, no cost — for small sites
Free
- Full-site backup to one .wpqr file
- Manual restore by upload (up to 512 MB)
- Imports All-in-One WP Migration .wpress files
- Restore to a different domain
- Community support
Small sites under 512 MB that want a real backup and a manual restore.
Pro
Restore backups of any size
$39.00one-time
- Everything in Free
- No 512 MB restore limit — any backup size
- Priority email support
- 12 months of updates
- One-time payment, no subscription
A site owner whose backups have outgrown the 512 MB free restore limit.
Pro Plus
Scheduled, hands-off backups
$59.00one-time
- Everything in Pro
- Scheduled backups: every day, week, month, or a custom interval
- Keep the latest N: older scheduled backups are deleted automatically
- Email with a secure download link when each backup completes
- Email alert if a scheduled backup fails
- 12 months of updates
- One-time payment, no subscription
Site owners who want backups to run on their own, with an email when each one is done.
Max
Pro Plus with an agency licence for 5 sites
$199.00one-time
- Everything in Pro Plus
- Agency licence for 5 WordPress installations
- Developer priority support
- 12 months of updates for all 5 sites
- One-time payment, no subscription
Freelancers and agencies managing client sites.