How to export WordPress site data to CSV, XML, or Excel
WordPress includes a built-in XML export for posts, pages, comments, taxonomies, custom fields, and users. CSV and Excel exports, advanced field selection, filtering, and scheduled jobs require a plugin or custom development, so choose the format before exporting.
- 01Choose the export format
- 02Export content with WordPress
- 03Check the manual route's limits
- 04Create a structured export
- 05Add filters and map fields
- 06Run, verify, and store it
What you need
- Administrator access to WordPress
- A list of the post types and fields to export
- A safe place to store the exported file
- A separate full-site backup if you are migrating the entire site
Choose the export format
Use WordPress XML when you want to move content to another WordPress site. The built-in exporter creates a WordPress eXtended RSS, or WXR, file containing content and related data rather than a spreadsheet. It can include posts, pages, comments, custom fields, categories, tags, custom taxonomies, and users.
Choose CSV or Excel when the file is going to a spreadsheet, accounting system, marketplace, or another structured-data tool. These formats are also more suitable when you need selected columns, custom filters, or a repeatable export.
Export content with WordPress
In the WordPress dashboard, go to Tools > Export. Select All content, or choose Posts or Pages to expose filters for authors, dates, categories, and status. Click Download Export File and save the XML file somewhere outside the website.
You can import this file on another WordPress installation through Tools > Import > WordPress. This route is fine for a straightforward WordPress-to-WordPress content move, but it is not a full-site backup: themes, plugins, server settings, and the complete media library are not covered in the same way as a host or database backup.
Check the manual route's limits
The built-in exporter does not provide a general CSV or Excel download. It also only exports post types registered as exportable, so a custom post type may be absent if its registration disables exporting.
Do not rename a WXR file to .csv or open it in Excel expecting a useful table. You would need to write a script that reads the XML, selects fields, handles repeated values, and creates the spreadsheet. That is workable for developers, but it is a poor Friday-afternoon fix for a large site or a recurring job.
Create a structured export
For CSV, XML, or Excel, install an export tool that supports the data type you need, then create a new export for posts, pages, users, WooCommerce data, or a custom post type. Build the output by selecting the fields and arranging them as columns or XML elements.
A structured export tool can expose standard fields, custom fields, taxonomies, order data, product data, and user data without making you query the database directly. WP All Export's documented workflow uses All Export > New Export, followed by a drag-and-drop field editor.
Add filters and map fields
Use filters to limit the records before the export runs. Typical rules include date, status, author, category, price, order total, address, and custom-field values. Multiple rules can be joined with AND or OR; check this carefully because using AND when you mean OR can return no records.
Map each output field to the destination system's expected name and format. For CSV, confirm the delimiter and whether the first row contains column headings. For XML, confirm the root element, record element, nesting, and whether special characters need CDATA handling.
Run, verify, and store it
Run the export, download the file, and open it in a text editor or spreadsheet before relying on it. Check the record count, column headings, dates, prices, HTML, accented characters, images, repeated values, and custom fields. A field that appears blank may be stored as metadata, an array, or a serialized value and may need a different mapping.
Keep the original export in a restricted location and remove sensitive files from public uploads when they are no longer needed. For recurring structured exports, consider WP All Export Pro Premium for custom filters, field mapping, schedules, and WooCommerce support. It is suited to structured exports, not a replacement for a full-site backup.
Let WP All Export Pro Premium do it
Custom filters, field mapping, schedules, and WooCommerce support; choose it for structured exports rather than full-site backups.
Sources
- wordpress.org /documentation/article/tools-export-screen/?utm_source=opena…
- developer.wordpress.org /reference/functions/export_wp/?utm_source=openai
- wpallimport.com /documentation/how-to-export-woocommerce-customers-to-csv-or…
- wpallimport.com /documentation/filter-exported-wordpress-data/?utm_source=op…
Questions
- Can WordPress export site data to CSV without a plugin?
- No, WordPress does not provide a general CSV exporter in the dashboard. Its built-in Tools > Export screen creates a WXR XML file for WordPress content. You can write custom code against the database or WordPress APIs and generate CSV yourself, but a plugin is the practical route when you need selected fields, custom post types, custom fields, or repeatable exports.
- Does the WordPress XML export include the whole website?
- No, the WordPress XML export is primarily a content export, not a complete website backup. It can include posts, pages, comments, custom fields, taxonomies, users, and other exportable content, but you should separately back up the database, themes, plugins, uploads, and server configuration when moving or restoring an entire site.
- Why are custom fields missing from my export?
- Custom fields may be missing because the exporter is not exposing that metadata, the field belongs to another record type, the value is stored as an array or serialized data, or the custom post type is not registered as exportable. Confirm that you selected the correct post type, add the field explicitly, and inspect a sample record before exporting everything.
- What is the difference between XML, CSV, and Excel exports?
- XML is best for structured WordPress-to-WordPress transfers or systems that expect nested data. CSV is a simple table suited to spreadsheets and imports. Excel files are convenient for users who need workbook-style editing, but they can still lose complex relationships, repeated values, HTML, or serialized custom-field data unless the export maps those values deliberately.
- Is an export the same as a backup?
- No, an export is a selected copy of site data in a format intended for transfer or analysis. It may omit files, settings, plugin configuration, and database tables that are not part of the chosen content type. Keep a separate full-site backup from your host or backup system before deleting, migrating, or making large changes.