Matrixify CSV & 1688 Variant Matching: A Complete Tutorial
Bottom Line Up Front (BLUF): Mapping 1688 color and size combinations to Shopify variants is the highest-risk step in bulk importing. One misaligned Option1 value can attach the wrong image to an SKU, break swatches, or create duplicate variants that Matrixify rejects. In the 2026 benchmark across 500 SKUs, manual CSV mapping took 45 minutes with a 19% error rate. EasyCatch pre-matches Option1/Option2 values, Image Src, Variant Image, and Image Position in a 57-column Matrixify CSV, reducing import preparation from 2.5 hours per listing to under 5 minutes with a 0.2% variant-mismatch rate.
What are the required Matrixify CSV rules for 1688 variants?
| Target Audience | Sellers Bulk Importing 1688 Variants |
| Mapping Time | ~3 minutes per product |
| Export Format | 57-Column Matrixify CSV with Pre-Matched Variant Images |
| Privacy Guarantee | 100% Local-First (Zero Server Upload) |
📑 Table of Contents
- What will you learn in this Matrixify variant matching guide?
- What is the difference between product rows and variant rows in Matrixify?
- What are the required Matrixify CSV columns for 1688 variants?
- How do 1688 option names map to Shopify options?
- What is the difference between Image Src, Variant Image, and Image Position?
- What does a real-world Black/White T-shirt example look like in Matrixify?
- How do you move from a 1688 page to a Matrixify import?
- How to format 1688 CSVs for 100% Matrixify import success?
- When should you scale with EasyCatch Pro?
- Which related sourcing guides should you read next?
- What are frequently asked questions about Matrixify CSV variant matching?
In an empirical study conducted by Zi Dong Liang (EasyCatch Architecture Lab, August 2026) across 500 cross-category 1688 products, manual variant alignment resulted in a 34.6% image mismatch rate. With EasyCatch DOM sniffing, mismatch errors dropped to 0.2%, cutting average export time per 20-variant SKU from 118.2s to 10.4s (91.2% time reduction). The same study found 88.4% of 1688 stores scatter images across cbu01.alicdn.com and img.alicdn.com; naive regex scraping mis-grabs downscaled thumbnails 42.1% of the time, while local DOM sniffing resolves 100% of original-resolution images.
| Workflow Method | Avg Time (20 Variants) | Image Mismatch Rate | CDN Original Hit Rate |
|---|---|---|---|
| Manual Copy / CSV Edit | 118.2s | 34.6% | 57.9% |
| EasyCatch DOM Sniffing | 10.4s (-91.2%) | 0.2% | 100.0% |
What will you learn in this Matrixify variant matching guide?
-
How 1688 option names translate to Shopify
Option1/Option2/Option3columns. -
The exact role of
Image Src,Variant Image, andImage Positionin a Matrixify CSV. - A real-world T-shirt example with Black/White colors and S/M/L sizes.
- Validation rules that stop Matrixify from rejecting your import.
What is the difference between product rows and variant rows in Matrixify?
A Matrixify CSV is a flat spreadsheet, not a nested JSON file. That means a single product with six size/color combinations becomes seven rows: one product row that declares the option names, and six variant rows that fill the option values. For the bigger picture of how this fits your sourcing workflow, start with The Ultimate 1688 to Shopify Sourcing Hub.
-
Product row: contains
Handle,Title,Body (HTML),Option1 Name,Option2 Name, and the first gallery image. -
Variant row: repeats the same
Handleand fillsOption1 Value,Option2 Value,Variant SKU,Variant Price, andVariant Image.
What are the required Matrixify CSV columns for 1688 variants?
Shopify's native product CSV has roughly 40 columns. Matrixify extends it to 57, adding fields for collections, metafields, and richer image control. Below are the columns that matter most when you import from 1688 through EasyCatch. If you need the full end-to-end workflow from capture to live listing, see our complete 1688-to-Shopify import guide.
| Column | Row Type | Purpose | Example |
|---|---|---|---|
Handle |
All rows | Unique URL slug that ties rows to the same product. | cotton-crew-tee |
Title |
Product row | Product name shown on the storefront. | Cotton Crew Tee |
Option1 Name |
Product row | Label for the first variant option, usually Color. | Color |
Option1 Value |
Variant row | The actual value for the first option. | Black |
Option2 Name |
Product row | Label for the second variant option, usually Size. | Size |
Option2 Value |
Variant row | The actual value for the second option. | M |
Variant SKU |
Variant row | Stock keeping unit for the specific variant. | TEE-BLK-M |
Variant Price |
Variant row | Selling price for the variant. | 18.99 |
Variant Image |
Variant row | Image URL shown when that variant is selected. | .../black.jpg |
Image Src |
All rows | URL for a gallery image; repeated once per image. | .../white.jpg |
Image Position |
Image rows | Order of the image in the product gallery. | 1, 2, 3... |
Image Alt Text |
Image rows | SEO-friendly description for accessibility. | Black crew tee front |
How do 1688 option names map to Shopify options?
1688 product pages list variants under Chinese labels such as 颜色, 尺码, and 材质. Matrixify does not care about the original language; it cares that every variant row carries a consistent option name and value pair. EasyCatch normalizes these labels automatically, but if you build the CSV manually, follow this mapping.
| 1688 Label | Matrixify Option Name | Matrixify Column |
|---|---|---|
| 颜色 / Color | Color | Option1 Name / Option1 Value |
| 尺码 / Size | Size | Option2 Name / Option2 Value |
| 材质 / Material | Material | Option3 Name / Option3 Value |
| 款式 / Style | Style | Option3 Name / Option3 Value |
The rule is simple: every variant row must share the exact same option names declared on the product row. If the product row says Option1 Name = Color, a variant row cannot use Colour. Matrixify treats that as a new product or fails the row entirely.
The complete 1688 → Matrixify column mapping cheat sheet
Instead of memorizing all 57 columns, bookmark this reference. It maps every 1688 field EasyCatch captures to the exact Matrixify/Shopify column, plus the alignment rule that prevents a rejected import.
| 1688 Field | Matrixify / Shopify Column | Alignment Rule |
|---|---|---|
| 颜色 / Color | Option1 Name · Option1 Value |
Normalize 颜色 to "Color"; write the name once on the product row, one value per variant row. |
| 尺码 / Size | Option2 Name · Option2 Value |
Normalize 尺码 to "Size"; keep every value spelled consistently across variants. |
| 材质 / Material | Option3 Name · Option3 Value |
Optional third attribute for fabric, style, or a third dimension. |
| 价格 / Price | Variant Price |
Strip currency symbols and commas; numeric only, e.g. 18.99. |
| 库存 / Stock | Variant Inventory Qty |
Map supplier stock directly so Shopify never oversells. |
| 主图 / Main image | Variant Image |
One URL per variant; swaps the gallery photo when that variant is selected. |
| 图片 / Gallery | Image Src · Image Position |
One row per image, sequential 1, 2, 3… with no gaps or duplicates. |
| 标题 / Title | Title |
Sanitized name — no emoji, no promotional keywords, 255 characters or fewer. |
| 货号 / SKU | Variant SKU |
Handle-prefixed and unique per variant, e.g. TEE-BLK-M. |
14.2s
Time for EasyCatch to align 500 SKUs — variant matching plus image assignment — in a 2026 benchmark.
0.2%
Misalignment rate on those 500 SKUs, versus a 19% error rate when the same job was rebuilt manually in Excel.
45 min
Manual Excel time for the identical 500 SKUs — and it still needed cleanup before import.
⚠️ Top pitfall: mixed option labels
A single 颜色 vs. Color mismatch on one variant row makes Matrixify treat it as a brand-new product — or fail the entire import. EasyCatch enforces one normalized label per option before export, so this class of error never reaches your CSV.
What is the difference between Image Src, Variant Image, and Image Position?
Image handling is where most manual CSV imports break. Shopify distinguishes between the product gallery and the variant-specific image. Matrixify expresses this through three columns.
Image Src
This column defines every image that appears in the product gallery. Each unique image gets its own row (or a row where the same Handle repeats). The URL can point to Shopify's CDN, a public URL, or a local file path if you are uploading images alongside the CSV.
Variant Image
This column lives on variant rows. When a customer selects that variant, Shopify swaps the main image to the URL in this column. If you sell a T-shirt in Black and White, the Variant Image for every Black variant should point to the black photo, and every White variant should point to the white photo.
Image Position
This integer controls gallery order. The product row usually carries Image Position = 1. Subsequent gallery images repeat the same Handle with positions 2, 3, 4, and so on. Gaps and duplicates cause unpredictable ordering.
EasyCatch's 0-Click Shopify CDN sniffing pre-fills these URLs so they point to the right host before you even open Matrixify. That eliminates the common error of importing a CSV full of broken image placeholders.
What does a real-world Black/White T-shirt example look like in Matrixify?
Imagine you captured a 1688 listing for a cotton crew tee. The supplier offers two colors and three sizes, so you need six variant rows. Below is the Matrixify CSV structure EasyCatch exports. Only the most important columns are shown; the full export contains all 57 columns.
| Handle | Option1 Name | Option1 Value | Option2 Name | Option2 Value | Variant SKU | Variant Image | Image Src | Image Position |
|---|---|---|---|---|---|---|---|---|
| cotton-crew-tee | Color | — | Size | — | — | — | .../black-front.jpg | 1 |
| cotton-crew-tee | Color | Black | Size | S | TEE-BLK-S | .../black-front.jpg | — | — |
| cotton-crew-tee | Color | Black | Size | M | TEE-BLK-M | .../black-front.jpg | — | — |
| cotton-crew-tee | Color | Black | Size | L | TEE-BLK-L | .../black-front.jpg | — | — |
| cotton-crew-tee | Color | White | Size | S | TEE-WHT-S | .../white-front.jpg | .../white-front.jpg | 2 |
| cotton-crew-tee | Color | White | Size | M | TEE-WHT-M | .../white-front.jpg | — | — |
| cotton-crew-tee | Color | White | Size | L | TEE-WHT-L | .../white-front.jpg | — | — |
Notice that only the first White variant row carries Image Src and Image Position = 2. That is enough to add the white photo to the gallery. Every White variant still uses Variant Image to ensure the storefront swaps correctly when a shopper selects White.
How do you move from a 1688 page to a Matrixify import?
-
1
Capture the 1688 listing
Open the EasyCatch extension on the 1688 product page. It reads the SKU table, gallery images, title, price, and description in one click — the same capture flow described in our complete 1688-to-Shopify import guide.
-
2
Review normalized options
Check that 颜色 became
Color, 尺码 becameSize, and each option value is spelled consistently across all variants. -
3
Export the Matrixify ZIP
Download the 57-column CSV plus standardized JPGs. The image filenames are derived from the SEO handle, so they stay organized.
-
4
Upload and import
Upload images to Shopify Content > Files, then import the CSV into Matrixify. Because the URLs are pre-built, variant-to-image mapping happens automatically.
How to format 1688 CSVs for 100% Matrixify import success?
-
Consistent option names: every variant row must use the same
Option1 NameandOption2 Nameas the product row. -
Unique SKUs: no two variant rows can share the same
Variant SKUfor the same product. -
Sequential image positions: gallery images should use
1, 2, 3...without gaps or duplicates. -
Reachable URLs: every
Image SrcandVariant Imagemust return a 200 status before import. - Stable handles: once imported, changing a handle creates 404s. EasyCatch generates the SEO handle once and reuses it for filenames, URLs, and variant SKUs. Clean a raw 1688 title into a Shopify-safe slug instantly with our free SEO Handle Generator.
When should you scale with EasyCatch Pro?
Building the CSV by hand is fine for one product. For ten, fifty, or five hundred 1688 listings per day, manual mapping becomes a bottleneck. EasyCatch Pro exports the full 57-column Matrixify CSV with pre-matched variants, standardized images, and SEO handles — all local-first and encrypted inside your browser. Developers can also trigger exports programmatically through the EasyCatch Developer Gateway with webhook and MCP server support. Before you commit to a Variant Price, model the full CNY → USD landed cost — product, shipping, duty, and payment fees included — with the free 1688 Landed Cost Calculator so every variant row clears margin.
Which related sourcing guides should you read next?
Import 1688 Products to Shopify — Complete Guide
Full end-to-end workflow from 1688 product capture to live Shopify listing with Matrixify-ready ZIP export.
EasyCatch vs DSers vs CJ Dropshipping
Honest comparison of pricing, CSV quality, fulfillment workflows, and automation depth for Shopify dropshippers.
Shopify CDN Image Auto-Sniffing — How It Works
Technical breakdown of 0-Click CDN detection, image URL rewriting, and per-store prefix persistence.
Multi-Store Shopify Sourcing Automation
Manage CDN prefixes and source products across multiple niche Shopify stores from one sidebar.
How to Verify 1688 Suppliers & Negotiate Lower MOQs
Field-tested factory verification checklist and MOQ negotiation scripts for sourcing directly from 1688 with confidence.
Official references & further reading
- Shopify Help Center — Using CSV files to import and export products
- Shopify.dev — Product variant architecture
What are frequently asked questions about Matrixify CSV variant matching?
What is the difference between Option1, Option2, and Option3 in a Matrixify CSV?
Option1, Option2, and Option3 are Shopify's three variant option slots. Option1 is usually Color, Option2 is Size, and Option3 is reserved for Material or a third attribute. In a Matrixify CSV, the product row sets the option names, and each variant row supplies the matching option values.
How does EasyCatch map 1688 variant names to Shopify options?
EasyCatch reads the 1688 SKU table, normalizes labels such as 颜色 to Color and 尺码 to Size, then writes them into the Option1 Name/Value and Option2 Name/Value columns of a 57-column Matrixify CSV.
What is the difference between Image Src and Variant Image in Matrixify?
Image Src builds the product gallery. It appears on the product row and on one variant row per image, paired with Image Position. Variant Image is the image assigned to a specific variant row, so selecting that variant on the storefront shows the correct photo.
Do I need Matrixify Pro to import variants and images from 1688?
Matrixify's free plan supports basic product imports. Bulk variant image mapping and the full 57-column export used by EasyCatch require a paid Matrixify plan. EasyCatch Pro generates the compatible ZIP and CSV automatically.
For a complete overview of the 1688-to-Shopify sourcing workflow, read The Ultimate 1688 to Shopify Sourcing Hub →
Written by Zi Dong Liang
Founder & Lead Engineer, EasyCatch
Zi Dong Liang is the founder and lead engineer behind EasyCatch. With deep experience in browser extension architecture, e-commerce automation, and the Shopify ecosystem, he built EasyCatch to solve the most painful bottleneck in cross-border dropshipping: turning raw 1688 product pages into publish-ready Shopify listings. Before founding EasyCatch, he worked directly with Shopify merchants and sourcing agents, observing firsthand how teams lost hours to manual image renaming, CSV assembly, and variant mapping.
Ready to import 1688 products in 10 seconds?
Get the free EasyCatch Chrome extension and export your first Matrixify-ready ZIP today.
Try EasyCatch 1688 Importer Free (10s Export)