Faster than reading? Try the AI assistants:
Have a question? → Open AI Help in app — chat icon, free, instant. Learn more
Want it done for you? → Open AI Concierge — AI imports products and builds catalogs. Learn more
Note: This article covers the latest Catalog Machine version 2. For help with the previous version, see this article.
Overview
Catalog Machine's CSV import allows you to import new products and variants from spreadsheets, update existing product information in bulk, add products to categories and collections, import product images from various sources, and extend products with custom fields.
Quick Start Guide
Common Scenarios
Want AI to handle a tricky CSV? Upload it to AI Concierge — it auto-detects categories, suggests field mapping, and handles unusual formats.
Import from Excel: File → Save As → CSV (UTF-8) → Upload to Import → CSV in Catalog Machine
Import from Google Sheets: File → Download → CSV → Upload to Import → CSV
Update Existing Products: Export current products as CSV → Edit → Save as CSV → Re-import
Watch this short 3-minute video for an overview of importing products from CSV (Excel / Google):
Before You Start
Requirements
CSV file with product data
First row must have field names; column names should match your category fields (new fields will be suggested during import)
Namefield is required for new productsUse
Codefield to match and update existing productsOther fields are optional
Important: Code acts as your unique product identifier/key. Best practice: use your existing product IDs, SKUs, or other stable identifiers. If Code matches an existing product, it will update that product. If no match found, creates new product. If not provided, system will auto-generate (not recommended for future updates).
Data Preparation Tips
Review your product information structure
Prepare high-quality product images
Plan your category and collection structure
Step-by-Step Import Process
1. Prepare Your File
Use CSV format with UTF-8 encoding
Include header row
If
Codefield is present and matching product is found, it will be updated, otherwise insertedCategoryis required for new products
2. Start Import
Navigate to Import → CSV: Upload file or paste content, select default category (optional), choose target collection (optional). The target collection option adds the imported products to that collection without removing them from any of their existing collections.
3. Review Analysis and Configure Data Types
System checks for: data structure, new categories/fields, missing required fields, potential issues. You can confirm new fields, set data types, map missing fields, configure variant options.
4. Preview and Import
Review sample records, verify mappings, start import, monitor progress.
Technical Reference
CSV File Format Requirements
UTF-8 encoded CSV file (supporting international symbols)
First row contains field headers
Each row represents a product or variant
Values separated by commas
Text containing commas should be enclosed in quotes
Tip: Export template with all fields as a starting point, or use product export to get CSV file for existing products.
Working with Spreadsheet Programs
Microsoft Excel: Edit data → File → Save As → "CSV (Comma delimited) (*.csv)". For international characters, save as "CSV UTF-8 (Comma delimited) (*.csv)".
Google Sheets: Edit data → File → Download → Comma-separated values (.csv). Automatically downloads in UTF-8 format.
Read more about Asian characters import and use.
Header Row Fields
Note: First row contains field headers that correspond to your category fields. Common reserved fields: Code, Name, Price, Description, Category.
Standard fields: Code (optional, unique product identifier; auto-generated if missing); Name (required for new products); Category (must match existing or will create new); Rank (numeric sorting); Showcase (1 = visible in Showroom, 0 = hidden).
Collections
Note: A Collections column in your CSV will replace a product's existing collections (the product ends up only in the collections listed in its row). To add products to a collection without removing the others, leave out the Collections column and use the target collection option in the import setup instead.
Single column: "Best Sellers, New Arrivals/Dresses". Multiple columns: Collections 1, Collections 2. Use forward slash (/) for hierarchy: Cars/Ford/Mustang.
Working with Images
1. Local Images — Upload to Image Manager first, then reference in CSV using relative paths (e.g., Products/blue-shirt.jpg).
2. Web URLs — Direct links to public images: https://example.com/image.jpg. JPG, PNG, GIF, WEBP. Max 10MB.
3. File Sharing Services: Google Drive (convert to direct download URL: https://drive.google.com/uc?export=download&id=FILEID), Dropbox (replace ?dl=0 with ?dl=1).
Note: Image field names in CSV must exactly match the category's image field names.
In your CSV, image fields can contain: relative path, absolute URL, or data URL (base64 encoded). Use Catalog Machine export or tools like https://dopiaza.org/tools/datauri to generate data URLs.
Import worked but 0 images loaded? This is recoverable without redoing the import. Almost always the image column holds bare file names copied from a supplier spreadsheet (BD652701_v1_1.jpg) rather than a path or a URL, so there was nothing for the importer to fetch. Nothing is wrong with your file.
The fix is to give those names something to match against. Upload the actual image files under Images, putting them where the CSV says they are: a column reading BD652701_v1_1.jpg means the root of the image library, and Products/BD652701_v1_1.jpg means a Products folder. Then re-import the same CSV, unchanged. The importer matches each name against your library and links the file that is already there.
Two things break the match: names are case sensitive, so IMG_001.JPG will not match img_001.jpg; and the extension is part of the name, so a column reading BD652701_v1_1 with no .jpg will not match. Re-importing is safe here, because matching on Code updates your existing products rather than duplicating them. If you only want to fix the pictures, a two-column CSV of Code plus the image field is the cleanest re-import.
Multiple images per product: create multiple image fields in category, name them differently (e.g., Image1, Image2), reference in CSV by field name.
Special Content Types
Rich Text Fields: Support basic HTML formatting (CSS not supported). Example: <div>Product description with <b>bold</b> and <i>italic</i> text</div>
Variant Fields: Use same product Code to link variants to the parent product, one row per variant. Prefix each variant column with Variant: — keeping the space after the colon. Example:
Code,Name,Variant: Size,Variant: Color,Variant: Price
SHIRT-1,"Blue Shirt","M","Blue",28.99
SHIRT-1,"Blue Shirt","L","Red",29.99
Important: write Variant: Size, not Variant:Size. Without the space the column is read as an ordinary product field, the extra rows merge into the parent product, and the variants are dropped — while the import still reports success. The safest way to get the header exactly right is to export your products to CSV first and reuse its header row.
Built-in variant fields — these are the only ones: Variant: Image, Variant: SKU, Variant: Price, Variant: Description, Variant: External Id, Variant: Barcode, Variant: Quantity. There is one image per variant, so there is no Variant: ImageFront / Variant: ImageBack — for a second picture, add another Image field to the product's category (e.g. "Image 2") and fill it at product level.
Variant options are anything else you name — Variant: Size, Variant: Color, Variant: Design — and each becomes a selectable option on the product. Free accounts are limited to 5 variants per product; the import reports any product it had to truncate.
Tips for Successful Import
Start with a template (export existing products or use sample CSV)
Verify encoding (UTF-8)
Test with small sample first
Or skip the prep — upload to AI Concierge and let it handle category detection and field mapping
Common Issues and Solutions
Encoding Problems: Save as UTF-8 CSV, or copy/paste directly into import
Image Import Failures: Check URL accessibility, file size limits, format support. If the report says 0 of N images, the column most likely holds bare file names rather than paths or URLs - see Working with Images above for the fix
Missing Data: Check required fields, category mismatches, invalid collection paths
Variants Disappeared: the
Variant:prefix was written without the space after the colon, so the column imported as a plain product field
Need Help?
Use AI Help (chat icon) for instant answers, or chat with our support team for: file preparation, image importing, error resolution, custom requirements.