How to Migrate Your WordPress Website Quickly & For Free (No Plugin)
One of the most common requests we get is how to move an existing WordPress website to a new host or domain without paying for an expensive migration plugin. The good news: you can migrate your site quickly and for free using nothing more than your hosting control panel, an FTP client, and a bit of patience.
Backup First (This Is Non-Negotiable)
Safety first! Before you start, create a complete backup of your WordPress website — both the files and the database. If something goes wrong mid-migration you need to be able to roll back instantly.
Backing Up Files
Most FTP clients let you download your entire WordPress directory. Alternatively, use your hosting provider's built-in backup feature if it's available.
Backing Up the Database
Open phpMyAdmin (usually found inside your hosting cPanel), select your WordPress database, and export it as a .sql file.
Prepare the New Hosting Environment
- Create a new database and database user with the correct permissions on your new host.
- If you're moving to a brand new domain, install a fresh WordPress instance first — it gives you a clean base to work from.
Transfer the Files
Using an FTP client, upload your backed-up WordPress directory to the new server, typically into the public_html folder.
Import the Database and Configure wp-config.php
Open phpMyAdmin on the new host and import the .sql file you exported earlier. Then locate wp-config.php in your uploaded files and update the database credentials — DB_NAME, DB_USER and DB_PASSWORD — to match the new database you created.
Fix Old Domain References
If you changed domains, your database still points to the old URL. Use a search-and-replace tool or a text editor to update every reference from the old domain to the new one, so your links and images keep working after migration.
Test, Then Switch DNS
- Thoroughly test your migrated site on the new server before going live.
- Finally, update your domain's nameservers to point at your new hosting provider. DNS changes can take up to 48 hours to propagate worldwide.
Additional Tips: this method avoids plugins, but it does involve working with files and databases. If your site is heavily customised, a migration plugin might be the smoother option. Whatever you choose, WordPress itself is free — you only pay for hosting either way.