How to import products in WooCommerce with a CSV

Importing Products Into WooCommerce With a CSV

Importing products into your WooCommerce store doesn’t have to be daunting. Whether you’re a store owner or a developer with limited WooCommerce experience, using a Comma-Separated Values (CSV) file can simplify the process significantly. 

In this guide, we’ll show you how to import products into your WooCommerce store using a CSV file. We’ll also cover the benefits of using a CSV file for product import, best practices, step-by-step instructions, and troubleshooting common issues. 

Ready to get started? Let’s dive in!

Why import products into WooCommerce?

Importing products into WooCommerce is essential for ensuring your merchandise appears in your store efficiently and accurately. 

With that in mind, it’s not so much a question of “why” you’d import products into your WooCommerce store, but “how” to do it effectively.

Manually adding each product can be extremely time-consuming and error-prone, especially if you’re managing a large inventory. 

A more effective method is to use a structured template that organizes all necessary product data, such as names, SKUs, prices, and descriptions in one place. This approach ensures all information is uploaded efficiently and accurately, reducing the likelihood of errors that can occur with manual entry.

Additionally, if you’re migrating from another eCommerce platform or need to update bulk product information, the WooCommerce import process offers a straightforward solution for seamless transfer and updating of product data, maintaining consistency and accuracy throughout the transition.

Understanding how to import products effectively can help you maintain consistency and reduce mistakes that might disrupt your store’s operations. 

Properly utilizing the import functionality ensures that your store remains up-to-date with the latest product information, enhancing the overall shopping experience for your customers.


Why use CSV to import products into WooCommerce?

A CSV file is a simple text format for tabular data. Each line in a CSV file corresponds to a row in the table, and each field in that row is separated by a comma.

Example of a CSV file in Microsoft Excel
Example of a CSV file in Microsoft Excel

This format is widely used because it’s simple and compatible with many software applications, including spreadsheet programs like Microsoft Excel and Google Sheets.

CSV files are commonly used for data exchange between systems that store data in different formats. They’re often employed for:

  • Data Migration: Transferring data between databases or different software systems.
  • Data Backup: Creating backups of important tabular data.
  • Data Analysis: Importing data into statistical and analytical tools for processing and analysis.

When it comes to importing products into WooCommerce, CSV files offer a ton of upside, including: 

Universality and compatibility

CSV files are universally recognized and can be created or edited with various tools, from simple text editors to advanced spreadsheet software. This compatibility makes CSV a practical choice for users with different technical specializations.

Simplicity

In a similar vein, the straightforward nature of CSV files makes them easy to understand and manipulate. Even users with minimal technical knowledge can create and edit CSV files, making them accessible for small business owners and large enterprises alike.

Standardization

Using CSV files ensures a standardized format for data import. This standardization helps avoid common issues related to data inconsistencies, making the import process smoother and more reliable.

Large data handling

CSV files can efficiently handle large volumes of data. For WooCommerce stores with extensive product catalogs, this ability to manage bulk data is crucial for maintaining and updating product listings without significant manual effort.

Automation

Many eCommerce platforms, including WooCommerce, support automated imports using CSV files. This automation capability allows for scheduled imports, reducing the need for manual intervention and ensuring product data is always up-to-date.

Integration with other systems

CSV files enable easy integration with inventory management systems, accounting tools, and other eCommerce platforms, streamlining data management and ensuring efficient workflows. Additionally, CSV’s widespread use complements Electronic Data Interchange (EDI) solutions, enhancing compatibility and efficiency in data exchanges.

Overall, CSV files are highly popular for importing products into WooCommerce due to their universality, simplicity, standardization, and ability to handle large datasets efficiently. These attributes make CSVs a practical and efficient choice for eCommerce store owners looking to manage their product data effectively.


Importing products in WooCommerce using CSV

Options for importing products in WooCommerce using CSV

WooCommerce offers several options for importing products using a CSV file. 

Depending on your specific needs, you may choose to use built-in WooCommerce functionality or opt for third-party plugins and tools. Each option has its own set of features and benefits, which are listed below. 

Built-in WooCommerce CSV Importer and Exporter

WooCommerce offers a built-in product CSV Importer and Exporter that’s ideal for small-to-medium-sized stores with straightforward product data. 

This user-friendly tool allows you to import product information, including names, SKUs, prices, and descriptions, directly from a CSV file. 

It also provides a mapping feature that helps ensure each column in your CSV matches the corresponding WooCommerce product field, minimizing the risk of errors during the import process. 

Additionally, it supports updating existing products, making it easy to manage your inventory without needing to manually edit each product​ (WooCommerce)​​ (Plytix)​.

WooCommerce Product CSV Import Suite

For more advanced requirements, the WooCommerce Product CSV Import Suite offers additional features, such as support for custom fields and product variations. 

This tool allows you to import a broader range of product data, including complex product types and attributes.

Importing a broad range of product data with the WooCommerce Product CSV Import Suite.
The WooCommerce Product CSV Import Suite allows you to import a broad range of product data. Image source: WooCommerce

It’s particularly useful for stores with larger inventories or those that require detailed product information. The Import Suite also supports scheduled imports, enabling you to automate regular updates and maintain accurate product listings effortlessly​.

Third-party plugins

Several third-party plugins are available to extend the functionality of WooCommerce’s native import tool, providing additional features and customization options. 

Plugins like WP All Import offer a drag-and-drop interface and support for importing products from various file formats, including CSV and XML. 

These plugins can typically handle large data sets and complex import requirements, such as conditional logic and advanced field mapping. They also allow for automated and scheduled imports, ensuring that your product data is always up-to-date without manual intervention​.

Custom scripts

For developers with coding skills, writing custom import scripts can provide maximum flexibility and control when importing products in WooCommerce with a CSV (or a variety of other formats).  

Custom scripts can be tailored to meet specific business needs, allowing for the import of unique data structures or integration with external systems. This approach is ideal for businesses with highly customized WooCommerce setups or those requiring integration with proprietary software. 

Custom scripts can automate the entire import process, from data extraction to product creation, ensuring it’s efficient and reliable​. 

Choosing the right method for importing products into WooCommerce depends on your store’s size, complexity, and specific requirements. By selecting the appropriate solution, you can streamline the import process, maintain accurate product data, and ensure a seamless shopping experience for your customers.


Import products in WooCommerce using CSV: Step-by-step instructions

How to import products in WooCommerce using CSV:
Step-by-step instructions

Now that you have a better understanding of the options for importing products into WooCommerce with a CSV file, let’s dive into step-by-step instructions for each of those methods. 

Before we get started, however, it’s important to note that every use case is unique, and choosing the right method will depend on your specific needs, whether you’re managing a small store or handling a massive inventory with complex requirements. 

Additionally, before making any changes to your live store, it’s important to test them in a staging environment to avoid potential disruptions. 

With those considerations in mind, see below for detailed instructions on importing your products into WooCommerce with a CSV.

Preparing your CSV file

Regardless of the method you choose, the first step in the WooCommerce import process is to prepare your CSV file.

This includes making sure your CSV includes all the necessary product information, such as SKU, product name, description, price, stock levels, and categories. WooCommerce provides a product import template you can use as a guide. Download it by clicking here

By following the WooCommerce product import template (or a similar template) closely, you can avoid errors during the import process. If you’re unsure of how to best structure your CSV file, you can also refer to the WooCommerce documentation for detailed guidelines.

Once your CSV file is formatted properly and ready for use, you’ll be able to get started with one of the methods below. 

Using the built-in WooCommerce product importer

As noted above, the built-in WooCommerce CSV Importer and Exporter is a great option for small-to-medium-size stores with simple product data. 

Its mapping feature ensures each CSV column aligns with the correct WooCommerce product field, reducing the risk of errors during import, and it allows for updating existing products, making inventory management easy without manual edits.

Here’s how to use it: 

1. Navigate to the Product Importer

    Log in to your WooCommerce admin panel and go to “Products.” Then, click on “Import.” This will open the WooCommerce product importer interface.

      The “Import” button on the “Products” page of the WooCommerce admin dashboard opens the product importer interface.
      The “Import” button on the “Products” page of the WooCommerce admin dashboard opens the product importer interface. Image source: WooCommerce

      2. Upload your CSV file

      Once the importer interface is open, click “Browse” to select your prepared CSV file. You can also opt to update existing products. Once you’ve made your selections, click “Continue” to move to the next step.

      WooCommerce import products from a CSV file
       Image source: WooCommerce

      3. Map CSV Fields to WooCommerce fields

      WooCommerce will attempt to automatically match columns in your CSV file to WooCommerce product fields. Review these automatic matches and adjust them if necessary. Make sure each required field, such as product name, price, and SKU, is correctly mapped.

      WooCommerce’s column mapping feature
       WooCommerce’s column mapping feature automatically attempts to match or “map” the Column name from your CSV to applicable fields. Image source: WooCommerce

      4. Run the Import

      Click on “Run the Importer” to start the import process. The importer will start processing your CSV file, and you will see a progress bar indicating the status of the import. Once the import is completed, you will see a confirmation message.

      WooCommerce import products complete
      Image source: WooCommerce

      5. Handling Errors

      If any errors occur, WooCommerce will display a list of them. Common issues include mismatched column headers, missing required fields, or incorrect data formats. Review these errors carefully to understand what went wrong.

      Once errors have been resolved (see the troubleshooting section below) you can run the import again. Once it’s completed, make sure your products have been imported correctly and voila, you’re done!

      Using the WooCommerce Product CSV Import Suite

      The WooCommerce Product CSV Import Suite is better suited for more advanced needs and provides additional features like custom fields and product variations. 

      This premium WooCommerce extension allows you to import a wider range of product data, including complex types and attributes, and it’s especially beneficial for stores with large inventories or detailed product information requirements.

      Follow these steps to get started:

      1. Purchase, install, and activate the extension

      As a premium extension, you’ll need to purchase the WooCommerce Product CSV Import Suite from the WooCommerce Marketplace before installing and activating it.

      The WooCommerce Product CSV Import Suite in the WooCommerce marketplace.
      The WooCommerce Product CSV Import Suite in the WooCommerce marketplace.

      2. Check your CSV file

      Once the extension is activated, follow its documentation to ensure your CSV file is formatted correctly, including any custom fields or product variations.

      3. Access the import tool

      From your WooCommerce admin panel, navigate to WooCommerce > CSV Import Suite and click the “Import Products” button.

          WooCommerce CVS Import Suite: Import Products
          Image source: WooCommerce

          4. Upload the CSV file

          Select your CSV file, and configure any additional settings as needed.

          WooCommerce CVS Import Suite: Uploading CSV
          Image source: WooCommerce

          5. Map fields

          Before finalizing your import, verify that your column headers are assigned to the appropriate fields in WordPress. This will provide a final validation to ensure everything is imported accurately.

          6. Run the Import

          Start the import process and wait for the confirmation message.

          Once you’ve received your confirmation message, check that your products have been imported accurately and your import is finished!

          Using third-party plugins

          The vast ecosystem of WordPress plugins includes excellent options for adding all types of functionality to your website—and importing products into WooCommerce is no exception!

          There are multiple WordPress plugins that can handle large data sets and complex import requirements, as well as automated and scheduled imports. Once you’ve found a quality plugin you’d like to use, follow these steps for general guidance. 

          1. Choose and install your plugin

          Research and select a CSV import plugin that meets your needs. Make sure to check which versions of WordPress the plugin supports, how recently it was updated, and how many positive reviews it has.

          WooCommerce product import plugins in the WordPress plugin repository.
          The WordPress plugin repository is home to thousands of free integrations for your site—WooCommerce product import tools included! 

          2. Check your CSV file

          Follow the plugin’s guidelines for formatting your CSV file.

          3. Access the import tool

          Navigate to the plugin’s import section, typically found under WooCommerce or Tools in your WordPress dashboard.

          4. Upload, map, and configure settings

          Upload your CSV file, map the fields, and configure any additional settings as per the plugin’s instructions.

          5. Run the import

          Start the import process and verify the results once complete.

          If you encounter issues with a third-party plugin, you can also contact the plugin provider’s support team, which should be listed on the plugin’s page in the WordPress plugin repository or on its individual website. 

          Using custom scripts

          Although more technically advanced, custom scripts offer added flexibility to meet specific business needs. This type of custom code allows for the import of unique data structures or integration with external systems, which is ideal for highly customized WooCommerce setups or integration with proprietary software. 

          While each project involving custom scripts will have its own unique parameters and constraints, the following steps provide general guidelines for the process:

          1. Prepare your data

          • Following the guidelines above for CSV preparation, structure your data in a CSV or another suitable format and ensure it’s displayed accurately.  

          2. Write custom script

          • Develop a custom script using the WooCommerce REST API or other available hooks and filters. Here’s an example of a custom PHP script that can be used to import products into WooCommerce from a CSV file:
            <?php
            // Include the WooCommerce REST API library
            require __DIR__ . '/vendor/autoload.php';
            
            use Automattic\WooCommerce\Client;
            
            // WooCommerce API credentials
            $woocommerce = new Client(
                'https://yourwebsite.com', // Your store URL
                'ck_your_consumer_key', // Your consumer key
                'cs_your_consumer_secret', // Your consumer secret
                [
                    'version' => 'wc/v3',
                ]
            );
            
            // Path to the CSV file
            $csvFile = __DIR__ . '/products.csv';
            
            // Open the CSV file
            if (($handle = fopen($csvFile, 'r')) !== FALSE) {
                // Get the column headers
                $headers = fgetcsv($handle, 1000, ',');
            
                // Read each row in the CSV
                while (($data = fgetcsv($handle, 1000, ',')) !== FALSE) {
                    $productData = array_combine($headers, $data);
            
                    // Prepare product data for WooCommerce
                    $product = [
                        'name' => $productData['name'],
                        'type' => 'simple', // or 'variable', 'grouped', etc.
                        'regular_price' => $productData['price'],
                        'description' => $productData['description'],
                        'short_description' => $productData['short_description'],
                        'sku' => $productData['sku'],
                        'stock_quantity' => $productData['stock_quantity'],
                        'categories' => [
                            [
                                'id' => $productData['category_id']
                            ]
                        ],
                        'images' => [
                            [
                                'src' => $productData['image_url']
                            ]
                        ],
                    ];
            
                    // Send request to WooCommerce to create the product
                    try {
                        $result = $woocommerce->post('products', $product);
                        echo 'Product created: ' . $result->id . "\n";
                    } catch (Exception $e) {
                        echo 'Error: ' . $e->getMessage() . "\n";
                    }
                }
                // Close the CSV file
                fclose($handle);
            }
            ?>
            

            3. Test and deploy

            Thoroughly test your script in a development environment before deploying it on your live site, including support for custom fields and product variations.

            By following these detailed steps, you can efficiently import products into your WooCommerce store using a CSV file. 

            Whether you choose the built-in WooCommerce product importer, a specialized plugin, or a custom script, proper preparation and attention to detail are crucial to ensure a smooth import process. 

            With your products successfully imported, you’ll be well on your way to managing your WooCommerce store more effectively!


            Troubleshooting WooCommerce product import issues

            When importing products into WooCommerce using CSV files, you may encounter several common issues. Understanding these issues and how to troubleshoot them can save you time and frustration. 

            Below, we outline a few of the most common errors as well as guidance on how to resolve them.

            Common WooCommerce product import errors

            Incorrect CSV format

            One of the most frequent issues is an incorrect CSV format. If your file’s structure doesn’t match WooCommerce’s requirements, you’ll likely face import errors. To avoid this,  use the WooCommerce product import template, which will ensure your CSV file is compatible with WooCommerce’s expected format.

            Missing required fields

            Ensure all mandatory fields, such as SKU, product name, and price, are filled in your CSV file. Missing these critical fields can halt the import process. Review your CSV file carefully to confirm that all required information is included.

            Mapping issues

            Incorrect mapping of CSV columns to WooCommerce product fields can cause data errors. WooCommerce attempts to map these fields automatically, but it’s crucial to double-check these mappings before running the import. Verify that each column from your CSV aligns correctly with the corresponding WooCommerce product fields.

            Data type mismatches

            Columns containing incorrect data types, such as text in a numerical field, can cause the import to fail. Ensure that each column’s data type matches WooCommerce’s expectations. For example, prices should be numerical, and SKUs should be text.

            Fixing WooCommerce product import issues

            While the above issues can occur for a variety of reasons, the following tips offer general guidance on how to fix them.  

            Review error messages

            WooCommerce provides detailed error messages during the import process. These messages are invaluable for diagnosing problems with your CSV file. Take the time to read through these error messages carefully, as they will often point you directly to the issue that needs to be addressed. 

            Use smaller batches

            If you’re facing performance issues, such as timeouts or slow processing, consider breaking your CSV file into smaller batches and importing them sequentially. This approach can help manage server load and reduce the likelihood of import errors.

            Consult documentation

            WooCommerce’s official documentation is a valuable resource for resolving import issues. It provides comprehensive guidelines and troubleshooting tips that can help you navigate common problems. Refer to the documentation whenever you face challenges, as it often contains solutions for specific issues.


            WooCommerce import products CSV

            Additional recommendations and best practices

            To ensure a smooth and efficient product import process for your WooCommerce store, it’s essential to follow best practices. Here are some tips to help you succeed:

            Back up your data

            Before starting the import process, always back up your current WooCommerce data. This precaution ensures that you can restore your online shop to its previous state if anything goes wrong during the import.

            Validate your CSV

            Use a CSV validator tool to check your file for errors before attempting to import it. These tools can help identify issues with formatting, missing fields, or data type mismatches, allowing you to correct them in advance.

            Test in a staging environment

            It’s always recommended to test the import process in a staging environment first. This allows you to identify and fix any issues without affecting your live store. Once you’re confident the import works correctly, you can proceed with importing to your live site.

            Keep plugins updated

            Ensure that your WooCommerce plugins, including any import tools, are up to date. Developers frequently release updates that fix bugs and improve compatibility, so running the latest versions can help avoid unnecessary problems.

            By following these tips and remaining diligent in your preparation and review processes, you can significantly reduce the likelihood of encountering issues when importing products into WooCommerce with a CSV. 


            Import products to your Woocommerce store with ease

            Importing products into your WooCommerce store using a CSV file is a powerful and efficient way to manage your product catalog, especially for stores with large inventories. 

            By following the steps outlined in this guide and adhering to best practices, you can streamline the import process, minimize errors, and maintain consistency in your product data.

            Find out more about WP Engine’s eCommerce solutions, including managed WooCommerce hosting to drive more sales, optimize your site, and manage less. 

            Get started

            Build faster, protect your brand, and grow your business with a WordPress platform built to power remarkable online experiences.