payless.host
How to Move a WordPress Site to a New Host (Step by Step)
Updated Oct 15, 2026
Before You Start
Moving a WordPress site means copying three things: the files, the database, and the domain. Most failures happen because one of those three was skipped or pointed at the wrong place. Set aside an hour when the site can be briefly offline, and make sure you have login details for both the old host and the new one.
If the new host offers free migration, use it. HostGator's Business plan and above include this, as do managed WordPress options like DreamHost's DreamPress 1 at 14.99 EUR/month. A service that migrates for you removes most of what can go wrong.
Step 1: Back Up the Existing Site
Log into WordPress, install a backup plugin like UpdraftPlus or Duplicator, and run a full backup. This creates a copy of both the files and the database in a single downloadable package. Download it to your computer.
What can go wrong: The backup times out on large sites. If it fails, ask your current host to create a backup from their control panel instead — most providers keep automated backups you can download.
How to check it worked: You should have a .zip file or similar on your computer, typically several hundred megabytes or more depending on how much media the site holds.
Step 2: Set Up WordPress on the New Host
Log into the new hosting account and use the one-click WordPress installer — every provider here has one. Install WordPress into the root directory unless you want the site to live at a subdomain. Write down the database name, database username, and database password the installer generates.
What can go wrong: Installing into the wrong directory means the site will load at `yoursite.com/blog` instead of `yoursite.com`. If this happens, you will need to reinstall or move the files later.
How to check it worked: Visit the temporary URL the new host provides — usually something like `ip-address/~username`. You should see the default WordPress welcome screen.
Step 3: Upload the Backup to the New Host
If you used a migration plugin, install the same plugin on the new WordPress installation and use its restore function to upload the backup file. If you have raw files, upload them via FTP to replace the fresh WordPress installation, and import the database through phpMyAdmin.
What can go wrong: File permissions sometimes break during upload, causing "403 Forbidden" errors. Fix this by setting folder permissions to 755 and file permissions to 644 through your FTP client or the host's file manager.
How to check it worked: Visit the temporary URL again. The site should now show your actual content, though images may be broken and links may point back to the old host.
Step 4: Update the Database URLs
WordPress stores the site address in the database. Use a plugin like Better Search Replace to find every instance of `http://oldsite.com` and replace it with the new domain or temporary URL. Run a search first to see how many entries will change — typically thousands.
What can go wrong: Replacing URLs manually in the database breaks serialised data and ruins the site. Always use a tool built for this.
How to check it worked: Images should load, internal links should work, and the site should behave normally at the temporary address.
Step 5: Point the Domain at the New Host
Log into wherever the domain is registered — often the old host, sometimes a separate registrar like Namecheap. Change the nameservers to the ones the new host provided, usually in a welcome email. This step makes the domain resolve to the new server.
What can go wrong: DNS changes take up to 48 hours to propagate, though usually only a few hours. During this window, some visitors see the old site and some see the new one.
How to check it worked: After a few hours, visit your actual domain. It should load the site from the new host. Check from a phone on mobile data as well, since your computer may be caching the old DNS.
Step 6: Test and Secure
Click through every major page, test contact forms, confirm logins work, and verify that SSL is active — the address bar should show a padlock. Most hosts provide free SSL through Let's Encrypt; if it is not enabled automatically, turn it on in the control panel.
What can go wrong: Forms may fail if they were tied to the old server's mail setup. Reconfigure contact forms to use an SMTP plugin or the new host's mail service.
How to check it worked: Send a test message through every form, log into WordPress as both admin and subscriber, and confirm the site loads over `https://` without warnings.
After the Move
Leave the old hosting account active for a week in case something was missed. Once you are certain the new site works, cancel the old plan. If you prepaid at a provider like Hostinger or InterServer, you may be entitled to a prorated refund for unused months.
