At our agency, we strongly recommend full WordPress backups, but we've seen many users rely on free plugins that only back up the database. If that's your situation, this proven guide will help you restore your site, minimizing data loss as much as possible.

For this tutorial, we'll assume you have your WordPress database backup as a ZIP file. If not, follow our manual database backup instructions here.
If this stems from issues with your web host, it's time for a reliable alternative. We've vetted and used the best WordPress hosting providers in our own projects.
Also see: 7 Key Indicators When You Should Change Your WordPress Hosting.
Start by creating a new database. Log into cPanel and select MySQL Databases under the Databases section.

Enter a database name and click Create Database.
Next, create a MySQL user with full privileges for this database.
On the MySQL Databases page, scroll to MySQL Users and add a new user.

Enter a username and strong password, then click Create User.
Scroll to Add User to Database, select your user and database, and click Add.

Your database is now ready for WordPress.
Access cPanel, go to Databases, and click phpMyAdmin.

Select your new database, then click Import.
Choose your backup file and click Go to import.
A success message confirms completion. Now install WordPress with this database.
Manually install fresh WordPress files. See our detailed FTP installation guide, jumping to the relevant section.
During setup at the configuration step, input your new database name and user credentials.

WordPress will confirm database connection—proceed with installation.
You'll see an 'Already Installed' message, indicating success.

Log in to your restored WordPress dashboard.
Without original files, some elements need manual fixes. Here's how, based on our hands-on recoveries:
1. Theme
Install a fresh copy of your previous theme. Custom file edits are lost—reconfigure via theme options.
2. Widgets
Stored in the database, widgets restore when reactivating your theme. Manage them at Appearance » Widgets. Plugin widgets require reactivation.
3. Permalinks
Automatically restored, but flush them at Settings » Permalinks by saving changes to fix 404 errors.
4. Plugins
WordPress flags missing active plugins. Note the names from the errors and install/activate them.

Replacing images is the toughest part and time-intensive, especially for content-heavy sites. Success varies.
1. Check Browser Caches
Search recent browser caches. Firefox: Use CacheViewer2 extension. Right-click images and Save As.

Chrome (Windows): Chrome Cache Viewer. Mac Chrome users: Limited options available.
2. Web Caches
Google Images: Search your site URL for cached versions—download previews.

For older sites, use Archive.org snapshots.

Install Broken Link Checker plugin. At Tools » Broken Link Checker, it lists broken images as links—sort and edit posts to replace or remove.

Full recovery is challenging—prevent future issues with automated backups. We recommend BackupBuddy for seamless cloud backups and restores.
This guide has helped restore many sites. Also check our 13 tips to secure your WordPress admin.
Subscribe to our WordPress YouTube channel, and follow us on Twitter and Facebook.