View Categories

How to Export WooCommerce Products, Orders, and Customers to CSV

The export wizard runs in five steps. This article walks through each one.

Step 1: Choose what to export #

Eight tiles: Product, Order, User or Customer, Coupon, Product Review, Product Category, Product Tag, and Bundle. Pick one and click Next.

Bundle exports all seven types into a single package and follows a different flow. See the bundle article for that.

Export order matters if you plan to re-import #

If you are exporting several types with the intention of importing them into another store, export and import them in this order: categories, tags, products, customers, coupons, orders, reviews. Products reference categories, orders reference products and customers, reviews reference products. Getting the order wrong leaves records pointing at things that do not exist yet. A bundle handles this ordering for you.

Step 2: Choose a method #

Quick export #

Every column, every record, no filters. One click to the end. Use it for full backups, for store migrations, and any time you want to see what the plugin produces.

Advanced export #

Gives you the filter step and the column selection step. Use it whenever you want a subset of your data or a specific column layout, which is most of the time once you know your way around.

Pre-saved template #

Loads a filter and column configuration you saved on a previous run. Pick the template and go straight to the output step.

Whichever you use most often can be set as the default under Settings, so it is preselected each time you open the tab.

Step 3: Filters #

The filter panel changes to match the data type you chose. Products get stock and product type filters, orders get status and date filters, categories get slug and parent filters. Leaving a filter empty means it does not restrict anything.

The full filter list is covered in its own article. Two worth knowing about immediately:

  • Date From and Date To appear for products, orders, customers, coupons and reviews. This is how you build a monthly order export.
  • Record limit caps the number of rows. Set it to 20 when you are testing a configuration so you are not waiting on a full export each time.

Step 4: Select columns #

Columns are grouped by area: identifiers, pricing, stock, shipping, billing, and so on. Tick what you want.

Two extra toggles pull in fields outside the standard set. Include custom meta adds custom fields written by your other plugins, prefixed with meta. Include hidden meta adds WooCommerce internal fields, which begin with an underscore. Both make the file larger and the export slower, so turn them on when you need them rather than by default.

If you plan to re-import the file, keep the ID column, and for products keep SKU as well. Without an identifier the importer cannot match rows to existing records.

Step 5: Output options #

  • Export file format. CSV, TSV, XML, Excel XLSX, or Google Sheets.
  • Delimiter. The character separating CSV fields. Comma is standard. Use a semicolon if your spreadsheet software is set to a European locale.
  • Batch count. Records fetched per batch. Lower it if the export times out on a slow server, raise it if you have headroom.
  • Export images separately. Writes image data to its own file rather than inline.
  • Schedule this export. Turns the configuration you just built into a recurring job.
  • Save as template. Stores the filters and columns under a name for reuse.

Click Export. A progress bar tracks the run. When it completes, a download link appears, and the same file stays available from the History tab until you or a cleanup routine removes it.

Exporting orders specifically #

Order exports carry structural columns that behave differently from ordinary fields. Line items, shipping lines, fee lines, tax lines, coupon lines and refunds are each packed into a single column holding all of that order’s entries. An order with three products has one line item column containing all three, not three separate rows.

Keep those columns if you intend to re-import the orders. Dropping them produces orders with correct totals and no products in them.

If the export is slow or stops #

  • Lower the batch count on the final step.
  • Turn off custom and hidden meta if you do not need them.
  • Add a date filter and export in chunks, one month at a time.
  • Reduce the number of selected columns. A product export with 200 columns is far heavier than one with 20.

We develop trusted WooCommerce import and export plugins that help store owners, developers, and agencies move products, orders, customers, coupons, and reviews to build successful online businesses.