Importing WooCommerce Products with Attributes – WooCommerce Product Import Export Plugin

The Best Product Import Export Plugin for WooCommerce

#1 in WordPress Official Plugin Repository With 50,000+ Active Installs

#1 in Customer Satisfaction With Most 5 Star Reviews

WebToffee Guarantee: Get Your Money Back if You Are Not Satisfied With The Product

Buy Now!

An attribute allows you to define additional data related to the product, such as size, color and so on. It helps in providing more information about the product on the product page of your online store. Also, you can create variable products based on the attributes you define for the product.

There are two types of product attributes in WooCommerce:

  1. Global attributes: These attributes and its respective terms, can be used by any product on your store. They are created in the Attributes section of WooCommerce settings and hence are defined globally.
  2. Local attributes: These are custom attributes, and are applied only for a particular product. They are created in the Attributes section of the respective product data meta-box.

Our Product Import Export Plugin for WooCommerce can be used to effortlessly import products with attributesIt imports all the details perfectly into your WooCommerce store. You can also add attributes to an existing product of your store by importing the CSV file and updating the existing product data. It is important that you map the column header of the CSV file correctly with the fields of WooCommerce so that all product attributes can come up without problems.

Note: The CSV Import file must be in UTF-8 format. For more information about UTF-8 encoding, See How to save CSV / Excel File as UTF-8 Encoded?

Now, let us get an understanding of importing a CSV file containing products with attributes.

Before importing the products with attributes, the exported CSV should contain attributes that can be configured in the WooCommerce Product page, as shown in the screenshot below:

WooCommerce variable productsLet us say you have a CSV file with a product containing attributes ‘Size’ and ‘Color’. In this file, the global attributes can be identified with the prefix “pa_” before the respective attribute, as shown in the screenshot below:

Attribute Values:

attribute_data value is displayed in the form of position | visible | variation.

  • position: Defines the position of the attribute in the front-end.
  • visible: If the attribute is visible at the front-end, the value will be displayed as 1. Else, 0.
  • variation: If the attribute is used for variation, the value will be displayed as 1. Else, 0.

Note: Click Sample CSV of Import Attributes to download it.

Following are the steps to import products with attributes:

  • Move to Import Products in CSV Format in the Import section of Product settings tab. Further settings appear as shown in the screenshot below.
Product Import Export-Import Products
Product Import Export-Import Products
  • You can choose either of the methods for uploading the CSV file. In this article, we are selecting the first method. That is, uploading a CSV file from your computer.
  • Click Choose File to browse a required CSV file from your computer.
  • Select a mapping file, or click Upload file and import to move ahead and create a new one.
  • Enter a mapping filename and map the required WooCommerce Product Fields with column headers of the CSV file. Use Evaluation Field to fix/update the required value for a particular field.
Product Import Export-Import Products-Map Fields
Product Import Export-Import Products-Map Fields
  • Click Submit to start importing products into your WooCommerce store.  

Based on the CSV file imported, the products and its attributes get added to your store, as shown in the screenshot below:

Variable product import successful

Once the import is successful, you can view the imported products in the WooCommerce Product page section.

Variable product in products page

To view its attributes, move to the Attributes section in the respective product page.

Attributes section for the products

The attributes in the product page will be displayed as shown below:

To check Global attributes, you can go to Products > Attributes. You can see the global attribute ‘color’ has been added under this section (see screenshot).

Product global attributesFrom the above screenshot, we can see the attributes – size and color, have been successfully imported using our plugin.

For more information on importing and exporting of products, read this documentation.

The Best Product Import Export Plugin for WooCommerce

#1 in WordPress Official Plugin Repository With 50,000+ Active Installs

#1 in Customer Satisfaction With Most 5 Star Reviews

WebToffee Guarantee: Get Your Money Back if You Are Not Satisfied With The Product

Buy Now!
  • Was this article helpful ?
  • YesNo

25 thoughts on “Importing WooCommerce Products with Attributes – WooCommerce Product Import Export Plugin

  1. Kenneth Perry
    Kenneth Perry says:

    i have tried to import the three key attributes for my products now several times. Some have updated correctly, others it is filling the attribute value again with the attribute name, “Brand”, instead of the correct value like “Office Depot”. For Package attribute, some it fills int he package like “EA” and others it puts the the word package in the value. This is quite frustrating. What is the solution?

    • Alan
      Alan says:


      Kindly make sure that the CSV file is formatted properly and the data present in the attribute columns are not shifted. If the issue still persists please reach us via support.

  2. Matt Martin
    Matthew Martin says:

    Hi. All my 2500 products are already uploaded – I just want a tool to assign them all to to categories. Will this do that easily? the documentation all talks about “importing products to categories”. I just want to make sure I can use this to assign categories to existing products, and that I don’t have to be importing new product to do that.

  3. Jarah de Jong
    Jarah de Jong says:

    Hi there! I am using the Premium version of the import/export plugin, but when I import the example file (from this article: Sample_CSV_Variable_Product.csv) the product type isn’t Variable. It’s Simple, and when I click on variations, I don’t see them as well. Hopefully someone can help me with this issue!

    Kind Regards

    • Alan
      Alan says:


      If you are importing products into a fresh site then there are chances that the issue you are facing during importing variable products is because WooCommerce not updating the post meta correctly in the new site. This issue can be overcome by creating a dummy variable product manually. Also make sure that the tax:product_type column is mapped while importing the CSV file.

      If the issue still persists please reach us via support.

  4. Fabio says:

    How can I manage products translations? I ‘m also using WMPL in my store.
    Is WooCommerce Product Import Export Plugin compatible with WMPL?

    • Alan
      Alan says:


      Yes, the Product import export plugin is compatible with WPML simple products. You may please add three additional columns to the CSV namely; wpml:language_code, wpml:original_product_id, wpml:original_product_sku for importing multilingual simple products. For better understanding, you can go through the documentation on how to import WPML products.

  5. Nathan says:

    Hi there! Can you please help me with my problem. Here’s how it goes, you see, I want to import a variation of a certain product, it has different sizes and colors. Everything would be easy if all colors are available to different sizes and vice-versa. Example, a product have 3 colors: black, white and red. Black and white colors have small, medium, and large sizes. but red is available only on medium and large. When I import my CSV with red attribute:color and with medium and large attribute:size on a different row . I still don’t get a separate dropdown menu for red with medium and large size options only, everything just goes there. What should I do to achieve this? thanks in advance for any helpful reply and tips.

  6. Adam says:

    Hey. I’d like to import a range of products, each with the same 2 variations. Full and mini. If I want to do this using attributes, but also want to include other attributes (for filtering purposes only, not for selecting / showing on front end to buy), how do I do this?

    • Alan
      Alan says:


      In order to import variations to a variable product you may please use the three columns meta:attribute_xxx, attribute:xxx, and attribute_data:xxx column and provide data in it. You may please specify attribute values in the attribute: columns, the value of each variable in the meta:attribute_xxx column. You can go through the documentation on how to import variable products.

      In the case of importing attributes to the products for filtering purpose, you may specify the values only in the attribute:xxx and attribute_data:xxx column. The value in the attribute_data column will define the position of the attribute, whether attribute will be visible at the front-end, and If the attribute is used for variation. For better understanding, you can go through the documentation on importing attributes.

      • Adam says:

        That’s not exactly what I want. I followed the guide and I got the products as they were, but with those attributes visible. I want the users to be able to select from a drop down one of these as a variable, so that when they purchase they are either purchasing the full or mini version of the product.

        My understanding of your documentation is that the attributes are displayed, but not selectable for this purpose. And so i cant change the price / details of order based on what one they choose.

  7. Jarrod says:

    Running into a snag I didn’t think would be very difficult. I have 100 products that each need a certain attribute assigned to them, for filtering sake. However, I do not want the attribute visible on the front-end. They are already in the database as 0|1|0 (position|visible|variation). When I change these fields to 0|0|0 in my spreadsheet and then import the csv, the plugin doesn’t seem to acknowledge the zeros and leaves them the same. What am I missing? How can I update these without doing it manually one at a time?

    • Alan
      Alan says:


      You can update the product attributes such that it will not be displayed on the product page using the attribute_data column. We have tested the same in our test environment and were unable to replicate the issue. Kindly make sure that the attribute data value(0|0|0) is specified under the correct column and is mapped during import. Eg: If the attribute name is size then you may specify attribute data value(0|0|0) under the column attribute_data:size. Hope this is clear.

      If you are still having the issue please reach us via support.

  8. Andrea
    Andrea says:

    Hello, the import plugin keeps adding attributes to a product instead of overwriting the old ones. Now my product has close to 20 and should only have about 8.

    And, the import mapping console provides two options for every attribute. E.g. attribute:pa_color and attribute:color How can I know which to use?

    Thank you

    • WebToffee
      Mark says:

      Hi Andrea,

      If you use the same name exactly for updating products, then it won’t duplicate. The pa_ before attribute name is used to define the attribute as global attribute as explained above section. To define the attribute as local, specify the attribute name without ‘pa_’ . Reach us via support if the issue persists.

      • cara2
        cara2 says:

        How can I delete the attributes after they have been added via import? I’m having the same issue with increasing numbers of attributes even after using exact matches.


        • Mark
          Mark says:


          Currently, there is no option to delete existing attributes of a product using the plugin. The issue you are facing might be because of the wrong slug that you provided manually for the attributes. Attribute slugs will be automatically generated by Woocommerce from the attribute name. Please reach us via support.

  9. Maxim
    Maxim says:

    when doing Map Fields while importing products and uploading csv file, the plugin does not separate values of the headers. For example, instead of separate values “Parent”, “SKU”, “ID” as an option for Column Header, it merges values to “Parent;SKU;ID” or “Parent,SKU,ID” depending on the format of the csv file. What could be the problem?

  10. Jon says:

    Nope. Import does not work. Not sure what the issue is. On submit, the system just sits and waits – as if it is unable to process the input file. Basically, plugin is broken.

Leave a Reply

Your email address will not be published. Required fields are marked *