Supplier copy is generic. Blank description fields hurt both SEO and conversion. And hiring a copywriter to write unique descriptions for hundreds or thousands of SKUs is expensive — often prohibitively so for small catalogues with thin margins.
AI batch processing solves this: you prepare your product data once, write your brand voice guidelines once, and generate a unique description for every SKU in a single job. This guide covers how to do it from start to finish.
Step 1: Decide what columns your descriptions need
The output quality of an AI-generated product description is directly proportional to the quality of the input. Before you build your CSV, think about what a copywriter would need to write a good description for each product.
At minimum, you need:
| product_name | category | key_attributes | brand_voice_notes |
|---|---|---|---|
| Vitamin C Brightening Serum | Skincare / Serums | 15% L-ascorbic acid, hyaluronic acid, fragrance-free, suitable for sensitive skin | Clean, clinical, benefit-led. Avoid claims like "miracle" or "revolutionary". |
| Repair & Restore Hair Mask | Haircare / Treatments | Argan oil, keratin, damaged/colour-treated hair, 10-minute treatment | Warm, reassuring. Speak to the reader directly. Focus on the after. |
Additional columns that improve output significantly:
- target_customer — who this product is for (e.g. "oily skin, 25–40"). Helps the model address the right reader.
- key_benefit — the single most important outcome the product delivers. Stops the model listing features instead of benefits.
- word_count_target — if you want different lengths for different product types (100 words for accessories, 200 for hero products), include it as a column.
Step 2: Export from your platform
Most e-commerce platforms have a product export function:
- Shopify: Products → Export → All products as CSV. The export includes all metafields if you've populated them.
- WooCommerce: Products → Export. Includes all custom attributes as columns.
- Magento: System → Data Transfer → Export, select Products entity.
- Spreadsheet catalogue: If you manage products in a spreadsheet, your existing sheet is your starting point — just add or tidy up the columns you need.
Clean the export before uploading: remove any rows without product names, fill in blank category cells, and make sure key_attributes has something in every row — even a short note is better than nothing.
Step 3: Write your batch instructions
Sample batch instructions:
You are a product copywriter for a UK beauty brand. Write a product description for the item below.
Output exactly this format — no extra text:
DESCRIPTION: [product description]
Rules:
— 160–200 words
— Lead with the primary benefit, not a feature list
— Address the reader directly ("your skin", "your hair") where natural
— Use the brand_voice_notes to set tone — follow them precisely
— Mention the key_attributes naturally within the copy, not as a bulleted list
— End with one sentence that reinforces why this product belongs in their routine
— British English spelling throughout
— No hyperbolic claims ("revolutionary", "miracle", "best in the world")
— No asterisks, markdown, or formatting — plain prose only
The most important rules to include are format rules (word count, no markdown, plain prose) and voice rules (the tone, what not to say). The model will follow both precisely if you state them clearly.
Step 4: Handle variants carefully
If your catalogue has product variants (sizes, colours, formulations), you have two options:
- One row per parent product — generate one description per product, then use it across all variants. Simpler and cheaper. Fine if variants don't have meaningfully different features.
- One row per variant — include a variant_specific_notes column (e.g. "Shade: Deep Bronze — warmer undertones, medium-to-full coverage"). The model will incorporate the variant detail. Use this when variants have genuinely different selling points.
For most catalogues, one row per parent product is the right call. Variants that differ only in size or colour rarely need different copy.
Step 5: Choose your model
For product descriptions, Gemini 2.5 Pro generally produces better output than Flash — especially for products where nuance matters (premium positioning, complex ingredient stories, technical specifications). The descriptions are longer and more varied, which reduces the chance of formulaic output across similar products.
For a large catalogue where cost is a concern, test both models on the same 20-row sample. If Flash output is good enough for your needs, use it for the full run — the cost difference at 1,000+ rows is significant.
Step 6: QA and import
Review your output before importing:
- Check a random sample of 20–30 descriptions for tone consistency and brand voice compliance.
- Look for any descriptions that have fallen back to feature-listing rather than benefit-led copy — usually happens when key_attributes is too sparse.
- Filter for descriptions that are significantly shorter or longer than your target word count.
Import options depend on your platform — Shopify and WooCommerce both support CSV import of descriptions. For custom platforms, the output CSV is structured and ready to map to your database schema.