Where your website files actually are in a WordPress export
When you download a WordPress backup as a ZIP file, your website content is not sitting in one obvious folder. The structure depends on whether you exported the database, the files, or both — and what tool created the backup. Most commonly, you will find your posts, pages, and images scattered across several directories, with the database stored as an XML or SQL file that you cannot read by opening it in a text editor.
The fastest way to locate specific content is to understand what you are looking for. If you need to read your posts and pages as text, you are looking for an XML file. If you need to recover images or documents, you are looking for a wp-content folder. If you need to move everything to a new WordPress site, you need both the database file and the uploads folder.
Key Takeaways
- Posts and pages are stored in an XML file (usually named export.xml or similar) that you open in a text editor or import tool, not by clicking it in a folder.
- Images and media files are in the wp-content/uploads folder, organized by year and month.
- The wp-content folder also holds your themes and plugins, which are stored separately from your actual posts.
- If your backup includes the database as a SQL file, that file contains all your posts, pages, comments, and settings in a format only WordPress can read directly.
- Different backup tools organize files differently, so check for a README file or manifest that explains the structure.
Finding posts and pages in the XML export file
When you export WordPress through the built-in export tool (Tools > Export in the WordPress dashboard), you get a single XML file. This file contains every post, page, comment, and custom field, but it is not readable as a normal document. Open it with a text editor like Notepad (Windows), TextEdit (Mac), or any code editor, and you will see raw XML markup surrounding your content.
Search for the text <title> to find post titles, or search for <content:encoded> to find the actual post body. Each post is wrapped in <item> tags. If you are looking for a specific post, use your text editor's Find function (Ctrl+F on Windows, Cmd+F on Mac) to search for a word or phrase you remember from that post.
This XML file is meant to be imported into another WordPress site using the WordPress Importer plugin, not to be edited directly. If you need to read your content without importing it, copying and pasting from the XML file works, but the formatting will be messy because you are also copying the markup.
Locating images and media files
Images and documents you uploaded to WordPress are stored in wp-content/uploads. Inside that folder, files are organized by year and month — so a photo uploaded in March 2023 would be in wp-content/uploads/2023/03. Open the ZIP file with your computer's built-in archive tool (right-click and select Extract on Windows, or double-click on Mac) and navigate to that path.
If you used a third-party backup tool like UpdraftPlus or BackWPup, the folder structure might be slightly different. Look for a folder named uploads, media, or wp-content. If you cannot find it, check whether the backup includes a README or manifest file that maps out the directory structure.
Once you find the uploads folder, you can copy the entire thing to your computer or to a new WordPress installation. All the files inside maintain their original names and folder organization, so your posts will still link to the correct images if you import the database alongside the files.
Understanding the wp-content folder and what else is inside
The wp-content folder holds three main things: uploads (your media), themes (your site design), and plugins (your extensions). If you are only looking to recover images, you only need the uploads subfolder. If you are moving your entire site, you may want to keep the themes and plugins folders as well, though you can usually reinstall those from the WordPress repository or your original source.
Themes are stored in wp-content/themes, with each theme in its own subfolder. Plugins are in wp-content/plugins, also in individual subfolders. If your backup includes these, you can copy them directly into a new WordPress installation's wp-content folder, and they will be recognized immediately — though you will still need to activate them through the WordPress dashboard.
Finding the database file if your backup includes it
Some backup tools export the database as a separate SQL file instead of an XML export. This file is usually named something like wordpress.sql, backup.sql, or db.sql. It contains all your posts, pages, comments, users, and settings in a format that only WordPress (or a database tool) can read directly.
You cannot open a SQL file in a text editor and read your posts the way you can with XML — the file is structured for database software, not humans. To use a SQL file, you need to import it into a new WordPress database using phpMyAdmin, a hosting control panel, or a WordPress migration plugin. The backup tool you used should include instructions for importing the SQL file.
If you have both an XML export file and a SQL file in your backup, the XML file is usually easier to work with for recovering individual posts. The SQL file is better if you want to move your entire site to a new location and preserve every setting and user account.
Checking for a README or manifest file
Before you dig through folders, look at the top level of the extracted ZIP for a README.txt, manifest.txt, or index.html file. Backup tools like UpdraftPlus, BackWPup, and Duplicator include these files to explain what is in the backup and how to use it. These files often contain the exact folder structure, file names, and import instructions specific to that backup.
If you created the backup yourself through your hosting control panel or a plugin, the README will tell you whether the backup includes the database, the files, or both. It may also list the WordPress version and PHP version used when the backup was created, which matters if you are moving to a new host.
What to do if the ZIP file structure looks different
Different backup tools organize files differently. Some create a folder named after your site inside the ZIP, so you have to open that folder first to see wp-content. Others flatten the structure and put wp-content at the top level. A few backup tools create a completely custom structure with folders named by date or backup type.
Start by extracting the ZIP file to a folder on your computer, then open that folder and look for wp-content or uploads. If you see a folder with your site name, open that first. If you see a folder named backups, archives, or wordpress, open that. Most backups follow the standard WordPress directory structure once you get past the outer wrapper.
If you are completely lost, search the extracted folder for a file named wp-config.php or wp-settings.php — these are core WordPress files that will be in the root of any complete WordPress backup. If you find them, you are in the right place, and wp-content should be right next to them.
Frequently Asked Questions
Can I read my posts without importing the backup into WordPress?
Yes, if the backup includes an XML export file. Open it in any text editor and search for your post titles or content. The markup will be visible, but your actual words are there. For a SQL database file, you cannot read the posts without importing the database into WordPress or using a database viewer tool.
Do I need the themes and plugins folders to recover my content?
No. Posts, pages, and images are independent of themes and plugins. You can recover your content with just the database file or XML export and the uploads folder. Themes and plugins are optional and can be reinstalled separately.
What if my backup is a tar.gz or tar file instead of a ZIP?
These are compressed archive formats, similar to ZIP. On Mac, double-clicking them extracts automatically. On Windows, you may need 7-Zip or WinRAR to open them. Once extracted, the folder structure inside is the same as a ZIP backup.
How do I know if my backup includes the database or just the files?
Look for a SQL file (wordpress.sql, db.sql, backup.sql) or an XML file (export.xml). If you see a SQL file, the database is included. If you see only an XML file, only the posts and pages are included, not the database. Check the README file if one exists — it will state clearly what is included.
Can I import just the images without importing the entire backup?
Yes. Copy the wp-content/uploads folder from the backup to your new WordPress installation's wp-content folder using FTP or your hosting file manager. The images will be accessible immediately, though the posts may not link to them correctly until you import the database or XML file.