Supplier Single-Cell vs Shopify Multi-Row
Shopify product images belong on separate rows sharing the same Handle. A supplier’s single cell can contain several addresses, so expand that list before import. Put the first image on the main product row, place later images on existing variant rows, and add rows containing only Handle, Image Src and Image Position when necessary.
This converter treats the Handle as the boundary of one product. Two products can share an image address without becoming one product, and two variants can share a Handle without being reduced to one variant. The converter collects the selected image list across each product’s source rows. It keeps the first occurrence of each URL within that product, assigns positions starting at one, and keeps each original row’s other cell values. A repeated image does not delete the row carrying a different size, price or stock code.
| Field or row | Supplier Single-Cell | Shopify Multi-Row output |
|---|---|---|
| Product identifier | Handle, URL handle or a mapped supplier identifier | The same Handle on every row for that product |
| Product images | Several URLs in one selected cell | One URL in Image Src / Product image URL per assigned row |
| Image Position | Missing, repeated or inherited supplier values | Rebuilt as 1, 2, 3… within the Handle |
| Existing variant rows | Separate option values, SKUs and prices | Retained; used for additional product-image URLs before inserting rows |
| New image-only rows | No corresponding source row | Only Handle, Image Src and Image Position are populated |
| Selected image helper | Images, Image URLs or another supplier field | Removed when the mapping checkbox is selected; retained only for an archive copy otherwise |
Read the worked example before importing
Imagine a cup with two variant rows: Small has SKU 00017 and Large has SKU 00018. The Small row’s image-list cell contains front, side and back addresses in that order. The Large row has no image list. After expansion, Small carries the front address at position 1, Large carries the side address at position 2, and a third row carries the back address at position 3. That third row has the cup’s Handle and empty cells everywhere except the two product-image fields. Both original SKUs and option values stay exactly as parsed.
The image placed alongside Large remains a product-gallery image. The converter does not assign that image to the Large variant’s separate variant-image field. Existing variant-image values stay unchanged. Original image alt text also stays unchanged, so review whether it still describes the product image now on that row. New image-only rows have no generated description or alt text. The converter cannot infer those descriptions from an address.
If the source lists the same Handle in several places, the converter gathers those rows under its first occurrence. Their order within that product remains the source order. The preview reports this regrouping. Product groups may move relative to intervening products, so use the Origin column to compare each original row with its source row number. Handles that differ only by case or Unicode normalization are blocked for review rather than silently combined.
Map supplier columns and check the complete preview
Open a local CSV, confirm the Handle and multi-image mappings, then select the separator used inside image cells. Expand the images and inspect every output page. Source row numbers help trace retained variant data; image-only labels identify inserted rows. Resolve notices and compare several complete products before downloading a file for your import test.
Start with a separate copy of the original export. The file chooser reads bytes into this tab; the paste option reads text that you supply. Auto detection examines column names and samples image values from the first 100 source rows. This is a starting suggestion, not a judgment about your entire catalog. Use the two dropdowns to confirm the product identifier and the actual image-list column. Known variant and product fields are excluded from destructive mappings. An existing official Handle column must be used when present.
The file separator and image-list separator are different settings. A semicolon-delimited source file might contain pipe-separated images inside one cell. A comma-delimited CSV containing comma-separated image URLs needs correct quotes around that cell. Papa Parse handles quoted commas, escaped quotation marks and quoted line breaks, with dynamic number conversion disabled. A stock code such as 00017 stays text. If another application already removed its zeros, this tool cannot recover them.
Inside image cells, the converter recognizes commas, semicolons, pipes or line breaks. It treats a punctuation separator as a boundary when followed by another HTTP(S) URL or an empty entry. This retains a comma in an address such as a,b.jpg. Ambiguous supplier conventions can still need source cleanup; select a specific separator when automatic splitting does not match your data. HTTPS is required by this version’s local validator. A syntactically valid address does not establish that an image exists, is publicly accessible, or contains the intended product.
Check exact cells, not only the totals
The preview gives access to every converted row and column without payment. Pages contain 50 rows to keep the table manageable; use Previous, Next or the page dropdown to reach the end. A page break can pass through a product in the preview, because it is a viewing control. Download boundaries are calculated separately and keep products whole. The image URLs are displayed as text. They are never loaded as thumbnails, so reviewing a private supplier address does not send it to an image host.
Use the counts to locate unexpected changes. New image-only rows should appear only when images outnumber reusable source rows. Repeated URLs are deduplicated within each Handle. Image positions are deliberately rebuilt; old supplier positions are not reserved. Malformed quoting, inconsistent cell counts, blank identifiers, duplicate headers and formula-like cells block processing. Formula protection is conservative and can catch legitimate negative values. Correct the source deliberately; the converter will not alter a variant cell to hide a warning.
Choose the file’s real encoding if UTF-8 decoding fails. Supported alternatives include Windows-1252, UTF-16, Shift JIS and GB18030. Inspect non-English characters after changing it. Downloaded files are newly serialized as comma-separated UTF-8 CSV with LF record endings and an optional BOM. CSV quoting may therefore differ from the original bytes, while retained cell text stays exact. Do not use a source-file checksum as a test of a deliberately converted file.
Keep product groups whole at the free export boundary
Free export includes complete product groups up to 20 independent Handles or 100 data rows, whichever limit is reached first. The header does not count. If the next product cannot fit, export stops before it. Full Export is a separate USD 4.99 one-time purchase for the whole table and optional empty URL cleanup for the whole converted table.
For example, 21 products with one row each produce a 20-product free file. The Handle limit is reached first even though only 20 of the 100 available rows are used. Five products with 20 rows each fill the 100-row limit. If two products occupy 60 and 50 rows, only the first product fits: the remaining 40-row allowance is left unused because including part of the second product could separate its variants from its images. If the first product alone needs 101 rows, the free file contains no complete product and the download button stays disabled.
The boundary notice reports the actual included products and rows, which limit was encountered, and the Handle immediately after the exported portion. It does not quietly export the first 100 arbitrary rows. Review this notice before passing a file to someone else. A free file can be the entire catalog when all complete groups fit the allowance. Full Export is useful when the table goes beyond that allowance, rather than a requirement to preview the excluded products.
Empty URL cleanup handles gaps between separators or a trailing separator in an image-list cell. Those gaps are reported separately from normal blank image cells on variant rows. A free download containing explicit empty URL entries is blocked until you fix them in the source. With a verified Full Export order, the cleanup option can remove those entries and unused original rows containing only a Handle and an empty image. It never deletes an original variant row merely because that variant has no image. Arbitrary text such as N/A is not silently treated as an empty URL.
Full Export is a USD $4.99 one-time purchase. Keep your original CSV open: after checkout you may need to select it again, because your file stays in your browser. Questions or a wrong result? Email support@filepreplab.com.
Formatting is only one stage of a product import. Compare your remaining column names and dependency fields with your current Shopify export, keep a backup, and use a small reviewed test before a catalog-wide change. Shopify’s own import preview is the place to inspect store-specific effects. This tool has no store access and cannot roll back an import. For the next part of an order workflow, use the shipping label cropper; for a separate print-file task, inspect image to 300 DPI metadata. Neither operation changes this CSV or hosts its image files.
Shopify CSV multiple images FAQ
01Can Shopify import multiple image URLs from one CSV cell?
Prepare one product-image URL per row with the same Handle for that product. This converter expands a supplier’s comma, semicolon, pipe or newline list. It places the first image on the main row, uses existing variant rows next, and adds image-only rows when needed. Check Shopify’s import preview before applying changes.
02Will converting images change my variants or SKUs?
Original variant cell text, including leading-zero SKUs, option values, prices and variant-image fields, is preserved. Product-image URLs and positions are rebuilt. Non-adjacent rows for a Handle are grouped together while keeping that product’s original row order. Only the explicitly selected supplier helper can be removed; a mapped identifier header becomes Handle.
03What is included in the free export?
The entire converted table is free to preview, with every column and pages of 50 rows. A free CSV contains the first complete product groups that fit within 20 independent Handles and 100 data rows, whichever limit is reached first. The header is excluded. The converter never splits a product group to fill unused space.
04What does the USD 4.99 Full Export purchase unlock?
Shopify Bulk CSV Image Expander & Validator is a separate one-time USD 4.99 product for full-table export within browser limits and optional empty URL cleanup. This purchase is separate from File Prep Lab PDF / PSD products. A verified order for this exact product is required. A paid-looking return link alone cannot unlock the button. Full Export applies within this browser version’s limits; purchase does not remove technical limits.
05Is my CSV uploaded, and can I convert an unlimited catalog?
CSV parsing, image expansion, preview and download run locally in this browser tab. The tool does not fetch your image URLs or connect to Shopify. Payment verification sends order details only. This version accepts up to 10 MiB input, 25,000 source rows, 500 columns, 50,000 output rows and 250 images per product; available device memory can impose a lower limit. Split larger files by complete products.