UlakChat
Try it liveFeaturesHow it worksPricingBlog
Log in

UlakChat

Run your social media messages and comments with AI-powered automation.

WhatsApp · 0850 303 85 30[email protected]

Links

FeaturesHow it worksPricingTry it liveFAQSupport and contact

Guides

Facebook Comment AutomationFacebook Messenger AutomationInstagram Comment AutomationInstagram DM AutomationBlog
PoliciesPrivacy PolicyCookie NoticeTerms of ServiceDistance Sales AgreementDelivery and Refund Policy
© 2025 – 2026 UlakChat
VisaMastercardiyzico
Opening the post
  1. Blog/
  2. Import Products with Variants from Excel: Size, Color and Stock in One File
Guides7 min read

Import Products with Variants from Excel: Size, Color and Stock in One File

You can upload products with size and color variants in one go from an Excel file. Here is how to fill in the template, group variants and get through the mapping steps.

Published: July 29, 2026

In short

  • In UlakChat you can bulk upload products from a CSV, XLS or XLSX file with the Import from File button on the My Products page.
  • Each variant of a product goes on its own row, and all of them share the same Product Group Number. The system groups those rows under one product.
  • Variant axes such as size and color go into the Option 1, Option 2 and Option 3 columns as a name and a value. Stock and price are kept separately on each variant row.
  • The only required field is Product Name. If a product with the same code already exists, you choose to skip it or overwrite it in the review step.
Young woman filling in a product list on a laptop between boxes and a clothing rack
In this post
  1. Why upload products from a file?
  2. Download the template
  3. How variant grouping works
  4. Images
  5. The import screen, step by step
  6. Existing products and conflicts
  7. Common mistakes
  8. After the upload

You don't have to enter products with variants into UlakChat one by one. Use the Import from File button on the My Products page to upload an Excel or CSV file. Each size and color option of a product goes on its own row, and a shared group number tells the system to combine those rows into one product.

This guide covers how to prepare the file, how to group variants and what happens at each step of the import screen.

Why upload products from a file?

Your automatic replies are only as accurate as your catalog. When a customer asks "Do you have it in medium?", the answer comes from the variant and stock details in the product record. If a product is missing, or its variants are incomplete, the automation won't guess. It just can't answer.

If you have fifty products and each has six or seven size and color combinations, entering them by hand takes hours. Most shops already keep a stock spreadsheet. Moving it into the template and uploading it in one go is the shortest path.

Download the template

On the My Products page, click Import from File. The first step, Upload File, offers two templates: Download Excel Template and Download CSV Template. We recommend the Excel template because it has three sheets:

  • Instructions: a short set of rules.
  • Field List: what each column means, whether it's required and an example value.
  • Products: the sheet you fill in.

Don't change the column headers on the Products sheet. The import screen matches columns by their headers. If you change a header, you'll have to map that column by hand.

In the template, columns such as Product Condition, Publish Status, Currency and Has Variants? show a dropdown when you click a cell. Don't type free text in these cells. Pick from the list.

How variant grouping works

There's one rule to remember for variant imports: each variant is its own row, and every variant of the same product carries the same Product Group Number.

Say a T-shirt comes in red M, red L and black M. Your file looks like this:

Product Group Number Product Name Has Variants? Option 1 - Name Option 1 - Value Option 2 - Name Option 2 - Value Variant Code (SKU) List Price Stock
TSH-100 Cotton T-Shirt Yes Color Red Size M TSH-100-RED-M 299.90 12
TSH-100 Cotton T-Shirt Yes Color Red Size L TSH-100-RED-L 299.90 8
TSH-100 Cotton T-Shirt Yes Color Black Size M TSH-100-BLK-M 299.90 0

In the panel these three rows become a single "Cotton T-Shirt" product with three variants. A few details:

  • Option columns. A product can have up to three variant axes: Option 1, Option 2 and Option 3. Each axis has a name (Color, Size, Material) and the value for that row (Red, M, Cotton).
  • Price and stock are per row. Each variant can have its own List Price, Sale Price and Stock. If black M is sold out, enter 0 as its stock.
  • SKU and barcode must be unique. Variant Code (SKU) and Barcode must be different on every row.
  • Product details come from the first filled row. Product level fields such as name, description, brand and category are read from the first filled row of the group. If a later row has a different value, the import doesn't stop. The first value is used and you'll see a warning in the results. You don't need to copy these details to every row, but don't enter different values either.
  • Copy and paste is fastest. To add a variant, copy an existing row and then change the SKU, barcode and option values.

In the DM, these options reach the customer as buttons:

Instagram DM

The customer picked the Cotton T-Shirt.

Which Color?

RedBlack

Red

Which Size?

ML

L

Status of Color: Red, Size: L: In stock. Price: 299.90 ₺.

There's a cap on how many variants one product can have. Rows over that cap aren't imported, and the results tell you how many rows were left out for which product.

Products without variants

For a one-size bag or accessory, enter No in the Has Variants? column and leave the option columns empty. A row with an empty Product Group Number also counts as a product on its own.

Images

You can't paste images into a cell. Instead you enter the image's web address, starting with http or https. There are two columns:

  • Product Images: images shared by all variants. Separate several addresses with commas.
  • Variant Image: the main image for the variant on that row only. Put the red T-shirt photo on the red rows and the black one on the black rows.

There is also a Variant Extra Images column for a variant's additional images. Images are downloaded during the import and saved to your storage. If your storage fills up, the remaining images aren't downloaded, and the Storage Limit line on the results screen shows how many were left out.

The import screen, step by step

Once your file is ready, the import goes through these steps:

  1. Upload File. Drag and drop the file, or click to choose it. CSV, XLS and XLSX are accepted, and the file can't be larger than 20 MB. This screen also shows how many products you can still add.
  2. Select Header Row. The system shows the first 10 rows of your file and guesses which one holds the headers. If you used the template, the guess will be right. Press Continue.
  3. Column Mapping. Each column in your file is linked to a product field. Template headers are matched automatically. If you uploaded your own spreadsheet, you pick the fields here by hand. Fields are grouped under Identity, Basic Info, Variant Options, Price & Stock, Media, Shipping & Dimensions and Policy & Other. The only required field is Product Name.
  4. Value Mapping. If the status or currency values in your file differ from the ones the system knows (for example, you wrote "on sale"), you link them here to values such as Active or Inactive. If nothing needs mapping, this step is skipped.
  5. Review and Confirm Results. Here you see how many products and variants will be added and which rows have errors.
  6. Start Import. The import runs in the background. You can close the page, and you'll get a notification when it's done.

You can also upload your own stock spreadsheet without converting it to the template. Columns that have no match in the template, such as material or country of origin, can be mapped to Custom Attribute (free-form), where you type the attribute name yourself.

Existing products and conflicts

If a product's code in the file already exists in the panel, that row is marked Conflict in the review step. For grouped rows, the Product Group Number is used as the code. For each conflict you have two choices:

  • Skip: the product in the panel stays as it is.
  • Overwrite: the product in the panel is updated with the details from the file.

If there are many conflicts, use Bulk Decision for All Conflicts and choose Skip All or Overwrite All. The decision applies per product. You can't skip one variant of a product and overwrite another. The choice applies to all its variants.

Common mistakes

  • Writing the group number differently across variants. "TSH-100" and "TSH100" become two separate products. Use exactly the same value on every row of the same product.
  • Using the same SKU on two rows. Forgetting to change the SKU on a copied row is the most common mistake.
  • Entering a file name instead of an image address. "red.jpg" won't work. You need the full web address.
  • Going over your product limit. If the file has more products than you have room for, the first rows are processed and the rest are reported as Skipped Due to Quota. The review step tells you this up front.
  • Losing track of failed rows. The results screen lists failed rows with the reason for each. Fix them and upload a new file with only those rows.

After the upload

Once your products are in the panel, two jobs remain. First, link your Instagram posts to the right products in the Post Mapping tab, so people who comment get details for the right product. Then add product steps to your message automation. When a customer types a product name, the steps that find the product and ask for size and color draw on this catalog.

For general automation setup, see our Instagram DM automation page. To let AI build the flow for you, read the AI Flow Builder guide.

Frequently asked questions

How do I add images to the file?

You can't paste images into the file. Instead you enter their web addresses (http or https). Images shared by all variants go in the Product Images column, and an image for a single variant goes in the Variant Image column. Images are downloaded during the import and saved to your storage.

Can I put products without variants in the same file?

Yes. Enter No in the Has Variants? column and leave the option columns empty. A row with an empty Product Group Number also counts as a product on its own.

Do I have to stay on the page while the import runs?

No. Once the import starts you can close the page. It keeps running in the background, and you'll see a notification in the panel when it's done.

Try UlakChat for free

No credit card needed. Start on the free plan and set up your first automation right away.

Start free

In this post

  1. Why upload products from a file?
  2. Download the template
  3. How variant grouping works
  4. Images
  5. The import screen, step by step
  6. Existing products and conflicts
  7. Common mistakes
  8. After the upload

Related posts

Oct 2, 2026
7 min read
Guides

Every Flow Editor Component Explained: What Each One Does

The UlakChat flow editor has 15 components for message automation and 8 for comment automation. Here is what each one does and when to use it, all on one page.

Read post
Sep 30, 2026
7 min read
Guides

Comments Screen Guide: Manage Hundreds of Comments in One Place

See and reply to your Instagram and Facebook comments in one list on UlakChat's Comments screen. Here is how to use filters, templates, bulk actions and automation.

Read post