The Complete Guide to Magento 2 Configurable Product

- E-Commerce, Magento 2

What is a Magento 2 configurable product? Being an inevitable part of most e-commerce websites, it is a phenomenon that goes beyond the borders of simple Magento 2 products. In the following article, we explore what Magento 2 configurable products are. You will find out their unique characteristics and key management aspects. After that, we proceed to how to create a configurable product in Magento 2. There is also a chapter dedicated to the way configurable products work within your catalog. The Magento 2 configurable product import is another essential topic covered below. You will learn how to import configurable products using the default data transfer tools. After that, we will explore an alternative approach that adds multiple benefits, such as automation and mapping.

Magento 2 Configurable Product Defined

Have you ever shopped for clothes? You’ve probably had. Clothes come with multiple attributes, such as size and color. Instead of providing tons of separate simple products, Magento introduces configurable ones to sell such products and lets your customers select the proper size and color.

So, a Magento 2 configurable product is an item that unites multiple similar simple products where each simple product is associated with a corresponding combination of options, such as size and color, and has a personal SKU. Thus, it’s possible to track the stock inventory of every product variation of a configurable product in Magento 2.

You may argue that you can use a simple product with custom options instead. However, if you decide to do so, you won’t be able to control the stock for each product variation independently. Let’s explore an example.

You have 5 red t-shirts, and 10 green t-shirts. In the case of a configurable product, Magento 2 knows precisely when each variation runs out. With a simple product with custom options, there is no tool that helps you automate the control over the number of green and red shirts. You will have to continuously monitor each order and make manual adjustments to the product stock.

With configurable products, Magento 2 introduces independent product variation inventory management. But how does it work?

A Magento 2 configurable product is often called a “parent,” because you assign simple “child” products to it. These simple products act as configurable product variations. Let’s suppose you deal with the very same t-shirt product available in multiple colors (we assume that it is available in the same size to simplify the example). However, each color is a separate simple product assigned to the configurable one. Whenever a customer selects a variation and adds it to the cart, they purchase a simple product that has been assigned to the configurable.

Magento 2 lets you use multiple product options to create outstanding flexibility for the products you sell. At the same time, you keep your product catalog neet. Let’s return to the t-shirt example. For instance, there is a blank shirt in your catalog available in 5 colors and 8 sizes. Instead of having 40 simple products in your catalog, you can use a single configurable product.

To explore other product types available in Magento 2, follow these links: 

Now, let’s try to create a configurable product to see how it works.

How to Create Configurable Product in Magento 2

The process of creating a configurable product in Magento 2 is similar to other product types, except for the Configurations block, where you assign simple products to the parent configurable product you are working on.

Let’s see, how to create a configurable product in Magento 2 in this step-by-step guide:

Step 1: How to Add Configurable Product in Magento 2

First of all, you need to add a new configurable product to your catalog. It’s a familiar procedure every merchant knows. If you are new to the platform, that’s how to create a configurable product in Magento 2:

  1. Proceed to the Catalog > Products
  2. Click Add Product 
  3. Choose Configurable Product from the dropdown.

That’s it. Your new configurable product has just been added. Now, you need to configure it.

Step 2: Add/Create Child Products to Magento 2 Configurable Product

After filling in all the attributes data as in the case of a simple product, you need to proceed to the product’s section with configurations:

  1. Scroll down to the Configurations section
  2. Click the “Create Configurations” button.

A new screen is displayed in Magento 2: create attributes for configurable products, following this 4-step procedure:

Select Attributes

You will see a list of all applicable attributes that can be used to tie simple products to the Configurable Product you are creating. Alternatively, you can create attributes for configurable products. Just hit the “Create New Attribute” button.

Let’s choose a more straightforward path. Select “color” and “size” attributes like in the image above to create a configurable product in Magento 2. Click “Next” to proceed to the next step.

Attribute Values

Here, define the variations available for your configurable product. For example, the screenshot above shows that the configurable product will have two options: size and color. Customers will be able to select from three sizes: S, M, and L; and three colors: red, green, and black.

This means nine simple products (size*color) will be created for this configurable product:

  • Size S – red
  • Size S – green
  • Size S – black
  • Size M – red
  • Size M – green
  • Size M – black
  • Size L – red
  • Size L – green
  • Size L – black

Note that you can create new values at this stage or un-select the values for child products that you don’t want to be created.

Click the “Next” button to proceed.

Bulk Images and Price

This screen lets you decide how you want images, prices, and quantity to be applied to the newly created Magento 2 configurable product variations (simple products).

You can create a configurable product in Magento 2 by choosing one of the following three options:

  • Apply a single set of images/prices/quantity to all SKUs – choose it if you know there is the same set for all child products;
  • Apply unique images/prices/quantity by attribute to each SKU – choose it if you want to display different prices and visual materials for different attribute values;
  • Skip images/price/quantity at this time – choose it if you want to skip this section, and apply images/price/quantity once the variations are actually created.


This section displays all configurable product variations that will be created in Magento 2 after you finish the configuration.

Make sure to pay close attention to this section. If you are not happy with the created products, you can always click the “Back” button, to return to the previous steps.

If everything’s correct – hit the “Generate Products” button.

Step 3: Apply Final Adjustments to Magento 2 Configurable Products

You have just created a set of simple products (variations) that are assigned to your Configurable Product. These variations are not visible individually, meaning they will not be available separately in your product catalog. Instead, these products are used to add options to the Configurable Product.

While still at the Configurable Product creation screen, you can quickly edit variation names, SKU, price, quantity, weight, and images, or, if required, remove them and create new variations.

Step 4: Save Your New Configurable Product to Magento 2

Once done with the variations click the “Save” button to create a configurable product in Magento 2.

If you have added new attributes and values, you will be asked what do you want to do with these new attributes. Magento 2 lets you add configurable attributes to the current attribute set, a new attribute set based on the current one, or choose another existing attribute set.

It is a good idea to keep the product attributes in attribute sets and make sure you keep track of the attribute sets for other products you might add to your store. So the decision is really up to you.

Notes: Add Magento 2 Tier Price To Configurable Product

Some things are not so obvious regarding configurable products in Magento 2, for example, tier pricing. Tier pricing lets you offer a quantity discount for a product. The more products a customer adds to the cart, the higher the discount is. So, how to set up tire prices per configurable product variations in Magento 2?

Tier and group prices are set per simple product that is a child product of a parent configurable product. To set a tier price, you need to select a child from the Configurations section of the configurable product click Advanced Pricing under the Price field, and follow these steps to add a Magento 2 tier price to a configurable Product:

  1. A side panel displays for you to set up the product prices:
    magento 2 tier price configurable product
  2. Click on the Add button to customize the product’s discount options.
  3. Fill in the required fields.
    magento 2 tier price configurable product

    1. Choose the Website to set the configurable product tier pricing in Magento 2.
    2. Select the Customer Group that receives the discounted price.
    3. Enter the required number of products to get the deal in the Quantity field.
    4. Specify the desired price of the product in the Price field.
  4. Add as many tiers as you need by clicking on Add and repeating these steps.
  5. Click the Done button to add the tier prices to a Magento 2 configurable product.

Note that you need to repeat this procedure per each simple child product of the configurable parent.

Congratulations! Now, you know how to create a configurable product in Magento 2. Let’s see how one acts at the storefront.

Magento 2 Configurable Product Storefront Display

When it comes to customer experience and configurable products in Magento 2, we should examine the two main areas: catalog and product pages. Configurable products have a couple of unique qualities here.

Configurable Product on Catalog Page

In Magento 2, configurable products are displayed on a category page with a bunch of interactive options. It means that you customers don’t need to proceed to the exact product page to view different product variations. Below, you can see that both color and size swatches are interactive right in the catalog:

Clicking on different color options may impact the product image and price, depending on the product configuration. Size swatches may be linked to different prices, altering the display of the configurable product price upon choosing a particualar option.

Configurable Product on Product Page

You can observe the same functionality on a product page. Magento 2 provides the ability to switch between different product attributes. Depending on the product configuration, each variation may be linked to different image and price:

However, increasing the product quantity is possible only on a product page. Besides, it provides customers with the product short and long descriptions and other blocks of information.

How to Improve Magento 2 Configurable Product Display

This functionality of configurable products in Magento 2 is pretty basic. What if additional more robust display is necessary?

You can easily enhance the existing shopping experience of Magento’s configurable products with the help of the Improved Configurable Product Extension by Firebear Studio. It improves the overall appearance and functionality of configurable products, providing customers with a more user-friendly and intuitive shopping process. Below, you can see a full video overview of our module:

Also, you can find the full description of how the extension works in its Improved Configurable Product Manual. Let’s highlight the most notable advantages you get with the module.

Magento 2 Category Page Enhancements for Configurable Products

On the category page, the Improved Configurable Product extension has a deal to offer. Below, you can see the core category page enhancements associated with configurable products in Magento 2.

Product Name Updates

Firstly, it presents a dynamic update of the product name whenever a customer selects a particular variation. For example, you offer clothes of a different color and what to highlight it in a product name. By default, switching between color swatches isn’t linked to a product name. The ICP module, however, provides you with such an opportunity. So, a customer can see the selected color in the product name, just like shown below:

Customer Preferences

Secondly, the ICP extension remembers your customer’s preferences. Whenever a customer picks a particular product variation in a catalog and then proceeds to the product page, the module loads the product page with pre-selected customer choices.

Magento 2 Product Page Enhancements for Configurable Products

As for a product page, the ICP extension offers even more.

The improved configurable product page offers the following advantages compared to the one available in Magento 2 by default:

  • Dynamically updating URLs;
  • Child product name display;
  • Price range display;
  • Dynamically adjusted SKU;
  • Product matrix view with support for bulk ordering;
  • Magento 2 tier price configurable product;
  • Dynamic updates for product details and other blocks, including custom ones;
  • Custom shipping message.


As you can see, the ICP extension covers almost every element on the product page, bringing invaluable functionality to it. Let’s describe the most important enhancements in more detail.

Default Product Variation

With Improved Configurable Products, you can also set a configurable product variation that will be always pre-selected when a customer opens a product page. The same preselected variation displays in a catalog and on a product page.

Dynamic Content Updates

All product page content, including page URL, name, and description can be updated automatically depending on the customer’s choices.

Why is it important? Because:

  1. Your customers stay aware of the variation they selected.
  2. Variations may differ, that’s why it is essential to have a unique description for every Configurable Product variation.
  3. Page URL is also updated dynamically, meaning you can target particular product variations when running promotions. Merely select product variation, copy the link and paste it into your Google Ads, include it in a Twitter post, or add it to the banner.
  4. Dynamic price update. Along with the native Magento 2 product price, the extension controls how the price range is displayed. This is huge if you are running tier prices for your products.

Dynamic content updates for Magento 2 configurable products are associated with a better shopping experience and, as a result, an increase in conversion. Customers stick to the stores they feel comfortable with the most and tend to spend money there.

Product Matrix View

If you are a supplier or running a store where customers purchase multiple products and product variations at once, this is what you are looking for. When shopping for multiple product variations, it is troublesome to add all required items to the cart when performed with native Magento 2 functionality. You need to add every product variation to the cart individually: select size, choose color, specify quantity, and add a product to the cart. Repeat this set of actions for each child product.

As you can see from the image above, it is a time-consuming process. However, you can add variations of a Magento 2 configurable product to the cart in a much more simplified way. Let’s look at how the Improved Configurable Product extension simplifies this process.

Due to the matrix view, you only need to specify the desired quantity of each variation to be purchased and then click the Add to Cart button. This adds multiple variations to the cart at once.

Another good news is that ICP provides the ability to switch from the matrix view to the standard page layout.

Custom Shipping Message

Another prominent feature of the Improved Configurable Product extension is the ability to schedule shipping messages.

You can use custom product attributes to specify the shipping message and start/end date for the custom message. When a customer visits a configurable product page within a set period, they can see a custom shipping message displayed in the specified location.

Note that this feature is not bound to shipping messages. You can use it for different purposes, such as notifying customers about special offers or promoting additional products that come with the order.

For other enhancements introduced to the standard Magento 2 configurable product functionality, visit the Improved Configurable Product page.

Magento 2 Configurable Product Import

Now, let’s see how to import configurable products to Magento 2. The process is based on the standard Magento 2 product import with a couple of enhancements. You can import a configurable product with all its variations which should be specified in a CSV file.  Below, we explore two scenarios of the Magento 2 configurable product import. First of all, you will learn the native Magento 2 import. Next, we proceed to the improved procedure associated with the Improved Import & Export extension.

Native Magento 2 Import of Configurable Products

Native configurable product import to Magento 2 is not the thing you dive into right away. Before importing configurable products, you need to master the art of importing simple products to Magento 2. Thus, you will understand the peculiarities of the import process better.


Below, you will find the prerequisites of the Magento 2 configurable product import:

  • You need to make sure that every imported product attribute already exists in your Magento 2 store. Otherwise, the import won’t be successful.
    To do this, navigate to Stores > Attributes > Products. Here, you need to create all the attributes for the products you are going to import. Be it electronics and voltage or clothes and sizes. Every attribute matters, so take your time.
  • After the attributes are created, make sure to assign them to proper Attribute Sets at Stores > Attributes > Attribute Sets. Double-check that you have assigned appropriate attribute sets in the import table.
  • Then, create the necessary categories. That’s right: you cannot import products along with categories because Magento 2 won’t know where to put them. So, before the configurable product import, create all necessary categories, check the category paths, and proceed.
  • Another important note: none of the products you are going to import should exist in your Magento 2 store. You cannot update products, you can only import configurable products to Magento 2 with their assigned simple products if neither exist in your catalog.

Now, that we are done with the configurable product peculiarities, it is time to make sure the table matches the required Magento 2 CSV file format. You can read The Complete Guide to Magento 2 Product Import/Export to set proper formatting to the table.

Or you can always download sample files at the FireBear Studio GitHub. All of them come with default Magento 2 formatting, and you can use them as a starting point for the import procedure. Additionally, we have composed a Master Import table in the form of a Google Sheets spreadsheet. The corresponding tables gather all available product attributes that may be relevant during the Magento 2 import. There is a sheet with sample data for the Magento 2 configurable product import. Watch this video to learn more about the table:

Prepare Configurable Product CSV Suitable for Magento 2

Now, let’s explore the actual Magento 2 configurable product import. The process relies on the following three pillars:

  1. You need to have a table entry for a parent configurable product;
  2. You need to have table entries for all the associated child simple products;
  3. You need to tie child and parent products in the special columns only available for the configurable products.

Assume you need to import a shirt that has three colors: red, green, and blue. These three colors are three simple products with the attribute “color” responsible for identifying the colors of the configurable product variations. All three simple products and a parent configurable product should have attribute color in their Attribute Set.

Next, when you are sure that you have created an Attribute Set with the attribute “color” in it, you need to compose a CSV file that consists of

  • Three simple products: Red Shirt, Green Shirt, Blue Shirt;
  • One configurable product: Shirt.

Your configurable product CSV should look as follows:

You can find an interactive version of this table in the Master Table: Native M2 Conf Product Import.

Also, pay attention to the specific configurable product attributes:

  • configurable_variations – Describes the values associated with a product variation. The value has the following format:
    For example: sku=shirt-red-xs,color=red,size=xs,price=10.99. 
    sku – SKU of a simple product assigned to the configurable
    attribute (1,2, 3…) – values of the simple product attributes that are used to create configurable product variations, e.g. size, color.
    default – defines if the variation should be pre-selected when a customer visits the configurable product page. Works only with Improved Configurable Products Magento 2 extension.
    The values are separated by a comma, and multiple SKU values are separated by “|”.
  • configurable_variation_labels – Labels that identify product variations. This is used to name the attributes at the storefront.
    Values: product_attribute=Name at the frontend.
    For example: color=Choose color,size=Choose size.
    We set the attribute “color” to the label “Choose color” and “size” to “Choose size.” The values are separated by a comma.
  • associated_skus – Identifies the SKUs of the individual products that make up the group. This attribute is used to associate a simple product with configurable and bundle parents. The SKUs are separated by a comma.

That’s how your product CSV should look before you import configurable products to Magento 2. Now, let’s take a look at the actual import procedure.

Import Configurable Products to Magento 2

Follow these steps to import configurable products to Magento 2:

  1. Navigate to System > Data Transfer > Import. This is the main screen from which you will be importing products to your Magento 2 store.
  2. In the Entity Type field select “Products”.
  3. For the Import Behavior stick to “Add/Update.”
  4. Click the “Browse” button at the Select File to Import to select the CSV table with configurable products.
  5. Click the “Check Data” button to see if the table meets the Magento 2 requirements.
  6. Click the “Import” button to import Magento 2 configurable products.

Improved Magento 2 Import of Configurable Products

Now that you are familiar with the native Magento 2 import procedure it is time to introduce you to a simplified way of importing configurable products to your Magento 2 catalog. With the Improved Import & Export extension, you can create configurable products on the fly while only importing simple products. At the same time, it simplifies product import, makes it more straightforward, and overall reduces the time required to import configurable products to your Magento 2 catalog.

The core features of the Improved Import & Export extension are:

  • Full support of Google Sheets – import products, including configurable products, categories, and other entities directly from Google Sheets;
  • Import and Export job scheduling – schedule any number of jobs to run automatically with cron;
  • CSV, XML, and XLSX format support – take advantage of any file format without converting the import table to CSV;
  • Configurable Products and product attributes can be created on the fly – no need to follow Magento 2 limitations. Upload and update existing products and create new product attributes during import;
  • Table and attribute mapping – you can map your table structure with the one required by Magento 2 and map any column names to match already existing attributes;
  • Orders, categories, product attributes, invoices, and shipping import and export procedures – import and export anything you need from your Magento 2 store.
  • Price adjustments of the imported products – increase or decrease the price of the imported products by a fixed or percent value and round the prices to .49 or .99.

So, how does the Magento 2 configurable product import process differ when you use the Improved Import and Export extension? If you scroll back to the beginning of the Native Magento 2 import chapter, you will see four things that every Magento 2 store owner should be familiar with before attempting a product import. Well, that is how the Improved Import & Export extension handles these:

  • You can import new product attributes along with the products. No need to create the attributes before the import process. Here, you can read about how to compose new attributes: How to create product attributes with Magento 2 import.
  • You don’t have to add such attributes to the attribute sets, you can do this anytime after the import is done.
  • The categories still have to be created first, however, FireBear Studio is working on it.
  • You can import configurable products that already exist in your Magento 2 catalog.

That almost eliminates all the prerequisites for the standard configurable product import procedure of Magento. At the same time, the Improved Import and Export extension speeds up the process and introduces a bunch of other useful features that simplify various store management processes.

Custom Logic to Create Configurable Products with Magento 2 Import

Custom Logic is a part of the Import Job that defines how the extension should treat configurable products. The Custom Logic offers different scenarios of how simple products can be assigned to the parent configurable product.

This section allows you to skip the prerequisites associated with the standard Magento 2 configurable product import. Let’s break it down:

  • Create Configurable Products – this setting defines whether the parent configurable products should be created if you are only importing simple child products that have something in common. If you are importing simple products, and have a column where you specified the SKU of the configurable product, you don’t even have to spare a dedicated row in your table for a configurable product. This setting will create a parent configurable product automatically.
  • Configurable product conditions -it allows to specify conditions to assign simple products to the parent configurable one:
    • Create config product by the same attribute of simple products – it allows assigning simple products to a configurable product using a dedicated column where the SKU (or any other recurring value) of the configurable product is specified.
      In other words: create a dedicated column, and put the SKU of a parent product in it. The extension will assign the child product to configurable.
    • Create configurable products by custom rules (part of a line before/after delimiter) – it allows assigning simple products using SKU (or any dedicated column), where the extension reads part of the value before/after delimiter (which is specified separately).
      In other words: select a column where simple products have a few words or symbols in common, and the extension will find such products and assign them to the configurable.
    • Create configurable products by custom rules (the number of characters from the beginning/end of the line) – it allows assigning simple products using SKU (or any dedicated column), where the extension reads the first/last number of characters from the beginning of the line.
      In other words: select a column where simple products have a few words or symbols in common, and the extension will find such products and assign them to the configurable.

What these settings mean, is that to import and create a configurable product and assign child simple products to it, you will only need to use a SINGLE COLUMN. That’s right. You don’t need to use three columns as with Magento 2 native import.

The screenshot above shows a single column “group” where the SKU of a parent configurable product is specified. That’s all you need to create configurable products in Magento 2 upon import.

Copy Simple Product Attributes to Create Configurable Products

When importing only simple products and creating configurable products on the fly, the configurable products will be created with only the required attributes:

  • The SKU of the configurable product will be generated automatically;
  • The price of the configurable product is not required as it is calculated depending on child products;
  • The attribute set of the configurable product will be the same as in the case of its child products.

However, other attributes such as description, images, and metadata will be blank.

To avoid this, and fill newly created configurable products with content you can use the “Product attributes to copy value” section of the custom logic.

In this section, you specify the simple product attributes whose values should be copied for the newly created Magento 2 configurable product. The screenshot above shows that the extension will copy values of the “description” attribute and “meta_title” attribute of the simple product to create a configurable product in Magento 2.

The logic is the following: the attribute values of the first product in the table, that corresponds to the configurable product are copied. Look at the table below:

Here, we have a column “group” that is used in custom logic: Create config product by the same attribute of simple products. When creating the configurable products from this table the attribute values of the ABC-S-Gray attribute will be copied to the configurable product ABC, and values of the XYZ-M-Gray product will be copied to the configurable product XYZ. Because these products appear before the others related to the same parent.

Remember, only the values of the first products that match the conditions are copied to the configurable products.

Product Attributes for Variations

The Product Attributes for Variations table is another feature we should describe. It acts as a native Magento 2 attribute configurable_variations. Here, you specify the attributes that should be used as filters for the configurable product. Remember sku=Shirt-Red,color=red? You don’t need it anymore. Just specify the attribute you want to use and hit the “Import” button to create configurable products in Magento 2 upon import.  .

That’s all for the improved Magento 2 configurable product import process. As you can see, it is much more convenient and straightforward than a native Magento 2 import process. At the same time, it is way more flexible and offers opportunities that are not available by default. So, whether you are new to Magento 2, or are an experienced store owner, you can take full advantage of the extension to utilize your Magento 2 store potential to the fullest extent. Read the Improved Import & Export manual to find out other aspects of import and export processes. Youcan also learn more about our module in this video:

Final Words

Configurable products play in key role in Magento 2. They introduce the ability to reduce the number of items in the catalog but provide the abundance your clients wish to see. You can easily create Magento 2 configurable products in your admin. The platform also lets you import configurable products if you follow its strict requirements.

At the same time, there are way more interesting and powerful ways to stream configurable products in Magento 2. For instance, the ICP extension lets you introduce an absolutely new shopping experience associated with configurable products.

The Improved Import & Export module, in turn, provides a simplified import for Magento 2 configurable products which doesn’t have the limitations of the default data transfer. At the same time, the extension lets you import simple products, creating fully-featured configurable products based on the provided information.