AI Listing Creation, CSV & ZIP Bulk Import
There are two ways to create listings in FLUF, and they share the same screen (Listings → Create):
- From photos — upload product photos and AI writes the title, description, category, brand, colour and more. Best for a handful of items at a time.
- In bulk from a spreadsheet or ZIP — bring a CSV, Excel file, or Google Sheet (optionally with a ZIP of photos) and create hundreds or thousands of listings at once. Best for migrating inventory or wholesale uploads.
This guide covers both.
Part 1 — AI listing creation from photos
One of FLUF's most powerful features is AI listing creation. Just upload photos, and AI handles the rest!
How It Works:
- Upload product photos
- AI analyzes images using computer vision
- AI generates title, description, category, brand, color, and more
- Review and edit suggestions
- Create listing with one click
What AI Can Detect:
- Brand: Recognizes 10,000+ brands from logos and tags across all product categories
- Category: Identifies product type — clothing, electronics, home goods, collectables, and more
- Color: Detects primary and secondary colors
- Condition: Estimates based on visual cues
- Style: Modern, vintage, streetwear, formal, etc.
- Material: Cotton, polyester, leather, denim, metal, plastic, etc.
- Department: Womens, mens, kids, unisex, home, tech
Best Practices for AI Accuracy:
- Good Lighting: Natural light or bright indoor lighting
- Clear Photos: In focus, show all angles
- Show Tags: Include photos of brand tags, care labels
- Flat Lay or Mannequin: Works better than hanger shots
- Neutral Background: White or light backgrounds ideal
- Multiple Angles: Front, back, close-ups of details
Using AI Creation:
- Go to Listings → Create
- Upload your product photos (2-20 images)
- Check 'Enable AI Analysis' (enabled by default)
- Click 'Analyze with AI'
- Wait 10-30 seconds for analysis
- Review AI suggestions
- Edit any fields as needed
- Select channels and create
Custom AI Instructions (your listing rules): Guide the AI with your own instructions — how you want titles, descriptions, sizes and details written:
- "Focus on vintage details"
- "Start every title with the brand, then the item type"
- "Read the material from the wash-tag photo"
- "Describe in a casual, friendly tone"
Save these as your listing rule and every new listing follows your house style automatically. Open Settings (the gear on the create page or on any product form) → Listing Rules to set it up. You can also add rules that only apply to a specific brand, category or channel.
Tweak it when you regenerate: when you re-run the AI on a listing, the prompt box is pre-filled with your saved rule. Edit it to fine-tune just that one item — then turn on Save as my listing rule to keep the change for all future listings, or leave it off to use your tweak for this regeneration only.
AI Limitations:
- May misidentify lesser-known brands
- Color detection can vary with lighting
- Condition assessment is approximate
- Always review measurements manually
Pro Tips:
- AI works best with well-known brands
- Edit the description to add measurements AI can't detect
- Use AI for 70-80% of work, then refine manually
- Save time by using AI for basic fields, focus your effort on descriptions
On mobile
The mobile app is built around AI listing creation — the camera opens by default and AI takes over from there.
- Snap a photo with the shutter button (or pick from your gallery — up to 20 photos per listing).
- AI analysis starts immediately in the background. Keep taking photos of other angles, tags, or details — you don't have to wait.
- After ~7 seconds the AI preview overlay slides up showing title, price range, brand, category, and condition.
- Tap Quick List to crosslist immediately to your selected channels, or Edit to open the full product form first.
The form loads in two passes: basic fields (title, price, brand, category, condition) appear instantly, while description, department, size, and colours fill in via a second AI pass — start editing right away without waiting.
Auto-Tagging is on by default and analyses your first photo automatically. If you'd rather capture several products before processing, toggle it off in More → AI Settings. The same screen lets you set a Typical Title & Description to guide AI toward your usual writing style.
Photo tips for mobile:
- Use natural or bright indoor light
- Plain background — let the product be the focus
- Get a close-up of the brand tag for accurate brand detection
Part 2 — Bulk import (CSV, Excel, Google Sheets & ZIP)
Got a large inventory? Bulk import is your best friend — bring your product data in a spreadsheet (or just a folder of photos) and create everything at once.
Watch it end to end:
When to Use Bulk Import:
- Migrating from another platform
- Importing wholesale inventory
- Creating 100+ listings at once
- When you already have product data in spreadsheets
Import Methods
1. CSV or Excel File Upload
Upload a CSV (.csv) or Excel (.xlsx / .xls) file directly from your computer. Excel files are read natively — no need to "Save As CSV" first. The first sheet/tab is used, and the first row must be your column headers.
Leading zeros are preserved — SKUs like 00123 keep their zeros when you upload Excel, because cells are read as displayed.
Filtered your Excel sheet? A filter only changes what you see — every row is still in the file. FLUF spots this and asks before importing: you can bring in only the rows you can see, or the whole file. If you'd rather be certain, delete the filtered-out rows and save before uploading.
Ended up with fewer listings than rows? Some rows can't be imported — most often because the photo link is empty or won't open, since FLUF won't create a listing with no photo. When your import finishes you'll be told how many rows were skipped, why, and which row numbers in your file, so you can fix just those and upload them again.
2. Google Sheets Import
Import directly from a public Google Sheets URL - no file download needed!
- Open your Google Sheet
- Click Share → Anyone with the link → Viewer
- Copy the sheet URL
- Paste in the Google Sheets input field
- Click Import
Note: The sheet must be publicly viewable. Private sheets are not supported.
3. ZIP of Images (matched to your spreadsheet)
Already uploaded a CSV/Excel/Sheet? Add a ZIP of photos and FLUF attaches them to the matching rows.
Folder Structure:
products.zip
├── SKU-001/
│ ├── front.jpg
│ ├── back.jpg
│ └── detail.jpg
├── SKU-002/
│ ├── img1.png
│ └── img2.png
└── "Blue Vintage Jacket"/
├── photo1.jpg
└── photo2.jpg
How to Use:
- Upload your CSV / Excel / Sheet first
- In the mapping interface, click Upload ZIP
- Choose how to match folders:
- By SKU: Folder names match SKU values in your spreadsheet
- By Title: Folder names match product titles
- Images are automatically attached to matching products
You don't need an images column for this. If your photos come from the ZIP, the spreadsheet only needs a SKU (or title) to match folders against. Leave the images column out entirely — FLUF uses the ZIP photos.
4. All-in-One ZIP (spreadsheet + photos in one file)
The simplest option for sending one bundle: put your CSV or Excel file in the root of the ZIP, alongside folders of images named by SKU (or title). Drop the single ZIP onto the Create page and FLUF reads the spreadsheet and attaches the matching photos in one step — this is what the video above demonstrates.
Folder Structure:
my-import.zip
├── inventory.xlsx ← (or inventory.csv) in the ZIP root
├── SKU-001/
│ ├── front.jpg
│ └── back.jpg
└── SKU-002/
├── img1.png
└── img2.png
How to Use:
- Drag the ZIP onto the Create Listings page (or click to browse)
- FLUF detects the spreadsheet inside and shows the column-mapping screen
- Review the mapping (SKU is matched to the image folders automatically)
- Click Process — listings are built with their photos attached
5. Images-Only ZIP (No spreadsheet required)
Don't have a spreadsheet? Just organize your product photos into folders and let AI do the rest.
Folder Structure:
my-products.zip
├── Nike Air Max 90/
│ ├── front.jpg
│ ├── back.jpg
│ └── sole.jpg
├── Vintage Levi's 501/
│ ├── photo1.png
│ └── photo2.png
└── Adidas Hoodie/
├── img1.jpg
├── img2.jpg
└── img3.jpg
How to Use:
- Drag your ZIP onto the Create Listings page (or click to browse)
- In the modal, select Images only (no CSV)
- Review the mapping interface — each folder becomes one product row
- Click Process — AI generates titles, prices, descriptions from your photos
Notes:
- Each folder = one product listing
- Folder names are used as initial title hints for AI
- Root-level images (not in any folder) are skipped
- Empty folders are ignored
- Maximum 5,000 folders per ZIP
- Nested subfolders group images under their immediate parent folder
Spreadsheet Format Requirements (CSV / Excel)
- Headers: First row must be column headers
- CSV encoding: UTF-8 (BOM-free preferred); Excel files don't need any encoding care
- CSV delimiter: Comma-separated
- Max Rows: 5,000 rows per file. A CSV longer than that is trimmed to the first 5,000 rows, so split bigger files into batches.
- Excel filters: hidden/filtered-out rows are still part of the file — FLUF asks whether to import just the visible rows or all of them
The only columns FLUF truly needs:
| Column | Description | Example |
|---|---|---|
| title | Product title | Blue Vintage Jacket |
| price | Numeric price (no currency symbol) | 29.99 |
Photos are not a required column. Provide images either as an images column of URLs or via a ZIP matched by SKU/title — you never need both. And if AI is enabled, even a missing title or price will be generated for you; the import won't be blocked just because a field is empty.
Optional But Recommended:
sku- Your product code (and what ZIP folders match against)images- Image URLs (pipe/comma/semicolon separated) — only if you're not using a ZIPdescription- Product descriptionbrand- Brand namecategory- Product categorycondition- new, like-new, good, fair, poorsize- Size informationcolor/colours- Color(s)department- womens, mens, kids, unisexmaterial- Fabric/material typequantity- Inventory count (default: 1)
Image URL Support
If you use an images column instead of a ZIP, FLUF automatically downloads images from the URLs. Supported sources:
- Depop - Full support for Depop CDN URLs
- eBay - eBay image hosting URLs
- Vinted - Vinted image URLs
- Any public URL - Imgur, Cloudinary, AWS S3, etc.
Multiple Images: Separate with pipe |, comma ,, or semicolon ;:
https://example.com/img1.jpg|https://example.com/img2.jpg|https://example.com/img3.jpg
Automatic Retry: Failed downloads are automatically retried up to 3 times with increasing delays.
AI Fix CSV Mode
Having issues with your CSV? Let AI fix it automatically!
What It Fixes:
- Encoding issues - Windows-1252, ISO-8859-1 → UTF-8
- Wrong delimiters - Semicolons, tabs → commas
- Unquoted fields - Fields containing commas
- Missing headers - Adds generic headers
- Merged cells - Fixes Excel export issues
- Inconsistent formatting - Standardizes data
How to Use:
- Upload your problematic CSV
- If issues are detected, click Fix with AI
- Review the suggested fixes
- Download the corrected CSV
Tip: Uploading the file as Excel (.xlsx) sidesteps most of these problems (encoding, delimiters, quoting) automatically.
Step-by-Step Import
1. Upload Your File
- Go to Listings → Create
- Drag & drop your CSV / Excel file (or ZIP), or click to browse
- First 10 rows are shown as a preview
2. Map Columns
- FLUF AI suggests column mappings automatically
- Review and adjust as needed
- Use — to skip a field (AI will generate it)
- Multi-value fields (images, colors) support multiple column selection
- Any extra columns you don't map can be kept as your own custom fields, visible on each product
- Map a column to Pricing Strategy (ID) to auto-enrol items into a Smart Pricing strategy — put the strategy's ID (shown on each strategy in Smart Pricing, e.g.
steady-markdown) in that column. The item joins the strategy automatically when you crosslist it. A column named "Pricing Strategy" is detected for you.
Pro Tip: Channel-specific columns use prefixes like depop_description, ebay_title.
3. Add Images via ZIP (Optional)
- Click Upload ZIP in the mapping interface
- Choose matching method (SKU or Title)
- Images are attached to matching rows
- (Or skip this step if you used an all-in-one ZIP or an
imagescolumn)
4. Configure Settings
- Email Notification: Get notified when import completes (default: on)
- AI Processing: Toggle to disable AI generation
- Per-Marketplace Descriptions: Use different descriptions per channel
5. Start Processing
- Click Process CSV
- A spinner shows while listings are being built
- For large imports, processing continues in the background — you can navigate away
- Check the results table for status
- Imported items are created live and ready to crosslist — no separate "publish" step needed
Email Notifications
For large imports (100+ items), you'll receive an email when processing completes with:
- Total items created
- Success/error counts
- Link to review your listings
Toggle this in Settings (on by default).
Undo Last Import
Made a mistake? You can undo your last import within 24 hours.
- Look for the Undo Last Import button in the header
- Click to see how many products will be affected
- Confirm to move products to trash
- Products can be recovered from WooCommerce trash for 30 days
Share Your Progress
Celebrate your bulk import! Share your progress with a shareable link.
- After processing, click Share Progress
- See your stats: items created, time saved
- Copy the shareable link or share directly to X (Twitter)
Best Practices
- Test first: Try with 10-20 rows before full import
- Consistent formatting: Use the same format throughout
- Clean data: Remove special characters, fix encoding issues
- Backup: Keep a copy of your original spreadsheet
- Use SKUs: Helps avoid duplicates, lets a ZIP match photos, and enables future updates
Processing Time
| Products | Estimated Time |
|---|---|
| 100 | 5-10 minutes |
| 500 | 30-45 minutes |
| 1,000 | 1-2 hours |
| 5,000 | 4-6 hours |
Monitoring Progress
- Results Table: Shows status of each row (pending, success, error)
- Row Count Badge: See total items being processed
- Error Details: Click on errors to see specific issues
- Email: Receive notification when complete
Common Issues
| Issue | Solution |
|---|---|
| Listings look "blank" right after upload | That's usually the preview table, not your real products — process the import, then check your Listings |
| Photos didn't attach | Folder names must exactly match the SKU/title column; check for extra spaces. You don't need an images column when using a ZIP |
| Excel file "did nothing" | Make sure your data is on the first sheet/tab with headers in row 1 |
| Encoding errors (CSV) | Re-save as UTF-8, upload as .xlsx instead, or use AI Fix |
| Image URLs 404 | Verify URLs are public and accessible |
| Category mismatches | Use FLUF category names exactly |
| Price formatting | Use plain numbers only (19.99, not $19.99) |
| ZIP folders not matching | Verify folder names exactly match SKU/title values |
Troubleshooting
File won't upload:
- Check file size (max 10MB)
- For CSV, ensure UTF-8 encoding (or upload as .xlsx)
- Try the AI Fix feature
Images not downloading (URL column):
- Verify URLs are publicly accessible
- Check for authentication requirements
- Try opening URLs in an incognito browser window
Google Sheets import fails:
- Ensure sheet is set to "Anyone with the link can view"
- Check the URL format is correct
- Try exporting as CSV/Excel instead
ZIP images not matching:
- Folder names must exactly match SKU or title values
- Check for extra spaces or special characters
- Try the title matching option if SKU isn't working