Your Cart
WooCommerce product CSV import export

How to Import, Export and Bulk Update WooCommerce Products with CSV

Managing a WooCommerce catalog manually becomes difficult when many products need changes at once. Prices, stock values, descriptions, categories, images and variations can all require coordinated updates, and editing every product separately increases the chance of inconsistent data. A CSV workflow gives store owners, freelancers and agencies a structured way to prepare catalog information outside WooCommerce and process it in a controlled sequence.

WooCommerce includes built-in product Import and Export actions under Products > All Products. You can use them to add multiple products, export catalog data for inspection or editing, and update existing product details. This guide focuses on that built-in workflow. It does not assess third-party import extensions. The practical approach is to prepare the file, check its structure, map fields, test a small sample, match records using stable identifiers and review skipped or failed rows before repeating a larger operation.

What WooCommerce CSV Import and Export Can Do

The built-in WooCommerce tools support three related catalog tasks. Import is used to add prepared product data or apply changes from a CSV file. Export creates a view of existing catalog data that can help you inspect the available WooCommerce column structure before editing. An update import can then apply selected changes to records that already exist.

Choose the right CSV workflow

Start by deciding whether the file will create new products, provide a working copy of existing products or update matching records. This distinction matters because the importer treats identifiers and existing products differently depending on the selected options. Exporting a representative product set first can reveal the field names and values that WooCommerce uses, making it easier to compare them with a supplier file.

CSV workflows can support catalog migration and recurring bulk maintenance, but they do not automatically make every supplier column usable. Custom metadata and extension-specific fields may need separate documentation or mapping. Keep the task limited to fields whose meaning and destination you can verify.

Prepare a WooCommerce Product CSV Before Uploading

Preparation determines whether the importer can read each row as intended. Save the CSV in UTF-8 encoding. If a product description or another value contains a comma, handle that comma correctly as part of one CSV field; otherwise, the importer may split the value into separate columns. Also inspect the delimiter and the way the chosen editor saves the file before uploading it.

For updates, retain stable SKUs or verified product IDs. Product names should not be treated as the primary matching key unless the specific workflow has been independently verified. Use documented WooCommerce column names where possible, but still plan to inspect the mapping screen. Supplier headers that WooCommerce does not recognize are not imported by default, so they may need remapping, exclusion or separate documentation.

Validate structure before editing data

Export a representative set of products and inspect its headers and existing values before changing a larger catalog file. This provides a practical reference for supported WooCommerce fields and helps separate those fields from arbitrary supplier columns. Check that prices, stock values, categories, descriptions and identifiers remain in the intended columns after the file is opened and saved.

  • Encoding: confirm that the file uses UTF-8.
  • Identifiers: preserve reliable SKU or ID values for records that must be updated.
  • Headers: compare supplier columns with the WooCommerce fields shown during mapping.
  • Values: ensure commas inside one value are handled so they do not become new fields.

Do not repeatedly upload the full supplier file while basic structure is still uncertain. Correct the smallest representative file first.

How to Import Products with the Built-In WooCommerce Tool

To begin the built-in process, go to Products > All Products and choose Import. Upload the CSV or provide a server path, then continue to the column-mapping screen. WooCommerce attempts automatic column recognition, but automatic recognition should be treated as a starting point rather than a final validation.

Review the proposed fields and remap columns where necessary. You can exclude fields that should not be imported. Unrecognized columns are not imported by default, so a supplier column that appears in the file may have no effect unless it is assigned to an appropriate WooCommerce field. After mapping, run the import using a small representative sample before processing the complete catalog.

Review the mapping screen before running the import

Compare every important supplier header with the WooCommerce destination displayed in the mapping screen. Correct an automatic match if it points to the wrong field, and exclude information that is unsupported or not intended for this operation. A completed file submission does not prove that every column was accepted or that every value was placed correctly.

Before a large import or bulk update, create a current backup and use a staging or test site when possible. These are risk-reduction safeguards, not guarantees that every rollback will be complete. A useful sample should contain simple products, categories, prices, images and at least one variable product. Review the result before expanding the file.

How to Export and Bulk Update Products Safely

A WooCommerce product bulk update is best handled as an export-edit-import cycle. First export the relevant products. Keep the SKU or verified ID for each record, then change only the fields that are intended to change. Avoid replacing identifiers with names, newly generated values or blank cells unless that behavior has been deliberately checked.

During import, select Update existing products when the purpose is to modify matching catalog records. WooCommerce can use matching identifiers to update existing products. When this option is not selected, rows matching existing products are skipped rather than creating duplicate products. In both cases, inspect the result instead of assuming that the upload applied every row.

A controlled update sequence

  1. Export the products that are relevant to the planned change.
  2. Retain reliable SKU or ID values and edit only the intended columns.
  3. Use the mapping screen to confirm that each edited column has the correct destination.
  4. Select Update existing products when matching records should be changed.
  5. Review skipped and failed rows before correcting and repeating a smaller import.

Create a current backup before a significant catalog update and use a staging or test site when possible. Do not repeat a complete supplier upload without identifying why rows were skipped or failed. After the update, check representative products in the catalog. A successful submission is not confirmation that every field and row was applied.

Importing Variable Products and Variations

Variable products require a consistent parent-and-variation structure. Prepare a parent row marked as variable and separate variation rows marked as variation. Each variation needs a unique SKU and a valid Parent value that connects it to the parent SKU or ID. Attribute names and values must also remain consistent between the parent and its variation data.

Missing parent references, inconsistent attribute names or different attribute values can prevent variations from being created or connected correctly. The built-in workflow may require a parent update followed by a separate variation import, depending on the structure of the data. Treat this as a reason to test the sequence with one variable product before importing the full catalog.

Check the parent-child relationship

Review the relationship row by row before uploading. Confirm that the parent row has the variable type, that every variation row has the variation type and a unique SKU, and that each Parent value identifies the intended parent. Compare attribute names and values exactly across the prepared data. If the importer reports skipped or failed variation rows, verify these references before repeating the import.

  • Confirm the parent row type and its identifier.
  • Confirm every variation row type and unique variation SKU.
  • Check that Parent values point to valid parent SKUs or IDs.
  • Compare attribute names and values for consistency.

Preparing Product Images for CSV Import

Product images must already be uploaded or available through directly accessible image URLs. A URL that appears in a spreadsheet may still fail if it is private, temporary or hidden behind a redirect script. Some cloud-storage links that redirect do not work with the built-in importer.

Test image access before the full import

Open each representative external image URL directly in a browser before using it in the full CSV. Check for redirects or access restrictions and confirm that it resolves to an accessible image file. Images already available in the Media Library can also be used. Treat image access as a separate validation item for both products and variations.

Do not expose private or temporary URLs in a public CSV. Run a small test import and review whether the expected image association is present before processing the complete catalog. If images fail while other fields work, investigate the URL behavior rather than repeatedly uploading the entire file.

Troubleshooting Skipped, Misread or Failed Rows

Skipped or misread data usually points to a specific preparation, mapping or reference problem. If characters are displayed incorrectly or values are split, check UTF-8 encoding, delimiter handling and commas inside individual fields. If a field is ignored, inspect its header and the mapping choice. An unrecognized supplier column will not be imported by default.

When existing products are skipped, verify the SKU or ID and confirm whether Update existing products was selected for the intended operation. For variations, check the Parent value, product type, unique SKU and attribute names and values. For images, test whether each URL is directly accessible and not dependent on a redirect or access restriction.

Use a check-and-retest sequence

Begin with the file itself: check encoding, delimiters and headers. Then verify identifiers, parent references and variation attributes. Finally, check external image access. Review the importer’s skipped and failed-row results before making another upload. Correct the smallest relevant test file, import it again and inspect the result before returning to the full catalog.

  • Misread text or split values: check UTF-8 and delimiter handling.
  • Ignored fields: check headers and the column-mapping screen.
  • Skipped existing products: check SKU or ID matching and update selection.
  • Missing variations: check parent references, row types and attributes.
  • Missing images: check direct URL accessibility and redirects.

Keep the backup and staging safeguards in place for significant changes. WooCommerce documentation does not establish a universal maximum CSV row count or guaranteed import duration. Performance can depend on hosting resources, catalog complexity and active product data. Likewise, custom metadata or extension-specific fields may require separate documentation rather than automatic importer support.

The controlled method is straightforward: prepare the CSV in UTF-8, inspect its structure, map fields deliberately, test a small sample, preserve stable SKUs or verified IDs, and review the result. Variable products need consistent parent, variation and attribute data, while images need accessible sources. When rows are skipped or misread, correct the underlying file or mapping before repeating the operation. This approach reduces unnecessary full-catalog uploads without implying a universal limit or guaranteed outcome. Explore our WordPress plugins, WooCommerce extensions, themes and membership plans to find the right tools for your website.

Free Worldwide shipping

You can download the products right away at wpbetterplugins.com

Immediate delivery

After the payment is credited, the product is ready for download

International Warranty

Offered in the country of usage

100% Secure Checkout

Stripe / Apple Pay / Google Pay / MasterCard / Visa

Zadzwoń