To migrate a WordPress site, you copy its files and database from your old host to your new one. The easiest path is your new host's free migration service. If you prefer to do it yourself, a migration plugin handles most of the work; a manual move via FTP and phpMyAdmin gives you full control.
Moving a WordPress site to a new home sounds scary, but it is really just a careful copy-and-paste job. You are taking a working website off one server and setting it up on another so it looks and behaves exactly the same. People do this when they switch hosts for better speed, when they move a site from a test address to a live domain, or when they merge a project onto their main account. This is one part of the wider topic covered in our guide to moving a website; here we focus only on WordPress. Take it one step at a time and keep your old site online until the new one is confirmed working, and the whole thing is low-risk.
Before you touch anything, it helps to know your options. Every WordPress migration falls into one of three approaches. They all reach the same result; they differ in how much of the work you do yourself. There is no single right answer here — the best choice depends on how big your site is, how hands-on you want to be, and what tools your new host already gives you. Read all three below, then match one to your situation.
A migration service is a free move done for you by the company you are moving to. Many hosts will pull your existing site across if you give them your old login details, or they provide a one-click tool that does it inside their dashboard. This is the least hands-on route and a good fit if you are not comfortable with files and databases. The trade-off is that you depend on the new host's tool and support queue, and some hosts limit how many free migrations they include.
A migration plugin is an add-on you install inside WordPress that packs up your whole site into one file, then unpacks it on the new server. Popular examples include Duplicator, All-in-One WP Migration, and Migrate Guru. Each works a little differently, but the idea is the same: export on the old site, import on the new one. This is the sweet spot for most people because it handles the fiddly database work for you while still keeping you in control. Very large sites can hit file-size limits on the free versions, which is the main thing to watch for.
A manual migration means you copy the files and the database yourself, using tools such as FTP and phpMyAdmin. It takes more steps and a little more confidence, but it always works, it has no file-size cap, and it teaches you exactly how a WordPress site fits together. Choose this when a plugin refuses to run, when your site is too big for the free plugin tiers, or when you simply want to understand the moving parts.
| Approach | Best for | Skill needed |
|---|---|---|
| Host migration service | Beginners who want it done for them | Low |
| Migration plugin | Most sites; a balance of ease and control | Low to medium |
| Manual migration | Large sites, or when plugins will not run | Medium |
This is the route most people should take. The steps below use the standard export-then-import pattern that Duplicator, All-in-One WP Migration, and Migrate Guru all share, so you can follow along whichever one you pick. Read the whole list once before you begin.
The manual method has more steps, but nothing here is difficult once you see how the pieces connect. You will use two tools: FTP (or your host's File Manager) to move files, and phpMyAdmin, a web tool for handling your database — the store that holds your posts, pages, and settings. Set aside an uninterrupted block of time, keep the database name and password from your new host close by, and work through the steps in order rather than jumping ahead.
wp-content folder (your themes, plugins, and uploads) and the wp-config.php file. Do not skip anything.Export → SQL. This saves your content as a single .sql file. Keep it with your downloaded files.public_html). Wait for every file to finish transferring.Import, and upload the .sql file from step 2. This fills the new database with your content.wp-config.php on the new server and update four values so WordPress can find its data: DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST (usually localhost). Use the exact name, user, and password from step 3.http://oldsite.com for https://newsite.com. Skip this step if the address is unchanged.wp-config.php before you edit it. A single wrong character in the database details will stop the site from loading, and a backup lets you undo the change in seconds.If something looks off right after a move, do not panic. Almost every post-migration issue comes down to one of three causes, and each has a clear fix.
This message means WordPress cannot reach its database, and after a migration the reason is nearly always wrong details in wp-config.php. Double-check the database name, user, password, and host you entered in step 6 of the manual method. Our full walkthrough on the error establishing a database connection covers each cause and fix.
Mixed content happens when a secure https page still loads some images or scripts over the old, insecure http address, so browsers show a warning or a broken padlock. This usually appears when you switch domains or move to HTTPS without a full search-and-replace. Our guide to fixing mixed content warnings shows how to update the remaining links.
If the site loads nothing but a blank page — the white screen of death — a theme, plugin, or memory limit is usually to blame after a move. Our guide to the WordPress white screen of death walks through turning off plugins and spotting the cause.
A few slip-ups account for most failed migrations. Watch for these:
The easiest way is to let your new host migrate the site for you. Many hosts offer a free migration service or a one-click tool that pulls your existing site across with almost no hands-on work. If you prefer to do it yourself, a migration plugin is the next simplest option.
Yes. All three approaches can be free. Host migration services are usually included at no cost, the free versions of popular migration plugins handle most small and medium sites, and the manual method uses free tools such as FTP and phpMyAdmin. You may only need to pay if your site is very large or you want a done-for-you service.
No. A plugin makes the job easier, but you can migrate entirely by hand using FTP and phpMyAdmin, or let your new host do it. The manual method has no file-size limit, which is why large sites sometimes skip plugins altogether.
It should not, if you back up first and test before switching your domain. Keep the old site online during the move so nothing goes offline. Most problems that do appear — a database error, mixed content, or a blank screen — are quick to fix and reversible.
Follow the same steps as a normal migration, then run a search-and-replace in the database to swap every mention of the old web address for the new one. Both migration plugins and manual tools can do this. Skipping it leaves broken links and images pointing at the old domain.
The copying itself often takes under an hour for a typical site. After that, DNS changes that point your domain to the new server can take anywhere from a few minutes to a full day to spread worldwide, which is why you keep the old site running in the meantime.
Migrate if you want to keep your existing content, design, and settings exactly as they are. Start fresh only if you were planning a full rebuild anyway. Migrating is almost always faster than recreating a working site from scratch.
Migrating a WordPress site comes down to moving two things — your files and your database — from the old server to the new one. Pick the approach that fits your comfort level: a free host migration if you want it done for you, a migration plugin for an easy do-it-yourself move, or a manual copy for full control. Whichever you choose, back up first, test on a temporary URL, and point your domain last. If your move is really about leaving a slow or unreliable server, read our wider guide to migrating a website next to plan the switch end to end.
If your host is the reason you're moving, the choice of where you land can save you all the work above. Many hosts include a free WordPress migration or a one-click migration plugin, so they move the site for you instead of you doing it by hand. When you are comparing where to go, it is worth checking whether a provider like Hostinger migrates WordPress for you, so you can weigh that against doing it yourself. Compare plans to see whether it fits your situation. If valid at the time of purchase, new users may also be able to apply a coupon such as SPECIAL15 or SPECIAL10, subject to Hostinger's terms.
Affiliate disclosure: if you sign up through this link we may earn a commission, at no extra cost to you. How this works.
When a free migration won't cover you. Hands-off migration offers generally assume a fairly standard site. Multisite networks, heavily customised WooCommerce stores, sites depending on unusual PHP extensions, and anything mid-redesign are often excluded or need manual work — confirm before you rely on it. And if hosting is not what is wrong with your site, migrating will not fix it. If you are moving for managed WordPress specifically, weigh WP Engine, Kinsta, SiteGround and Cloudways too: they cost more, and they are more specialised.
The editorial team behind the Bitrich777 Hosting Help Center — practical, tested guides on web hosting, WordPress, servers, DNS, SSL, email, security and migration. Every walkthrough is reproduced on a live host before it is published.
View all guides by the Hosting Team Spotted an error? Tell us