Share X in ✉

How to Export WooCommerce Products (All, Selected or One, with Images)

Last updated
Read time
8 min
Category
How to Export WooCommerce Products (All, Selected or One, with Images)

To export all your WooCommerce products, go to Products > All Products, click Export, and click Generate CSV. To export one product or a few, tick them in the product list and click Export X selected. Either way, images come out as image URLs in an Images column, separated by commas, and the first URL is the featured image.

That’s the right tool for a one-off backup or a move to a new WooCommerce store. If you’re exporting products to sell on Google Shopping, Facebook or a marketplace, you need a product feed instead: the channel’s own fields, in a file that updates itself and that the channel fetches from a URL. Both are below.

Which export method do you need?

Your jobUseWhy
Back up products, or move them to another WooCommerce storeWooCommerce’s built-in exporterFree, already installed, and its CSV is the format the WooCommerce importer reads
Export one product or a handfulBuilt-in exporter, Export X selectedNo spreadsheet editing needed
Image files (not just links), or orders, customers and coupons in a re-importable fileAn import/export pluginThe product exporter handles products only, and images as URLs
Sell on Google Shopping, Facebook, marketplaces or other channelsA product feed, not an exportEach channel uses its own field names, and the feed has to stay current

Export all products with the built-in exporter

Export button on the WooCommerce All Products screen
Export button on the WooCommerce All Products screen
  1. Go to Products > All Products and click Export at the top of the page. The Export Products screen opens.
  2. Choose the columns, or leave Export all columns selected.
  3. Choose which product types and product categories to export, or leave the defaults to export everything.
  4. Tick Yes, export all custom meta if you need extra product data from WooCommerce or other plugins. Those columns get a meta: prefix, so a field stored as product_depth exports as meta:product_depth.
  5. Click Generate CSV. Your browser downloads the file when the export finishes.
WooCommerce Export Products screen with column, product type and category options
WooCommerce Export Products screen with column, product type and category options

A file exported this way already follows WooCommerce’s import schema, so you can import it into another store without reformatting it.

Export one or selected products

You don’t need to export everything and delete rows in a spreadsheet:

  1. Go to Products > All Products.
  2. Tick the products you want. Search or filter the list first if that’s quicker.
  3. Click Export X selected at the top of the page. The button shows how many products you’ve ticked.
Export 3 selected button in the WooCommerce product list
Export 3 selected button in the WooCommerce product list

To export everything instead of a selection, use the Export button and leave the filters at their defaults.

How images are exported (and imported)

The built-in exporter doesn’t put image files in the CSV. It writes each product’s image URLs into the Images column, comma-separated, with the featured image first.

Images column in a WooCommerce product export CSV with comma-separated image URLs
Images column in a WooCommerce product export CSV with comma-separated image URLs

When another WooCommerce store imports the file, it downloads each image from those URLs into its own Media Library. That only works when the images are already in that store’s Media Library or still online. So:

  • Keep the old site online until the import has finished. If the source images go offline first, there’s nothing to download.
  • Some hosts block the request, ask for a login, or return a web page instead of the image. If an image fails, upload it to the Media Library yourself or use a direct image URL.
  • Alt text doesn’t come across. The core importer can’t add or update image alt text.

Import the file into another WooCommerce store

  1. On the receiving store, go to Products > All Products and click Import.
  2. Click Choose File, pick the exported CSV, and click Continue.
  3. On the Column mapping screen, WooCommerce maps the columns it recognises. Change any that are wrong, or set a column to Do not import.
  4. Click Run the importer, and don’t refresh or leave the page until it finishes.
WooCommerce importer Column mapping screen with the Images column mapped to Images
WooCommerce importer Column mapping screen with the Images column mapped to Images

We ran this round trip into an empty store for the earlier version of this guide, and the imported products showed their images, pulled from the source URLs. For a large catalog, take a backup, test a small import on a staging site first, and split the CSV into smaller batches.

Export variable products and variations

The built-in export writes the parent product and each variation as separate rows. A variation row has the type variation and a Parent column that points at the parent, using the parent’s SKU when it has one.

One quirk catches people out: WooCommerce can drop attribute values from variation names in the export. That’s expected when a product has three or more attributes, or two or more where at least one attribute name has two or more words (for example “Frame Size”). The attribute columns still hold the values; only the name is affected. Changing this needs a developer, and WooCommerce Support doesn’t cover that customisation.

Exporting products to sell on Google Shopping, Facebook or marketplaces? You need a product feed, not an export

A WooCommerce export is a snapshot for another WooCommerce store or a spreadsheet. A sales channel needs something different, a product feed, which adds three things:

  • The channel’s own fields. Every channel publishes its own spec. WooCommerce’s export puts all images in one Images column, while Google, for example, wants the main image in image_link and each extra image in additional_image_link. A general export CSV won’t pass as a feed.
  • It updates itself. A downloaded export is out of date at the next price or stock change. A feed is rebuilt on a schedule.
  • The channel fetches it. You paste the feed URL into the channel’s feed settings once, and the channel fetches fresh product data from that URL on its own schedule.

CTX Feed is a WooCommerce product feed plugin for these channels. It has more than 90 ready-made channel templates, and picking one loads that channel’s required fields for you. With Auto Update on, it rebuilds the feed every 1, 6, 12 or 24 hours, or every week. Creating feeds is free.

CTX Feed Manage Feeds row with the Auto Update toggle and the feed URL to give a channel
CTX Feed Manage Feeds row with the Auto Update toggle and the feed URL to give a channel

Step-by-step guides: Google Shopping, Facebook and Amazon. For any other channel, see how to make a feed in CTX Feed and how auto-update works.

Export with an import/export plugin

A dedicated import/export plugin makes sense when you need what the built-in tool can’t do: image files rather than links, other data types, or more filters. Two options on wordpress.org:

  • Product Import Export for WooCommerce. The free version exports products with featured and gallery images to CSV, but doesn’t support variable products. Variable products, image files as a separate ZIP, XML and Excel formats, and scheduled exports are in its premium version.
  • WP All Export. Exports to CSV, XML and Excel (XLS and XLSX). WooCommerce support lives in add-ons, so for products install the free WP All Export – Product Export Add-On for WooCommerce alongside it.

Orders are a different export: see how to export orders from WooCommerce.

WordPress Tools > Export: why not to use it for products

Tools > Export makes a WordPress XML (WXR) file of your site’s content for another WordPress site to import. Its filters cover posts and pages, so there’s nothing to narrow a product export with. Use the WooCommerce exporter for products: its CSV is the format the WooCommerce importer reads, and you can review it in a spreadsheet.

Common export problems and fixes

ProblemLikely causeFix
Columns or custom fields missingColumn choices on the Export screen, or meta not includedRe-export with Export all columns and Yes, export all custom meta
Wrong products in the fileProduct type or category filters left setReset the filters, or use Export X selected
Images don’t appear after importSource site offline, or its host blocks the downloadKeep the old site online; upload failing images to the Media Library
Variation names lose their attribute valuesExpected WooCommerce behaviour with 3+ attributes, or multi-word attribute namesUse the Attribute 1 value(s), Attribute 2 value(s) (and so on) columns, which hold each variation’s values
Products skipped on importSame SKU or ID already exists without Update existing products, or columns that don’t match the schemaCheck the import log, then fix the CSV
Import fails on a large fileServer memory or time limitsSplit the CSV into smaller batches

Before any export that matters: back up first, test the round trip on a staging site, set filters deliberately, and open the file to spot-check a few rows.

Export formats: CSV, XML, JSON and Excel

  • WooCommerce’s built-in exporter: CSV only.
  • Excel: open the CSV in Excel or Google Sheets. If you edit it and import it again, save it as a UTF-8 CSV and check it, because spreadsheet apps can change formatting and character encoding. For a native XLS or XLSX file, use a plugin that writes one, such as WP All Export.

FAQ

How do I export all WooCommerce products instead of just one?

Go to Products > All Products > Export, leave the column, type and category options at their defaults, and click Generate CSV.

Can I export WooCommerce products with images?

Yes. The built-in exporter includes image URLs, featured image first, and the importing store downloads them. If you need the image files themselves, use a plugin that packages them, such as the premium version of Product Import Export for WooCommerce.

Can I export variable products and their variations?

Yes. The built-in exporter writes the parent and each variation as rows, linked by the Parent column.

Can I use a product export as a backup or to migrate my store?

For products, yes: the built-in CSV moves product data between WooCommerce stores. It’s a product export, not a full backup, so back up the whole site as well. Keep the old site online until the images have imported.

How do I export WooCommerce products to Excel?

Export the CSV with the built-in exporter and open it in Excel. If you’ll re-import it, save it as a UTF-8 CSV. For a native XLS or XLSX file, use a plugin such as WP All Export.

Can I export customers or orders the same way?

No. WooCommerce’s CSV tool handles products only. WooCommerce’s Analytics reports, such as Orders and Customers, can download their report data as CSV, but that’s report data, not a file you can import into another store. For a file you can re-import, orders and customers need a separate export: see how to export WooCommerce orders.

Can I upload a WooCommerce export to Google Shopping or Facebook?

Not as it is. Each channel has its own required fields, such as Google’s image_link for the main image, which a WooCommerce export doesn’t use. Make a product feed for the channel instead: in CTX Feed, the channel’s template loads its required fields.

Do I need the WooCommerce add-on for WP All Export?

Yes, for products. WP All Export moved its WooCommerce support into add-ons, and product export uses the free Product Export Add-On for WooCommerce.

Wrap-up

For a one-off backup or a move to another WooCommerce store, use Products > All Products > Export, or Export X selected for a few products, and keep the old site online until the images import. If the products are going to Google Shopping, Facebook or a marketplace, make a product feed instead.

Selling on Google Shopping, Facebook or marketplaces? Create a product feed with CTX Feed (free).

[CTA] Stop reading. Start fixing.
Fix your product feed with CTX Feed Pro.

Free version on WordPress.org. Every Pro licence includes a 30-day money-back guarantee.

[0] Comments
Join the discussion
Leave a comment →

Leave a comment.

[NEWSLETTER] Field Notes, monthly

One email a month.
Zero fluff.

Channel-spec changes, plugin releases, the occasional deep dive on something we broke.