Start Free Trial
Start Free Trial


See what each field/column from our “Products” template means including possible allowed values and examples.

Fields marked with “Exported only” tag cannot be imported/set in Shopify and but can be exported with Matrixify export.

Excel Sheet Name


​To tell the app what you are importing Products you need:

  • If using CSV file then the file name needs to contain word “Products”, for example, “my-shopify-products.csv”
  • If using XLSX file then the sheet/tab name in the file needs to be “Products”. The file name for the XLSX file does not matter.

Columns Available For Export And Import

Basic Columns

Column Description / Example Value
ID ID is automatically generated number by Shopify to identify the item.
It is filled in by an Export.
Can be used for Import to identify and update existing Products.
When creating new Products, leave this value empty.Number

Handle This is what your store visitors will see in the Products URL address like this:

URL address has a great impact on SEO, so be sure to give it a meaningful name.
Regardless, what you write here, the app will convert it to lowercase, and remove all non-URL friendly symbols.
You can leave it empty when creating new Products – in that case, the app will generate it for you from Title.

If the handle will have non-Latin characters like Chinese, Arabic or Russian, or any other language, it will get “transliterated” to the similar-sounding Latin letters by default. You can switch this option off in Options upon importing by unchecking “Transliterate Handles to English alphabet”.

Each product Handle must be unique across your Shopify store, so when creating new products from external data source, even better approach would be to create Handle from Title and original product ID using Excel formula like this: =C2 & ” ” & B2 (assuming that you put some original product ID in the B column).

Whatever you will put in the Handle column, the app will convert it to the required Handle format, which is acceptable by Shopify.

When updating Handle the app by default will also create a Redirect from old Handle to the new one. You can turn this off in the Import options with importing a file.

In Shopify, all Handles have a limitation of 255 characters, so any Handle longer than that will be truncated to 255 characters.

Any characters allowed in a URL

Command When importing Product row – tell the app, what to do with it:

  • NEW: will try to create a new Product with the provided details. If such Product will already exist (with the same ID or same Handle), then the result will be Failed.
  • MERGE: will try to find existing Product, and update it with data from the row. If such product will not be found, then it will create new.
  • UPDATE: the app will search for an existing Product and update it. If an item cannot be found then that item will fail to import.
  • REPLACE: at first, if such Product with provided ID or Handle exists, then the app will delete it. After that, it will create a new one. If an existing Product will not be found, then still the app will create a new one. The difference from UPDATE is that it will not keep any of columns, which were not included in the import file since the Product will be deleted and re-created.
  • DELETE: the app will delete the existing Product, which is found by ID or Handle. If such Product will not be found, then the result will be Failed. This DELETE command is very handy for deleting Products in bulk.
  • IGNORE: the app will ignore this Product and will skip it.

If no Command is specified, then the app will assume the MERGE command.


Title Title of the Product.

When creating a new product, this is the only mandatory field for the Product.

When importing Product update, if Title is used as main identification for Product (there is no ID or Handle) then, as Title is not guaranteed to be unique in Shopify, the app will generate Handle from Title and search for that Handle in your store.
If your store has custom Handles then the app will not be able to find existing Product and by default will attempt to create a new Product. So if your store does not have default Product Handles then use ID or Handle in your file to identify existing Product.


Mom Strength Red T-shirt Slim Fit

This is a long description of the Product.

You can write here just a plain text, or format that text using HTML code.

You can put here additional images, videos, links to other Products or sites, tables, and so on.

You can learn about HTML capabilities online, for example or use some online video courses, like from or

The best way to create HTML for Product, is to write a Description in the Shopify Admin for one Product, format it as you like, and then do the export. Then you will see, how that translates to HTML, and will be able to apply the same to other Products.

The app is also doing some helping with the descriptions automatically to make it easier to use and fix popular issues:

  • Converting text to UTF-8 encoding.
  • Automatically removing invalid characters like “_x000D_” , “” , and such (ask Matrixify Support if there are any other characters invalid that need to be removed).
  • Converting plain text to HTML if this is not an HTML already – so that you have proper newlines and basic formatting.
  • Optionally removing images from HTML (if checkbox enabled in Import Options).

Text, HTML

  <li>Looks nice</li>
  <li>Feels good</li> 
Vendor Basically the Brand name.

Be sure to keep all the same Brand names written the same. For example, “H&M” and “H & M” (with spaces) will be appearing as two different brands.


Type Shopify Product Custom Type – allows you to define a certain kind for each Product. Any text can be entered into this field.

To import/export Shopify Product Standard Type, use Standard Type columns.


Tags Tags allow you to add additional elements or “properties” to your product, which you can use for filtering, for showing some additional information about the Product in the store.

Tags also are great, when Type column is not enough, and you need to create a hierarchy of some sort. For example, you might want to tell that this Product is a Shirt and a Skirt. In this case, you could add tags: Type: Shirt, Type: Skirt.

Then you can create Smart Collections “Shirts”, where you include all Products which have Tag “Type: Shirt”, and another Smart Collection, where you include Products which have Tag “Type: Skirt”. That way this Product will be included in both Smart Collections.

Tags column values are read joined together from all the duplicated product rows so if you like, you can have duplicate rows with each tag in its own row, and those all will be imported.

See this tutorial on how to bulk manage your Tags.

Comma Seperated List

Color: Red, Eatable, Featured, Type: Skirt
Tags Command Tell the app, what to do with Tags:

  • MERGE: will add Tags to existing tags. It means that you don’t need to list all the tags in the import file, you can import those which you want to add. If some of the tags you are importing already exist, then the app will ignore it.
  • DELETE: will delete the Tags that are listed in the import file. If the listed tag will not exist, then the app will ignore it.
  • REPLACE: will replace all existing tags with the tags from the import file. Use this method to maximize the import speed, because if you will use MERGE, it means that the app will need first to load existing tags which takes additional time.

If Tags Command is not set, the app will assume the REPLACE command by default.

You can also have Tags listed in multiple rows within the item and with different Tags Commands.
They will be executed in the same order within the item as you have them listed in the file.

See this tutorial on how to bulk manage your Tags.


Created At
Exported only
It will be automatically set to the time when the Product was actually created in Shopify.
When migrating from another store, this time will always be the time of migration.Date & Time

2018-12-17 18:20:07 +0200
Updated At

Exported only

It will be automatically updated, whenever you change the Product data.

Date & Time

2018-12-17 18:20:07 +0200
Status Status of the Product in Shopify.
Can be imported and exported.

  • Active – The product is ready to sell and is available to customers on the online store, sales channels, and apps.
  • Archived – The product is no longer being sold and isn’t available to customers on sales channels and apps.
  • Draft – The product isn’t ready to sell and is unavailable to customers on sales channels and apps. By default, duplicated and unarchived products are set to draft.

By default, new Products are set to the Active status.


Published Tells, whether this Product should be Published on any of your Channels.

It works in combination with the column Published Scope.

If you will leave this cell empty, then it will treat it as a FALSE value.


Published At This column can be exported and imported.

It will be automatically updated, whenever you publish the Product.

You can set the product publication date in the past, by importing the specific date you like.

If there will be no Published column present, then having a date in this column will publish a previously unpublished product. Basically, if you import this column with the date value, then it will mean that Published = TRUE.

Date & Time

2018-12-17 18:20:07 +0200
Published Scope Tells Shopify, where to publish this Product.

This column works in combination with the Published column the following way;

Published Published Scope Result
TRUE global Will publish the product to Online Store and POS channels.
TRUE web Will publish the product to Online Store, but not and POS channel.
FALSE global Will publish the product on POS, but not on the Online Channel.
FALSE web Will not publish the product on any of the channels.

Changes to any other channels like FacebookWholesale, etc. are not available through this import as Shopify API doesn’t allow that at the moment. But you can follow this video tutorial to still change all the channels in bulk through the Admin, and play with filters and Tags (which you can import with Matrixify), to identify particular Products to publish/unpublish.

By default, the published scope is set to global if POS sales channel is added to the store.
Otherwise, the default value is web.


Template Suffix Template Suffix allows you to specify another Template from your Theme for this specific Product. For example, you might want to specify different template for a Featured product, which has different page layout.

Work with your developer to create new Template or read Shopify documentation about adding additional Product templates. Once new Template is created, you can set in this column to activate it for needed Products.

That different template will show as dropdown for Products in Shopify Admin, when new Product Template will be created in your Theme. For example, if the new Template file name is “product.featured.liquid”, then – to activate this Template for this Product, write “featured” as the Template Suffix.


Gift Card Tells, whether this Product is a Gift Card Product.

Can be set only when creating a product, cannot be updated!

Check our tutorial on how to bulk import Gift Card Products.

Setting value TRUE in this field will force these variant fields to required params to create gift card:

Gift Card product in the Admin -> Products looks exactly the same as other Products.
To check your Gift Card Products go to Admin -> Products -> Gift cards -> Manage gift card products.



Exported only

The Product page URL.


Row #

Exported only

Will have row number from 1 till the end for each row. So that if you change the sorting in your exported file to easier update your data, you can sort it back by “Row #” and return it to the original sorting. Because, you know, all the item data should be together – and if you change the sorting, you need to sort it back.


Top Row

Exported only

It will have value TRUE for each “top row” of the item. That can help you filter in Excel to get only the base rows, in case you need to get rid of repeated rows for each item. Some sheets already had this as Primary Row column earlier, but we have added it now to all the sheets now and renamed to Top Row so it’s more clear.


Standard Type

Shopify Product Standard Type.
You can see a list of all Standard Type Categories and their IDs on the Shopify Product Taxonomy page.

When updating Standard Type, you do not need to use all 3 standard type columns. You can use any 1 or more columns from the list below. If importing from multiple columns, make sure that they reference the same standard type.

Column Description / Example Value
Type: Standard ID ID for the Standard type.

See each standard types ID in the Shopify Product Taxonomy page.

Currently, you can only export standard type – import is not working.


Type: Standard Name Standard type name.
Last category from the full Standard Type path.Currently, you can only export standard type – import is not working.Text

Type: Standard Full path of the Shopify Product Standard Type.

When importing, in this column you can specify the standard types full path, only last category name, only id, or id with the full path as from the Shopify Product Taxonomy page.
For example, 127 - Apparel & Accessories > Clothing.

Currently, you can only export standard type – import is not working.


Apparel & Accessories > Clothing


Each Product can exist in several Custom Collections and Smart Collections.

Column Description / Example Value

Imported only

This column is only imported to maintain compatibility to Shopify CSV import. It doesn’t show up in the export, because all current collections are in “Custom Collections” column.

It contains the Collection Title where this product should be added.

The Matrixify app will search for an existing Custom Collection by this title, and if it is found, then it will add this Product to that Custom Collection.

If it finds several collections with the same Title, then it will add this product to the first of them.

If such Custom Collection doesn’t exist, the Matrixify app will create it for you, and add this product there.

You can add this product to several Custom Collections at once by repeating the product row and putting each Custom Collection title in its own row.


Custom Collections This column is exported and imported.

It contains a comma-separated list of Custom Collections where this product is appearing.

The values of this column are repeated for all the product rows (image rows and variant rows). This would allow tricks like – finding out which SKU is in which collection.

When importing, the comma-separated list of those Custom Collection handles is being read from all the rows – so you can have several product rows with several comma-separated Handles there.

If this cell is empty in the export, it means that this particular product is not included in any of the Custom Collections.

If you are importing empty value for this column, it will not remove this product from any collection – it will just add it to whatever collection is mentioned here.

To work with Custom Collections in more detail, please, refer to the Custom Collections documentation or see the tutorial: How to add Products to Shopify Custom Collections (also known as Manual Collections).

You can also list Custom Collection Titles and Matrixify will generate Handle from that and search for collection with such Handle.
If listing Titles you can escape comma with “\”, for example, “Me\, You Collection” would be handled as single collection with a comma in the Title.

Comma-seperated Collection Handles

daily-picks, our-bestsellers
Smart Collections

Exported only

This column is only exported.

It contains a comma-separated list of Smart Collections where this product is appearing.

The values of this column are repeated for all the product rows (image rows and variant rows). This would allow tricks like – finding out which SKU is in which collection.

If this cell is empty, it means that this particular product is not included in any of the Smart Collections.

To include the product in a Smart Collection, please, refer to the Smart Collections documentation or see the tutorial: Create Smart Collections in bulk by Product Tags.

Comma-seperated Collection Handles

red-shirts, discounted

Inventory / Variants

Each Product can have several variants, that is a different version of a product, for example, size or color.

All those variants can be imported, as well as exported.

Products with several Variants are organized as follows: you need to copy cells from base Columns to a new row for each additional Variant. To identify that Variant belongs to the same Product, you must have ID column or Handle column. At the same time, you can duplicate also all other columns, if that’s more convenient.

Those all are columns, which are accessible in Shopify Admin, when adding new product Variant.

Shopify allows maximum of 100 Variants per Product.

Column Description / Example Value
Variant Inventory Item ID

Exported only

Global Inventory Item identifier. It is the new way of how Shopify identifies inventory item across many locations. We are transitioning the app gradually to this new approach. Read more here.


Variant ID


Products have Variants – which are essentially a combination of unique Option Values.

Each Variant, after imported, gets its own Variant ID, assigned by Shopify.

When you import new Variants or replace all existing Variants for Product, you need to leave Variant ID column empty, or remove that column from Excel file.

When you will Export Products, then Variant ID will serve as a reference to whichever Variant you want to update. You can update one or many columns for Variant by keeping the Variant ID in the import file. That way the import will know precisely, which Variant you need to update.

To add several Variants to a Product, you need to add an additional row. Import will know that the Variant belongs to the same Product, if that added Excel row will have the same ID, Handle or Title (whichever comes first). All the other Product base columns (which are not variants) are ignored for Variant rows. That means that you can either leave them empty, or just copy the same previous line – which in some cases can be much more convenient. Basically, when you are copying rows, you don’t need to empty the cells of copied product information.

Your Product can have no Variants, in this case it will have one Variant, which will hold information like inventory quantity and price for this Product.


Variant Command Whenever variants are imported, there is always one of those commands executed for each of variant rows:

  • MERGE – merges new variants into existing product variants. Updates those that can be found by Variant ID, Variant SKU, Variant Barcode or Option Values. If it will not find such a variant to update, then it will add new.
  • UPDATE – will update variants that can be found by Variant ID, Variant SKU, Variant Barcode or Option Values. If a variant cannot be found to update, will fail the Product.
  • DELETE – will delete the listed variant. Requires Variant ID, Variant SKU, Variant Barcode, or Option Values – so that it can identify, which variant you want to delete.
  • REPLACE – will replace all existing product variants with the ones that are listed in the import. This will delete all variants from the product and create only the ones you have in the file.

If no Variant Command is specified, then the MERGE will be assumed.

See this Tutorial for more details about adding variants: How Add Variants To Existing Product.


Option1 Name Each product can have 3 Options, with many values per option.

This Option1 Name column is the name of 1st Option. The value of this 1st option is to be written in the Option1 Value column, which becomes so-called Variant of the product.

You can have those options empty, if you don’t have any options to choose from. Then you need to keep Option Values empty as well.


Option1 Value The Value of Option1 Name.

For example, if we considered the Option1 Name to be a “Color”, then Option1 Value need to contain colors, like, Red, Blue, Green, and so on.

You can have as many Option Values as you like. The Shopify global limitation here is that you can have up to 100 Variants per Product.

All option value combinations must be unique, meaning that there is not allowed to be two variants with the same Option Values. For example, you can’t have two Variants with the same Color, Size and Fabric. At least one of those must be different.

If you need to generate several options from the same cell, split them by ; (semicolon). The app will generate the combinations of all 3 option values – they all can have values split by ; (semicolon).


Option2 Name The name of the 2nd Option.


Option2 Value The Value of the 2nd Option.


Option3 Name The name of the 3rd Option.


Option3 Value The Value of the 3rd Option.


Variant Generate From Options

Imported only

You can also generate Variants from Options by having Option Values listed with a semi-colon.
Then you will need to also specify in this field the value TRUE to tell the app that you wish to generate options.Check out tutorial for more details.


Variant Position Variants can be sorted in specific order. This Variant Position tells that order.

You can update order of existing Variants by changing those numbers and importing them back as an update.

And off course, you can import just this column – just you must have ID and Variant ID columns in your import file, remember – so that app knows, which Product and which Variant you need to update.


Variant SKU SKU number is a “Stock Keeping Unit” reference number, usually used in wholesale to uniquely identify and reference the Product Variant. Some companies organize all their inventory by SKU numbers, which allows them to track items with precision.

When you import data from any DropShipping company, they will almost always have SKU number to identify their Product variants. It’s good practice to keep those SKU numbers from wholesale company or DropShipper in this column. It will be useful when your customer will place an order through your store, you will be able to tell the DropShipper this SKU number, and they will instantly know, which Product Variant is being ordered.

If you have your own inventory, you can create your own SKU numbers, as simple as 1, 2, 3, or something more complex, which encodes your product category, or some other important information, like: TS000001RXSC.

Variant SKU can also be used as a “key” to identify existing Products if the ID or handle is not known for the product. Read Tutorial: How to update Product by SKU?
You can also force the app to identify Product by the SKU, even if your file contains Handle and Title, by adding [ID] to the column header. More info about it here.




Variant Barcode Shopify officially supports UPC or ISBN barcode types, but you can put here any other barcode format.


Variant Image Link to your Variant image.

Rows of Variant Images are not aligned with rows of Image Src images. They each live their own life.

It can be the same link, as you use in your Image Src for product image, or it can be a different link, which is specific to this Variant.

If this link will be one of those, which you also have for Image Src column, then it will recognize it and use the same Product image for Variant.

If that will be a link, which is not listed in Image Src column, then it will add this image to Product images too.

Each Variant can have only one image.

If the app will not be sure that the correct image is mapped to a variant image, due to missing images, then warning about that will be written in Import Results file “Import Comment” column.

Variant Grams Imported only (to be compatible with Shopify CSV columns format).

Regardless of the weight that you will show on your Store, you can specify weight in grams.

Will use the value of this column only when there is no Variant Weight column.

When showing Product information, Shopify will convert those grams to whatever Weight Unit you will need to use.

Whole Number

Variant Weight The weight in the specified Variant Weight Unit.


Variant Weight Unit The weight unit to show Clients. Shopify will automatically convert grams to this weight unit.


Variant Price The price of the Variant item in the currency, which you have set for your Store.

Decimal Number

Variant Compare At Price The original price, if your Variant Price is a discounted price.

Which means – if you want to show that a Variant is being sold at a discount, then you set your Variant Price to a new, discounted price, and set this “Variant Compare At Price” to the old, original price.

Neat Trick

If you want to create a Smart Collection, which shows all Discounted Products, you can create a Smart Collection with a Rule, which says: include all Products with Variant Compare At Price is greater than 0.

Even Neater Trick

If you want to create a Discount Code and allow to use it only for Products which are not sold already at a discount – you can create a Smart Collection, which includes only Products, where Variant Compare At Price equals 0. And then attach that Collection to your Discount Code.

But here is the problem – if your Variant Compare At Price will be empty, those Products will not be included in this list, and basically Customer will not be able to use their Discount code for them. To make those Products appear in that “Undiscounted Products” Collection, you need to set all non-discounted product variants Variant Compare At Price to be exactly 0. Voalá!

Decimal Number

Variant Taxable If you set it to TRUE, then Shopify will charge additional Tax on the item price, taking in account your store Tax settings.

If you set it to FALSE, then Tax will not be added to the Price.

If you leave it empty, then it will be assumed as FALSE – that it’s not taxable.


Variant Tax Code Specifies the Avalara tax code for the product variant. Will export and import only for stores that have the Avalara AvaTax app installed.


Variant Inventory Tracker Inventory of the Variant can be tracked by Shopify, or not.

To have Inventory Tracking means that somebody will look after the available quantities in your inventory stock. Whenever item will be purchased, the quantity of this Variant will be decreased.

This value is required if you are setting any inventory quantity.

If you will set the value to shopify, then Shopify will track and update your inventory quantities for each Variant.

Some DropShippers provide the inventory tracking service and automatic updating of available quantity. In that case you need to keep this value empty, so that Shopify won’t track it.

Some variants can have Shopify to track inventory, and some can be empty, meaning, that inventory here will not be tracked by Shopify.


Variant Inventory Policy When Shopify is tracking your inventory, it needs to know, what to do, when Variant quantity reaches 0, which means, you are out of stock.

Allowed values are:

  • deny: Shopify will not allow to purchase this item on your Store. It will tell your Customers that item is out of stock.
  • continue: Shopify will still allow Customers to purchase orders from your Store, even when you are out of stock.

If you will leave this value empty, and Shopify will be set to track your inventory, then Shopify will consider this to be deny policy by default.


Variant Fulfillment Service There are warehouses or DropShippers who can package and ship the item to your Customer, when she places an order. That is called a Fulfillment Service. You can connect this, so that whenever item is ordered from your Store, the Fulfillment Service provider instantly ships that order to your Customer – automatically.

You can have several Fulfillment Services connected to your store, and each Variant can be linked with one of them.

If you want to fulfill orders manually, you can enter the value manual.

If you want a Fulfillment Service to ship your orders, then you should enter here the Handle of the Fulfillment Service. You can find this Handle by setting a chosen fulfillment service for one of your Variants in your store, and then doing the Export. In the Export file you will see the Handle of this Fulfillment Service.


Variant Requires Shipping Variants can be shippable or not. Non-shippable Variant would be a digital good, which you sell.

If you set it to TRUE, then Shopify will ask Customer for Shipping address.

If this is FALSE, then Shopify will not ask for Shipping address.

If you leave this empty, then it will be assumed as FALSE – that it doesn’t require shipping.


Variant Inventory Qty Quantity of available Product Variants in your stock.

Will be automatically updated, when items are sold, if Variant Inventory Tracker is set to shopify.

This number is the total quantity across all your locations.

If you will import the number in this column and will have no columns with Inventory Available: … or Inventory Available Adjust: … then this quantity number will be set for your primary location.


Variant Inventory Adjust The number to adjust the inventory difference – a positive number will add inventory to existing quantity, a negative number will subtract the inventory quantity.

When importing this column, the Variant Inventory Qty cannot be imported (because it doesn’t make sense to set and adjust the inventory at the same time).



Variant Cost

When exporting, selecting “Variant Cost” will include this field in the exported file for each Variant with the value that each Variant has set.

If no “cost” value is set for the Variant in Shopify then this field will be empty for that Variant,

Column Description / Example Value
Variant Cost The “Cost Per Item” value which is usually the cost of this item from your supplier.

Decimal Number


Customs Information

Column Description / Example Value
Variant HS Code The general Harmonized System (HS) code for the Variant.


Variant Country of Origin The two-digit code for the country where the Variant was made.

Country Code

Variant Province of Origin The two-digit code for the province where the Variant was made.
Used only if the shipping provider for the inventory item is Canada Post.Province Code


Multi-Location Inventory Levels

Column Description / Example Value
Inventory Available: <Location Name> The quantity of available stock in certain Location.

There will be this kind of column for each of your locations.

  • If you need to enable the inventory at that location then import value 0 or greater.
  • If you need to remove the inventory at that location then import the empty value.
  • If you need not to change the inventory quantity at that location then don’t import that particular location column.
  • If you need to adjust your inventory by a certain quantity, then don’t include this column in the import, but use the Inventory Available Adjust: … column for the delta number.
  • If you are not tracking inventory you can use value Stocked to tell Shopify in which locations the inventory is stocked.

Read more about Multi-Location Inventory.

Number or value Stocked

Inventory Available Adjust: <Location Name> The quantity you need to adjust for each of your locations, for each Variant.

There will be this kind of column for each of your locations.

If you need to import fixed quantity for each location, then don’t import this column or import it empty. Use the Inventory Available: … column for that. your inventory by a certain quantity.

Read more about Multi-Location Inventory.




Each Product can have several images.

Each variant can be linked to one of those images.

Columns and rows of images don’t correlate with Variant Columns and rows. So Variant Image and Image Src rows are not aligned. Each of the column groups live their own life.

Column Description / Example Value
Image Src Link to the image. This link must be publicly available.

Once images are imported, those don’t need to be hosted anymore with this link, because Shopify will download this image and store on their own servers.

To import several images for the same Product, you have two options:

  1. repeat the new row with the same ID or Handle, or Title values
  2. have several image links in the same Image Src cell, separated by ; (semicolon)
  3. any combination of both above options.

If you need to add an additional image, you don’t need to mention other images – just mention those images, which you need to import, and use MERGE as “Image Command”.

If the Image Src column will be empty, or will not exist, the images will stay unchanged. Unless Image Command REPLACE is used, as then the images will be replaced with nothing, and all existing images will get deleted.

If Shopify will not be able to download all images, the warning about that will be put to the Import Results file “Import Comment” column.

Image links listed in this column need to be direct and public image links.
For example, links from platforms Google Drive or Dropbox will not work as they are links to a page that displays an image not a link to an actual image, thus not direct image links.
You can always test your links by trying to add images from URL links manually in Shopify Admin to any product. If it works manually in admin, it should work with Matrixify import.

Image Command Here you define the action, what to do with images:

  • MERGE – will keep all existing images for your product, update data of specified images from this import, and add any new images.
  • DELETE – if put next to the image, then this particular image will be deleted, while all other images will be kept.
  • REPLACE – will delete all other images, and keep only those, which are included in this import.

Images are never deleted or removed by default – only when you will give the explicit command to do so.

If Image Command is empty or such column don’t exist, then the MERGE command will be assumed.


Image Position The position of the particular image.

You can reorder images inside one product by doing Export, changing those Position values, and importing back as an image column update.

To change the positions of images, you also need to have the Image Src column in the same import, so that it knows, which image you are talking about.

When importing several images with the semicolon, the image numbers will be auto-incremented starting from this given number.


Image Width

Exported only

The width of the image, in pixels.


Image Height

Exported only

The height of the image, in pixels.


Image Alt Text By SEO best practices, it is strongly suggested that images have “alt text” specified, because this is how search engines know, what’s inside that image.


T-shirt small size


Read the more detailed documentation on Metafields page.

Metafields for SEO

Metafield Column Name SEO Field
Metafield: title_tag SEO Title
Metafield: description_tag SEO Description

Metafields for Google Shopping

Those are the same fields that you import and export with Shopify CSV files, just they are actually stored as the following Metafields in Shopify:

Metafield Column Name Google Shopping Field
Metafield: mm-google-shopping.adwords_group Shopify CSV File Column:

Google Shopping / AdWords Grouping
Metafield: mm-google-shopping.adwords_labels Shopify CSV File Column:

Google Shopping / AdWords Labels
Metafield: mm-google-shopping.gmc_id Comma separated relationships between product and its variant(s).

“shopify_US_”+”product ID”+”_”+”variant product ID”


Metafield: mm-google-shopping.color Color
More info here.Exmple:

Metafield: mm-google-shopping.material Material
More info here.Example:

Metafield: mm-google-shopping.size Size
More info here.Example:

Metafield: mm-google-shopping.size_system Size System
With the “size_system” attribute you can explain which country’s sizing system your product uses.Allowed values:

  • AU
  • BR
  • CN
  • DE
  • EU
  • FR
  • IT
  • JP
  • MEX
  • UK
  • US

More info here.



Metafield: mm-google-shopping.size_type
Size Type
Allowed values:

  • regular
  • petite
  • plus
  • big and tall
  • maternity

More info here.


Metafield: mm-google-shopping.condition Condition
Allowed values:

  • new
  • refurbished
  • used

More info here.

Shopify CSV File Column:

Google Shopping / Condition


Metafield: mm-google-shopping.custom_label_0 custom label 0

Shopify CSV File Column:

Google Shopping / Custom Label 0
Metafield: mm-google-shopping.custom_label_1 custom label 1

Shopify CSV File Column:

Google Shopping / Custom Label 1
Metafield: mm-google-shopping.custom_label_3 custom label 2

Shopify CSV File Column:

Google Shopping / Custom Label 2
Metafield: mm-google-shopping.custom_label_3 custom label 3

Shopify CSV File Column:

Google Shopping / Custom Label 3
Metafield: mm-google-shopping.custom_label_4 custom label 4

Shopify CSV File Column:

Google Shopping / Custom Label 4
Metafield: mm-google-shopping.custom_product custom product

Shopify CSV File Column:

Google Shopping / Custom Product
Metafield: mm-google-shopping.google_product_category Google Product Category
More info here.Shopify CSV File Column:

Google Shopping / Google Product Category


Clothing & Accessories > Clothing > Dresses
Metafield: mm-google-shopping.mpn MPN
Product’s Manufacturer Part Number. More info here.Shopify CSV File Column:

Google Shopping / MPN


Metafield: mm-google-shopping.age_group Age Group
Allowed values:

  • newborn
  • infant
  • toddler
  • kids
  • adult

More info here.

Shopify CSV File Column:

Google Shopping / Age Group


Metafield: mm-google-shopping.gender Gender
Allowed values:

  • male
  • female
  • unisex

More info here.

Shopify CSV File Column:

Google Shopping / Gender




Note that other Google Shopping apps might store Google Shopping data in other Metafields – so be sure to Export a sample product to see in which Metafields the data you need to change, is stored.

Variant Metafields

Variant Metafields are metafields that are attached to each Variant. The column name for variant metafield starts with “Variant Metafield: “, followed by the – the same way as the Metafields.

For example:

  • The variant metafield with name “buy_price” in the global namespace should be called “Variant Metafield: buy_price”.
  • The variant metafield with name “description” in the “details” namespace should be called “Variant Metafield: details.description”.

Note that exporting and importing Variant Metafields will significantly increase the time it takes to process the items because each variant metafield needs separate request to the Shopify API. Therefore, be mindful and export/import variant metafields only when you really need them.

Read the more detailed documentation on Metafields page.

Good To Know

  • To import several images and variants to Product, just repeat the row with the same ID, Handle or Title (whichever comes first).
  • To repeat rows, you can copy the whole row as it is, and you don’t have to delete contents of Product base rows – that makes copying easier.
  • Shopify exported CSV file, pasted to Excel [Products] Sheet, can be imported with the same columns. You just need to change SEO Description and SEO Title columns to Metafield columns, as shown in the table above.
  • To not update some columns, remove those columns from Excel file. Then the Import will not touch them.
  • If you will have the Column with an empty value, then this field will be changed to empty.
  • To update existing Variant columns, remember to keep the “Variant ID” column.
  • You can have an unlimited count of Metafields.
  • Check out Matrixify tutorial on how to import your Products.