Restore website from backup

The Ultimate Guide to Restoring Your WordPress Site from Backup

Restore website from backup: Secure & Easy 2025

When Disaster Strikes: Why Every WordPress Owner Needs to Know How to Restore Their Site

Knowing how to restore website from backup is a critical, non-negotiable skill for any WordPress site owner. Your digital presence is a valuable asset, but it’s also fragile. A site can fail at any moment due to a wide range of threats: malicious malware infections, incompatible plugin or theme updates, critical server issues, or simple human error. When your site goes down, the clock starts ticking. Every minute of downtime can translate into lost revenue, frustrated customers, and a damaged brand reputation. A swift and successful restoration is the only thing that can prevent a minor technical glitch from escalating into a devastating business loss.

Quick Answer: How to Restore Website from Backup

  1. Access your backup files: Locate your most recent, complete backup. This could be on your hosting provider’s server, in a cloud storage account (like Google Drive or Dropbox) connected to your backup plugin, or on your local computer.
  2. Choose your restoration method: Decide on the best approach based on your technical comfort and the state of your site. The easiest is usually a backup plugin’s dashboard, followed by your hosting control panel’s tools. The most powerful, but also most technical, is a manual restore using FTP and phpMyAdmin.
  3. Upload and restore: Follow the chosen method to upload your backup files and import your database. This process will overwrite the current broken state of your site with the older, working version from your backup.
  4. Verify the restoration: Thoroughly check your site’s front-end and back-end functionality. Browse pages, test forms, check the admin area, and ensure everything looks and works as expected.
  5. Clear all caches: Purge all caching layers—browser, plugin, server, and CDN—to ensure you and your visitors are seeing the newly restored version of the site, not a stored, broken copy.

Whether you’re facing the dreaded “white screen of death,” a malware warning from search engines, or the aftermath of a botched update, a solid backup and a clear restoration plan are your lifeline. The process can take anywhere from a few minutes to several hours, depending on your site’s size and the restoration method you use.

As the founder of wpONcall, I’ve guided countless business owners through emergency restorations. My team and I have seen how knowing how to restore website from backup can turn a potential catastrophe into a manageable, minor inconvenience.

WordPress Site Restoration Scenarios: Step-by-step infographic showing the 5 most common reasons websites need restoration - malware attack (35%), problematic plugin or theme update (25%), user error deleting files (20%), server crash or hosting issues (15%), and database corruption (5%) - with icons and brief descriptions of each scenario - Restore website from backup infographic infographic-line-5-steps-dark

Basic Restore website from backup vocab:

Before You Begin: Essential Pre-Restore Preparations

Before you restore website from backup, proper preparation is essential to avoid stress and potential data loss. Think of it as pre-op for your website: you must ensure your backup is complete, understand what it contains, and accept that restoration will replace your current site with an older version. Since emergencies don’t wait for business hours, this prep work is crucial.

A person carefully checking a digital checklist on a tablet, with items like "Verify Backup," "Notify Users," and "Backup Current State" clearly visible - Restore website from backup

Understanding Your Backup: Full vs. Partial Restoration

To restore website from backup effectively, you must know what your backup contains.

  • A full backup is a complete snapshot of your site, including all WordPress files (themes, plugins, uploads, core files) and the entire database (posts, pages, users, settings). Use a full backup for major disasters like a site crash, severe hack, or server migration.
  • Partial backups are more targeted. A database-only backup is for when content or settings are corrupted, but files are fine. A files-only backup is for when you’ve deleted files or a plugin update failed, but the database is intact. You can even restore specific directories, like wp-content/uploads for a lost media library.

Choosing the right type of restoration minimizes disruption. For help selecting a backup solution, see our Detailed Guide to the Best WordPress Backup Solutions.

How to Securely Download and Verify Your Backup Files

Before you can restore website from backup, you need to locate and verify your backup files.

  • Hosting Provider Backups: Find these in your hosting control panel (e.g., cPanel, hPanel). Download the desired backup date.
  • Backup Plugin Backups: These are often in cloud storage (Google Drive, Dropbox) or available for direct download from the plugin’s dashboard.
  • Manual Backups: If you used FTP and phpMyAdmin, your files should be on your local computer.

Once downloaded, verification is critical.

  1. Check the file size: Ensure it’s what you expect. A tiny file for a large site is a red flag.
  2. Unzip and inspect: Look for the core WordPress folders (wp-admin, wp-includes, wp-content) and your database file (e.g., your-site.sql).
  3. Verify checksums: If your backup tool provides an MD5 or SHA256 hash, use it to confirm file integrity.

Store backups in multiple locations (e.g., computer, cloud storage) for redundancy. For more on this, see our guide on How to Backup WordPress.

Critical Considerations: Overwriting Data and Backup Checkpoints

Understand this critical fact: restoration is destructive. When you restore website from backup, you are completely replacing your current site with an older version. Any content added after the backup was created—new posts, orders, comments—will be permanently lost.

This makes backup checkpoints essential. Think of them as save points. Before any major change like a plugin update or theme modification, create a manual backup of your live site. This gives you a recent restore point if something goes wrong.

Always check the date and time of the backup you intend to use. Be certain you are willing to lose all data created after that point. You are trading your current (broken) site for a previous (working) version. Make sure it’s a trade you’re willing to make. For more on site protection, see our guide on WordPress Backup and Security.

How to Restore Website from Backup: A Step-by-Step Guide

With preparations complete, let’s restore website from backup. We’ll cover the three most common methods, each suited for different needs and technical comfort levels. Before you start, remember the golden rule: you are replacing your current site with an older version. Any changes made after the backup date will be lost.

Three distinct icons representing different website restoration methods: a shield for backup solutions, a folder for manual FTP/phpMyAdmin, and a control panel for hosting tools - Restore website from backup

  1. Backup Solution: The easiest, most user-friendly method for non-technical users.
  2. Manual Restore: Technical and requires attention to detail, but offers complete control.
  3. Hosting Provider Tools: Automated and convenient, but with potential limitations.

For more details, see our WordPress Backup and Restore guide.

Method 1: Using a WordPress Backup Solution

This is often the easiest and most recommended method, using a plugin’s user-friendly interface to restore website from backup with just a few clicks.

  1. Access the Plugin: If your site is completely down, you may need to perform a fresh WordPress installation on your server and then install your backup plugin. If you still have admin access, simply steer to the plugin’s dashboard.
  2. Locate Your Backup: The plugin will display a list of available backups. These might be stored locally on your server or in a connected cloud storage location. If they are in the cloud, you may need to re-authenticate your account (e.g., Google Drive, Dropbox) or manually upload the backup file from your computer if you downloaded it previously.
  3. Start the Restore: Select the backup version you want to use (pay close attention to the date and time) and click the “Restore” or “Recover” button. The plugin will launch a restoration wizard to guide you.
  4. Choose Components: The wizard will typically ask which components you want to restore. You can choose to restore everything (a full restore of files and database) or specific parts, such as only the plugins folder, the themes folder, or the database. For a full recovery from a major crash or hack, always restore all components.
  5. Monitor Progress: The plugin handles all the technical details of unzipping files, replacing directories, and importing the database. It will display a progress bar and notify you upon completion. The process can take anywhere from a few minutes to over an hour, depending on your site’s size and your server’s speed.

While incredibly convenient, be aware of limitations. Free versions of plugins may have restrictions on the size of the site they can restore or may not include automated migration features. A premium backup solution is often a worthwhile investment for business-critical websites.

Method 2: The Manual Restore Website from Backup Process

This technical method gives you maximum control and is an essential skill for situations where your admin dashboard is completely inaccessible. It requires using an FTP client (like FileZilla) and a database management tool (like phpMyAdmin).

  1. Prepare Files: Unzip your full backup file on your local computer. You should see the standard WordPress file structure (wp-admin, wp-content, wp-includes, etc.) and a database file, which typically has a .sql extension.
  2. Connect via FTP: Use your FTP client and credentials to connect to your server’s root directory (often public_html or www). For a clean restore, especially after a hack, it is highly recommended to delete the existing WordPress files and folders on the server. Warning: This action is irreversible. Triple-check that you have a valid, complete backup before deleting anything.
  3. Upload Files: Drag and drop all the folders and files from your unzipped backup (on your computer) to your server’s root directory via FTP. Do not upload the .sql database file; that comes next.
  4. Prepare the Database: Log in to your hosting control panel and open phpMyAdmin. Select your WordPress database from the list on the left. To ensure a clean import, you should remove the old data. Select all the tables and choose the “Drop” option from the dropdown menu. This permanently deletes the tables. Alternatively, you can create a brand new database and user, making sure to note the new credentials.
  5. Import Database: With your database selected and empty, click the “Import” tab at the top. Click “Choose File” and select the .sql backup file from your computer. Leave the default settings and click “Go” to begin the import. For very large databases, this process can time out; you may need to use a different tool or ask your host for assistance.
  6. Configure wp-config.php: This is the final, crucial step. Use your FTP client to find and edit the wp-config.php file on your server. You must ensure the DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST values match your database credentials exactly. Also, verify that the $table_prefix variable matches the prefix of the tables you just imported (e.g., wp_). Upload the corrected file back to your server.

For more on database restoration, see the official guide on Restoring Your Database From Backup.

Method 3: Using Your Hosting Provider’s Restore Tools

Many managed WordPress hosts and shared hosting providers offer built-in tools to restore website from backup, which is often the fastest and most convenient option if available.

  1. Find the Backup Tool: Log into your hosting account’s control panel (e.g., cPanel, hPanel, or a custom dashboard) and look for a section named “Backups,” “JetBackup,” “Site Restore,” or something similar.
  2. Select a Backup: The tool will present a list of available backup dates. Carefully choose the date that corresponds to when your site was last known to be working correctly.
  3. Choose Restore Type: Most hosting tools provide granular control, allowing you to perform a full restore (all files and databases) or a partial restore (e.g., only the public_html folder, a specific database, or even individual files). Select the option that best fits your needs.
  4. Initiate the Restore: Confirm your selection. The system will queue the restoration job and handle all the technical work on their powerful servers, which is often much faster than a manual FTP upload. Restoration time varies from a few minutes for small sites to over an hour for large ones.

While this method is incredibly convenient, it’s crucial to understand its limitations. You are entirely dependent on your host’s backup schedule (which might only be daily or weekly) and their data retention policy. For this reason, it’s wise to use host backups as a secondary safety net, not your primary backup strategy. For more control, consider our WordPress Backup and Restoration Services.

Post-Restore Checklist: Verification and Troubleshooting

After you restore website from backup, your work isn’t quite done. You must verify that everything is functioning correctly to prevent lingering issues for your visitors. Don’t assume a “restore successful” message means everything is perfect. A thorough check is essential.

A magnifying glass hovering over a website displayed on a laptop screen, symbolizing a thorough verification process - Restore website from backup

How to Verify a Successful WordPress Restoration

  • Clear All Caches: This is the most important first step. Aggressively clear your browser cache, any caching plugins (like W3 Total Cache or WP Rocket), your server-level cache (if applicable), and any Content Delivery Network (CDN) caches. This ensures you are viewing the freshly restored site, not a stale, broken version.
  • Test the Front-End: Steer your site as a visitor would. Click through the main navigation menu, test the search functionality, view several different pages and posts, and ensure all images and videos load correctly.
  • Check the Admin Dashboard: Log in to your WordPress admin area. Steer through the key sections: check that posts, pages, and comments are present. Verify that your media library is intact. Ensure all necessary plugins are active and their settings are correct.
  • Test Interactive Elements: Functionality is key. Submit a test entry to your contact forms. If you run a membership site, test the user login and registration process. If you have an e-commerce site, perform a test transaction to ensure the checkout process is working.
  • Reset Permalinks: Go to Settings → Permalinks in the WordPress dashboard and simply click “Save Changes” without altering anything. This flushes the rewrite rules in your .htaccess file and can prevent a wide range of 404 “Page Not Found” errors.
  • Audit Links and Media: Use an online tool or a plugin to perform a quick scan for broken links. Manually check a few file downloads or images from your Media Library to confirm they open correctly.

Troubleshooting Common Restore Errors

  • White Screen of Death (WSOD): This typically indicates a fatal PHP error, often caused by a plugin/theme conflict or memory exhaustion. Try increasing the PHP memory limit in your wp-config.php file by adding define('WP_MEMORY_LIMIT', '256M');. If that doesn’t work, use FTP to rename the wp-content/plugins folder to something like plugins_old to deactivate all plugins, then rename it back and reactivate them one by one to find the culprit.
  • Database Connection Error: The message “Error Establishing a Database Connection” almost always means there are incorrect credentials in your wp-config.php file. Carefully double-check that the DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST values are 100% correct.
  • Internal Server Errors / 404 Errors: A corrupted .htaccess file is a frequent cause. Log in via FTP, find the .htaccess file in your root directory, and delete it. Then, go to Settings → Permalinks in WordPress and click “Save Changes” to regenerate a fresh, clean version.
  • Mixed Content Errors: If you restored a site to a new server with an SSL certificate (https://), you may get warnings about insecure content. This happens when URLs in the database still point to http://. Use a plugin like Better Search Replace to find and replace all instances of http://yourdomain.com with https://yourdomain.com.
  • File Permission Issues: Incorrect file and folder permissions can prevent images from loading or plugins from working. Permissions should be set to 755 for all folders and 644 for all files. You can change these using an FTP client.
  • PHP Version Mismatch: Ensure the PHP version running on your server is compatible with the WordPress core, themes, and plugins from your backup. An outdated PHP version can cause a host of errors.

If you’re stuck, our WordPress Backup and Restoration Services team can help diagnose complex issues.

Security Steps After Restoring a Compromised Site

If you restored your site to recover from a hack, your job is not finished. You must close the security vulnerability that allowed the attack in the first place.

  • Change All Passwords: Immediately and without exception, reset all critical passwords. This includes all WordPress admin users, database users, FTP accounts, and your hosting account password.
  • Run a Malware Scan: Use a reputable security plugin (like Wordfence or Sucuri Scanner) to perform a deep scan of your restored site’s files and database to ensure no backdoors or malicious code snippets remain.
  • Update Everything: Vulnerabilities are most often found in outdated software. Update the WordPress core, all themes (and delete unused ones), and all plugins to their latest available versions to patch known security holes.
  • Review User Accounts: Go to the “Users” section in WordPress. Delete any suspicious admin accounts you don’t recognize and downgrade the roles of any users who don’t need high-level permissions.
  • Implement a WAF: A Web Application Firewall (WAF) from a service like Cloudflare or Sucuri acts as a shield, blocking malicious traffic and known attack patterns before they can even reach your site.
  • Harden wp-config.php: This file is a prime target. Check it for any suspicious code. Add the following line to disable the theme and plugin editor from the dashboard: define('DISALLOW_FILE_EDIT', true);. Finally, generate a new set of security keys and salts from the official WordPress generator and replace the old ones in the file.

Advanced Restoration Scenarios

Sometimes, a standard restore website from backup is overkill. Advanced scenarios, like partial restores or site migrations, require a more precise approach. These techniques save time and prevent data loss by targeting only specific parts of your site.

A diagram illustrating the process of migrating a website from a local development environment (Local by Flywheel icon) to a live server (cloud icon), with arrows indicating data flow and change - Restore website from backup

For more on moving your site, check out our WordPress Backup and Migration guide.

How to Restore a Specific Part of Your WordPress Site

A partial restore is like surgical repair for your website, fixing only what’s broken.

  • Database-Only Restore: Use this when your content or settings are corrupted but your files are fine. In phpMyAdmin, you can import your backup .sql file to overwrite the damaged database. You can even restore individual tables, like wp_comments, if only a specific part of your data is affected.
  • Specific Directory Restore: If you’ve lost your media library, you can use FTP to replace just the wp-content/uploads folder from your backup. This also works for a broken theme or plugin—simply replace the specific folder in wp-content/themes or wp-content/plugins. This is much faster than a full restore and doesn’t affect recent content.

How to Restore a WordPress Backup to a Different Environment

Restoring a backup to a new location (e.g., from a staging site to live, or local to a server) is essentially a site migration. The main challenge is updating all database references to the old URL.

  1. Move Files and Database: Use FTP to upload your site files to the new server. Create a new database and import your .sql backup file.
  2. Update wp-config.php: Edit the file with the new database credentials.
  3. Search and Replace URLs: The database contains absolute URLs that must be updated. A simple find-and-replace can break serialized data. Use a dedicated script or plugin to safely change all instances of the old URL to the new one (e.g., http://staging.example.com to https://www.example.com).
  4. Final Steps: After the migration, log in to the new site’s admin area, go to Settings → Permalinks, and click “Save Changes” to regenerate the .htaccess file. Also, check for issues like file permissions or PHP version compatibility on the new server.

Frequently Asked Questions about WordPress Backup Restoration

We understand that to restore website from backup can feel overwhelming, especially during a stressful site outage. Here are detailed answers to the most common questions we encounter.

How long does it take to restore a website from backup?

The time it takes to restore a WordPress site can vary significantly based on several factors:

  • Site Size: This is the biggest factor. A small blog with a few dozen posts and a small media library might be restored in 10-15 minutes. A large e-commerce site with thousands of products, orders, and high-resolution images could take over an hour.
  • Restore Method: Using your hosting provider’s one-click restore tool is often the fastest method, as the process runs on their powerful internal network. A manual restore via FTP is typically the slowest, as it’s limited by your personal internet connection’s upload speed.
  • Server Performance: The hardware and configuration of your web server play a role. A site on a high-performance dedicated server will restore much faster than one on an overloaded shared hosting plan.

As a general guideline, you can expect 15-30 minutes for most small-to-medium business websites and 30-60+ minutes for larger, more complex sites.

Can I restore a WordPress site without access to the admin dashboard?

Yes, absolutely. In fact, losing access to the /wp-admin area (due to the White Screen of Death or a plugin error) is one of the most common reasons for needing to restore a site. You have two primary options that completely bypass the WordPress admin dashboard:

  1. Manual Restore: Use an FTP client (like FileZilla) to access your server and phpMyAdmin to access your database. This combination allows you to directly replace your site’s files and import your database, giving you full, low-level control.
  2. Hosting Provider Tools: Log in to your hosting account’s control panel (cPanel, Plesk, etc.) and use their built-in backup and restore feature. This is usually the easiest and most straightforward option if your host provides it.

For advanced users comfortable with the command line, using WP-CLI (WordPress Command Line Interface) is another powerful method for restoring files and importing a database without needing a graphical interface.

What is the role of the wp-config.php file in the restore process?

The wp-config.php file is one of the most important files in your WordPress installation. It acts as the central configuration file and the bridge between your WordPress files and your database. Its role during a restore is critical:

  • Database Connection: It contains the four essential pieces of information needed to connect to the database: the database name (DB_NAME), username (DB_USER), password (DB_PASSWORD), and server hostname (DB_HOST). If any of these are incorrect after a restore, you will see the “Error Establishing a Database Connection.”
  • Table Prefix: It defines the $table_prefix (e.g., wp_) that WordPress expects to find at the beginning of all its database table names. This must match the prefix of the tables you imported from your backup file.
  • Security Keys: It contains a set of unique authentication keys and salts that help secure your site’s cookies and user sessions. It is a crucial security best practice to regenerate these keys after restoring a site, especially if you suspect it was compromised.

Will restoring a backup affect my SEO?

Restoring a backup can have a temporary impact on SEO, but if done correctly, the effects are minimal and short-lived. Here’s what to consider:

  • Downtime: The biggest SEO risk is prolonged downtime. If search engine crawlers repeatedly try to access your site and fail, it can lead to a drop in rankings. A quick restoration minimizes this risk.
  • Lost Content: If you restore an older backup, any new posts or pages created since that backup was made will be lost. If those pages were already indexed by Google, they will now result in 404 errors. You will need to either recreate the content or set up 301 redirects for those URLs.
  • Post-Restore Actions: After restoring, it’s wise to use Google Search Console’s “URL Inspection” tool on your homepage and a few key pages to ensure Google can access them correctly. If you had to remove a large number of pages, consider submitting an updated sitemap. The key is to get your site back to a healthy, crawlable state as quickly as possible.

Conclusion

Mastering how to restore website from backup is an essential WordPress skill. It provides the confidence to manage and grow your site without fear, knowing you can recover from any disaster, whether it’s a failed update, a hack, or user error.

We’ve covered the entire process, from preparation and verification to the different restoration methods and troubleshooting common errors. Regular backups are your best insurance policy, but they are only useful if you know how to restore them effectively.

While this guide empowers you with knowledge, sometimes you need an expert. At wpOncall, we specialize in making WordPress management stress-free. Our team handles daily updates, robust backups, and provides unlimited support with fast response times. When disaster strikes, we’re here to get you back online quickly and securely.

For professional, hands-off management of your site’s security and backups, consider our WordPress Backup and Restoration Services. Let us handle the technical work so you can focus on your business.