Your WordPress website may contain years of blog posts, customer enquiries, product information, images, and business data. A failed update, accidental deletion, malware infection, or server problem can put that information at risk.
A reliable backup gives you a way to recover your website without rebuilding everything from scratch. However, downloading a few website files or exporting your posts alone may not be enough. A complete WordPress backup usually needs both your website files and its database.
In this guide, you will learn how to back up and restore a WordPress website using cPanel, phpMyAdmin, and backup plugins. You will also learn how to store backups safely, choose an appropriate backup schedule, and troubleshoot common restoration problems.
Important note about migration: Free migration eligibility, supported services, and migration scope depend on the hosting service and plan. If you are moving your website to another provider, confirm the available migration assistance and its scope before purchasing.
Who Should Back Up a WordPress Website?
Regular backups are useful for anyone who manages a WordPress website, including:
- Bloggers who publish articles and upload images regularly.
- Small businesses that depend on their websites for enquiries or sales.
- Online stores that receive orders and customer information.
- Website administrators who update WordPress, themes, or plugins.
- Developers preparing to redesign or move a website to another host.
Even if your hosting provider offers backup services, maintaining your own independent backup is an important precaution.
What Should a WordPress Backup Include?
A complete backup of a typical self-hosted WordPress website contains two main components: website files and the database.
1. WordPress website files
Your website files include:
- WordPress core files.
- Installed themes and plugins.
- Images, videos, and other uploaded media.
- The wp-config.php configuration file.
- Additional custom code, configuration files, and website-specific files.
Your wp-content directory is particularly important because it normally contains your themes, plugins, uploads, and other content-related files.
2. WordPress database
The database stores much of your website’s actual content and configuration, including:
- Blog posts and pages.
- Comments.
- WordPress settings.
- Navigation menus and widget settings.
- User accounts and related information.
- Plugin and theme settings stored in the database.
- E-commerce orders and other application data, depending on the website and its plugins.
The database commonly uses MySQL or MariaDB.
Why do you need both?
Downloading your website directory does not normally include a usable export of the database. Likewise, exporting the database does not give you the uploaded images, theme files, and plugins required to recreate the complete website.
For a full recovery, keep the website files and database backup together as a matching backup set.
For more technical details, see the official WordPress backup documentation.
When Should You Back Up Your Website?
The right schedule depends on how frequently your website changes and how much recent information you could afford to lose.
| Website type | Suggested backup frequency |
| Personal website with infrequent updates | Weekly, with an additional backup before major changes |
| Regularly updated blog | Daily or after significant publishing activity |
| Business website receiving frequent enquiries | Daily or more frequently if needed |
| Online store with frequent orders | Frequent automated backups coordinated with database activity |
| Website undergoing a redesign or major update | Before changes and after successful testing |
These are general recommendations, not fixed requirements. A website that receives orders or customer submissions throughout the day may need more frequent backups than a static portfolio.
Always create a fresh backup before updating WordPress core, changing themes, installing major plugins, editing important configuration files, or migrating to another host.
Before You Start: Prepare for a Safe Backup
Before making a backup or restoring an older version, follow these steps.
- Identify your WordPress installation. Confirm the correct domain and directory, especially if your hosting account contains multiple websites.
- Check available storage. Large media libraries and database exports may require considerable space.
- Record the backup date. Use a clear filename that includes the website and date, such as example-site-backup-2026-10-23.
- Choose a secure destination. Download a copy to your computer or store it in a separate, trusted storage location.
- Check the website’s current state. Record any existing errors or unusual behaviour so you can compare the site after restoration.
- Protect your credentials. Database exports and configuration files may contain sensitive information. Do not share them publicly.
If your website is already compromised, avoid treating an old backup as automatically safe. You may need to identify a clean restore point and address the security issue before bringing the site back online. See FoxNett’s guide to securing a WordPress website.
Method 1: Back Up WordPress Using cPanel
If your hosting account uses cPanel, you can back up your website files through File Manager and export the database through phpMyAdmin. Menu names and permissions may vary by hosting provider.
Step 1: Log in to cPanel
Sign in to your hosting account and open cPanel.
Locate File Manager. In many cPanel accounts, your primary website files are stored in the public_html directory. However, addon domains and other installations may use separate directories.
Confirm the correct document root before proceeding.
Step 2: Create a backup of your website files
- Open File Manager.
- Navigate to your WordPress installation directory.
- Select the files and folders that belong to that installation.
- Use the Compress option to create a ZIP archive if it is available.
- Give the archive a descriptive name, such as wordpress-files-2026-10-23.zip.
- Wait for compression to finish.
- Download the archive to your computer or another secure storage location.
Make sure the archive includes the relevant WordPress files, especially wp-content, wp-config.php, and any custom files required by your site.
Important: Do not assume that every file in public_html belongs to one WordPress installation. If multiple sites or applications share the directory, identify the correct files before creating or restoring an archive.
If your hosting account has a dedicated backup feature, you may also be able to use it. Check the available options and the provider’s instructions.
Step 3: Find your WordPress database
To identify the database name, open your WordPress wp-config.php file in File Manager and look for the DB_NAME setting.
It may resemble this example:
define( ‘DB_NAME’, ‘your_database_name’ );
The value shown here is an example, not the actual name of your database.
Do not publish your wp-config.php file or share its database credentials. Close the file without making changes if you only need to identify the database.
Step 4: Export the database using phpMyAdmin
- Return to cPanel and open phpMyAdmin.
- Select the database associated with your WordPress installation.
- Check that the selected database contains the tables for the correct website.
- Open the Export tab.
- Choose Quick export for a straightforward export, or use Custom if you need more control.
- Select SQL as the export format.
- Start the export and save the downloaded file.
The database backup may be named something like wordpress-database-2026-10-23.sql. Depending on the export settings, it may instead be compressed.
Step 5: Store the files and database together
You should now have a website-files archive and a database export.
Store them together in a clearly labelled folder. Keep at least one copy outside your hosting account, so a hosting account problem does not remove every copy of your backup.
Step 6: Check that the backup is usable
Before relying on your backup:
- Confirm that the downloaded files are not empty.
- Check that the ZIP archive opens successfully.
- Check that the database export has a plausible file size and contains SQL statements.
- Keep the files and database export associated with the same backup date.
- Where possible, test restoration on a staging site or another safe environment.
A successful download does not prove that the backup can be restored. Testing provides stronger evidence that the backup is usable.
Method 2: Back Up WordPress Using a Plugin
A backup plugin can simplify the process by creating scheduled backups and, depending on the plugin and configuration, storing them in remote storage.
The exact options depend on the plugin, its version, and your hosting environment.
Step 1: Choose a suitable backup plugin
When evaluating a plugin, check whether it supports:
- Backing up both website files and the database.
- Scheduled backups.
- Downloading backup archives.
- Remote storage, if available and supported.
- Restoring the website from a backup.
- Notifications when backups fail.
- Backup retention controls.
Do not choose a plugin based only on the number of installations or promotional claims. Confirm that its backup and restoration features meet your needs.
Step 2: Install and configure the plugin
- Log in to your WordPress dashboard.
- Open Plugins → Add New Plugin.
- Search for the backup plugin you have chosen.
- Check its publisher, compatibility, and maintenance information.
- Install and activate it.
- Open the plugin’s settings and follow its setup instructions.
Only install plugins from sources you trust, and avoid keeping multiple backup plugins active if they perform overlapping jobs without a clear reason.
Step 3: Configure what to back up
Select both the database and the website files for a complete backup.
If the plugin lets you select individual directories, check that the backup includes your media uploads, themes, plugins, and required configuration files. Review any exclusions carefully.
Step 4: Choose a backup schedule
Set the schedule according to how frequently the website changes. For example, a regularly updated blog may need daily database backups and regular file backups.
A busy online store may need more frequent database protection because new orders can arrive between scheduled backups. Follow the plugin’s guidance and test the configuration.
Step 5: Configure remote storage
If the plugin supports it, connect a separate storage destination, such as a compatible cloud-storage account.
Use a dedicated account where appropriate, enable multi-factor authentication, and restrict access to the people who need it.
Do not assume that a backup stored only on the same hosting account is sufficient. If that account becomes inaccessible or its files are damaged, the backup may be unavailable too.
Step 6: Run a backup and verify the result
Start a manual backup and wait for the plugin to report completion.
Check the backup log, confirm that the expected files and database were included, and verify that the backup is accessible from its storage location.
A plugin’s success message is useful, but a test restoration is the best way to confirm that your recovery process works.
Method 3: Back Up WordPress Using a Hosting Backup Feature
Some hosting plans provide a backup feature through the hosting control panel. The exact schedule, retention period, backup contents, and restoration options vary by service.
FoxNett’s web hosting page lists daily backups among its hosting features. However, FoxNett’s Terms of Service state that customers must maintain their own backups outside FoxNett and that provider-created backups are not guaranteed to exist, be complete, or be restorable. Restore fees may apply.
For that reason, treat hosting backups as an additional recovery option rather than your only copy.
If you use a hosting backup feature:
- Log in to your hosting control panel.
- Find the backup or restore section, if available.
- Review the dates and types of backups available.
- Check whether the feature covers both website files and the database.
- Review the provider’s restoration instructions and any applicable fees.
- Keep an independent backup outside the hosting account.
If you cannot find the feature or are unsure what it includes, contact your hosting provider before relying on it.
How to Restore a WordPress Website From a Backup
Restoring a website replaces some or all of its current files or database with an earlier version. This can remove changes made after the backup was created.
Before proceeding, identify the backup you want to restore, make a copy of the current site if possible, and confirm whether you need to restore the entire website or only specific files or database tables.
For an important business website or online store, consider testing the restoration on a staging environment first.
Method 1: Restore Using a Backup Plugin
If your plugin provides a restore feature, follow its documentation. A typical process looks like this:
- Log in to WordPress if the dashboard is accessible.
- Open the backup plugin’s restore or backup section.
- Select the backup by date and time.
- Check which components will be restored.
- Read the plugin’s warning about files or database content that will be overwritten.
- Start the restoration and allow it to finish without interrupting the process.
- Follow any additional instructions provided by the plugin.
- Test the website, including its pages, images, forms, and important functions.
If the WordPress dashboard is unavailable, you may need to use the plugin’s supported recovery procedure or restore through your hosting control panel. Do not assume that every plugin supports restoration from outside WordPress.
Method 2: Restore Website Files Through cPanel
Use this method when you have a website-files backup archive and access to the correct hosting directory.
Step 1: Protect the current version
Before replacing files, download or otherwise preserve the current files if possible. Confirm the correct website directory and make sure you are not overwriting another installation.
Step 2: Upload the backup archive
- Log in to cPanel.
- Open File Manager.
- Navigate to the correct WordPress directory.
- Upload the ZIP archive.
- Wait for the upload to complete.
- Check that the archive is present and appears complete.
If the archive is large and the upload fails, you may need to use a supported file-transfer method or ask your hosting provider for help.
Step 3: Extract the archive
Select the uploaded archive and choose Extract if that option is available.
Check the extracted folder structure carefully. Depending on how the backup was created, the archive may contain a top-level folder rather than the WordPress files directly.
Do not extract files blindly over the live site. Confirm the archive’s contents and destination first, especially if you need to replace existing files.
Step 4: Restore the required files
Restore the files needed for the selected recovery point. If you are restoring the entire website, this may include wp-content, wp-config.php, WordPress core files, and custom configuration files.
Avoid deleting or replacing files until you have confirmed that the backup is correct and that you understand which existing files will be affected.
Method 3: Restore the WordPress Database Using phpMyAdmin
A database restore can replace posts, pages, settings, users, and other information with the state captured in the backup. Proceed carefully.
Step 1: Confirm the target database
Open cPanel and launch phpMyAdmin. Identify the database used by the WordPress installation you are restoring.
If you are unsure, check the DB_NAME setting in that installation’s wp-config.php file.
Step 2: Protect the current database
If the current database is still accessible, export it before importing the old backup. This gives you a way to recover the current state if you select the wrong backup or discover that the restoration is incomplete.
Step 3: Check the database backup
Confirm that you have the correct SQL export and that it corresponds to the files you intend to restore.
If the backup is compressed, follow the import instructions for the format you have. Do not modify the SQL file unless you know what needs to change.
Step 4: Import the backup
- Select the correct database in phpMyAdmin.
- Open the Import tab.
- Choose the SQL backup file or a supported compressed export.
- Confirm the format and import settings.
- Start the import.
- Wait for phpMyAdmin to finish and review any errors or warnings.
Important: Importing an old database into an existing database can overwrite tables or cause conflicts, depending on the export and import settings. If you are not certain how the import will affect existing tables, stop and ask your hosting provider or a qualified administrator for help.
Never import a database into a production site without confirming the target database and understanding the consequences.
Step 5: Check database credentials
If the restoration uses a different database name, username, or password, the values in wp-config.php must match the credentials configured for the restored database.
If the credentials have not changed, do not edit the file unnecessarily.
Method 4: Restore WordPress on a New Hosting Account
Restoring a backup to a new host is more involved because the destination may use different database credentials, directory paths, PHP settings, or server configuration.
A typical process includes:
- Create the destination hosting account and prepare a compatible database.
- Upload and extract the website files into the correct document root.
- Create or identify the destination database and database user.
- Import the database backup into that database.
- Update the database settings in wp-config.php if the credentials differ.
- Configure the domain and any required server settings.
- Test the site on the destination before directing normal visitors to it.
- Check SSL, URLs, forms, media, plugins, and any important business functions.
- Confirm the new site is working before retiring the old hosting account.
If the domain is also changing, the database may contain references to the previous domain. Domain changes can require careful URL updates, particularly where serialized data is involved. Use a WordPress-aware migration tool or qualified technical assistance rather than performing an indiscriminate text replacement in the database.
For additional context, read FoxNett’s guide to free website migration and moving a website to a new host. Despite the article title, migration eligibility and scope must be confirmed under the current service terms.
If you need to install a fresh WordPress instance before restoring your site, see how to install WordPress on cPanel.
How to Test Your Website After Restoration
Do not assume that a successful import or file extraction means the website is fully recovered. Check the following items.
Website content
- Open the homepage and several important pages.
- Check recent posts and pages.
- Confirm that images, downloadable files, and other media load correctly.
- Check navigation menus and internal links.
WordPress dashboard
- Log in to the WordPress dashboard.
- Confirm that posts, pages, users, themes, and plugins appear as expected.
- Check whether any plugin reports a missing configuration or database error.
Forms and business functions
- Submit a test contact form.
- Test important calls to action and booking forms.
- For an online store, carefully test product pages, checkout, payment integrations, and order records without creating unintended live transactions.
Security and performance
- Check that HTTPS works correctly.
- Review any security alerts or suspicious files.
- Test page loading and confirm that important scripts and styles work.
- Clear the appropriate WordPress, server, or CDN cache if old content is still being displayed.
If the restoration was intended to fix an error, check whether the original issue has disappeared. FoxNett’s guide to fixing common WordPress errors can help you investigate any remaining problems.
Common WordPress Backup and Restore Problems
1. The backup archive will not open
Possible causes: The download was interrupted, the archive is incomplete, or the file is damaged.
What to do:
- Download the backup again if a valid copy is available.
- Check the file size against the original.
- Test the archive with a trusted archive utility.
- Use another known-good backup if the archive is corrupted.
Do not delete other backup copies until you have confirmed that the replacement works.
2. The database import fails
Possible causes: The SQL file is too large for the available import limits, the database lacks space, the file is damaged, or the import contains an SQL error.
What to do:
- Check the exact error message.
- Confirm that the destination database exists and that the database user has the required privileges.
- Check available database storage and applicable import limits.
- If the file is too large, use a supported command-line import method or ask the hosting provider for assistance.
Avoid repeatedly importing the same file without checking the error, because a partial import may leave the database in an inconsistent state.
3. The website shows “Error Establishing a Database Connection”
Possible causes: Incorrect database credentials, a database service problem, or a damaged or unavailable database.
What to do:
- Confirm the database name, username, and password in wp-config.php.
- Check that the database user has access to the selected database.
- Contact your hosting provider if the database service is unavailable or the issue persists.
Do not post database credentials publicly when asking for help.
4. The website displays a blank page or critical error
Possible causes: A plugin or theme incompatibility, a PHP error, or an incomplete file restoration.
What to do:
- Check the WordPress recovery email if one was generated.
- Review the available PHP or WordPress error logs.
- Confirm that the necessary plugins, themes, and files were restored.
- Investigate recent updates or changes that may have caused the problem.
See the WordPress troubleshooting guide for more help.
5. Images are missing after restoration
Possible causes: The uploads directory was not restored, the files were extracted into the wrong location, or the database references files that are missing.
What to do:
- Check that the wp-content/uploads directory contains the expected media files.
- Confirm that the files are in the correct WordPress installation.
- Check the affected image URLs and file permissions.
- If the backup did not include the media files, locate a complete backup before attempting further recovery.
6. The website redirects to the wrong domain
Possible causes: The restored database contains old site URLs, or the server and WordPress configuration do not match.
What to do:
- Check the WordPress Address and Site Address settings.
- Confirm the domain’s DNS configuration.
- Check HTTPS and any redirect rules configured in the hosting account or CDN.
- Use a WordPress-aware search-and-replace tool if the domain has changed, taking care with serialized data.
For related guidance, see FoxNett’s article on connecting a domain name to web hosting.
7. The website works, but recent changes are missing
Possible cause: The restored backup was created before those changes.
What to do:
- Confirm the date and time of the backup you selected.
- Check whether a newer database backup is available.
- If necessary, recover specific newer data from another backup or system.
Be careful when combining old and new database records. Simply importing a newer database over an older restored one may overwrite content or cause inconsistencies.
8. The restoration times out
Possible causes: A large archive, limited server resources, PHP execution limits, or a slow connection.
What to do:
- Check whether the operation completed partially.
- Review server logs and available storage.
- Use a supported alternative such as a command-line restore or ask the hosting provider for help.
- Avoid repeatedly starting a full restore before checking the state of the existing files and database.
Best Practices for WordPress Backups
Use these habits to make your backup routine more reliable.
Keep independent copies
Maintain more than one backup copy, including at least one outside your hosting account. For important websites, consider following the 3-2-1 backup approach: three copies of important data, on two different types of storage, with one copy stored off-site.
Keep several restore points
Do not keep only the latest backup. If a problem goes unnoticed for several days, your most recent backup may already contain the issue. Retain multiple dated backups according to your storage capacity and recovery needs.
Automate backups where practical
Scheduled backups can reduce the risk of forgetting. However, automation is only useful when it is configured correctly and monitored. Check backup logs and test restoration periodically.
Secure backup files
Backups can contain private user information, website credentials, and database content. Restrict access, use trusted storage, and protect accounts with strong passwords and multi-factor authentication where available.
Do not leave backup archives or database exports publicly accessible inside your website directory.
Test your recovery process
Occasionally restore a backup to a staging site or another safe environment. A test helps identify missing files, incomplete database exports, and restoration steps that may otherwise fail during an emergency.
Back up before major changes
Create a fresh backup before updates, theme changes, plugin installations, code edits, or migrations. Once the change is complete and tested, create another backup of the working website.
Understand what your hosting plan includes
Check your hosting plan’s backup schedule, retention period, restoration options, and any applicable fees. These details vary by provider and plan.
For additional advice on keeping a WordPress website protected, read 12 essential steps to secure a WordPress website.
Frequently Asked Questions
1. How do I back up my WordPress website completely?
Back up both the website files and the database. You can use a backup plugin, your hosting provider’s backup feature, or cPanel and phpMyAdmin. Keep the resulting backup in a secure location outside your hosting account and verify that it is usable.
2. Can I back up WordPress without a plugin?
Yes. On a cPanel host, you can download the website files using File Manager and export the database through phpMyAdmin. Other hosting environments may provide different tools or command-line options.
3. How often should I back up my WordPress website?
It depends on how often your website changes. A small blog may be adequately served by daily or weekly backups, depending on publishing activity, while a busy online store may need more frequent database backups. Always back up before major changes.
4. Does a WordPress backup include the database?
Not necessarily. A backup of only the website files usually does not include a database export. Confirm that your backup method covers both components if you need to restore the complete site.
5. Can I restore WordPress without access to the dashboard?
Often, yes. Depending on the available backup and hosting tools, you may be able to restore files through File Manager or FTP/SFTP and import the database through phpMyAdmin or another supported database tool. Some plugin-based restores require their own recovery process.
6. Will restoring a backup delete my current content?
It can. Restoring older files or a database may replace newer content, settings, uploads, orders, or other changes. Preserve the current version before restoring and carefully check the backup date.
7. Can I restore a WordPress backup to a different hosting provider?
Yes, provided you have a complete backup and the destination environment supports the website. You may need to create a new database, update credentials, adjust configuration, and check domain and server settings.
8. Does my hosting provider’s backup replace my own backup?
It should not. Provider backups can be useful, but their availability, retention, and restoration conditions vary. Keep an independent copy outside your hosting account and confirm your provider’s current terms.
9. Can a backup restore my website after malware infection?
A backup can help recover a clean version of your website, but it does not automatically remove the underlying security weakness. Select a backup from before the infection, investigate how the compromise happened, and secure the website before restoring normal operation.
10. What should I do if my WordPress backup will not restore?
Check the archive, database import error, available storage, permissions, and server logs. If the issue persists, contact your hosting provider or a qualified WordPress administrator. Keep the original backup untouched while troubleshooting.
Conclusion
Backing up and restoring a WordPress website is an essential part of managing a reliable website. A complete backup includes both the website files and database, while a safe recovery process requires choosing the correct restore point, protecting the current version, and testing the site afterward.
Create backups regularly, store independent copies securely, and test your restoration process before an emergency occurs. These habits can make it much easier to recover from accidental changes, failed updates, or hosting problems.
If you are choosing hosting for a WordPress website, explore FoxNett’s web hosting plans. Review the features and terms for the plan that suits your needs, and confirm backup and restoration arrangements before purchasing. If you are planning to move an existing website, ask FoxNett to confirm migration eligibility, supported services, and the exact scope of assistance available for your plan.
Google Workspace
Zoho Mail
Zoho Workplace
Adobe Solutions
Zoom Solutions