Mass-Produce E-Commerce Product Descriptions and Newsletters with Claude Code
For online store owners: draft product descriptions and newsletters fast with Claude Code, with prompt templates, checklists, and a script.
The weekend I bought 50 new products in one go, I genuinely regretted my own decision.
I’m good at sourcing. The problem is everything after. Writing the product page copy one item at a time, entering sizes and materials, dreaming up “ways to use it,” and then squeezing in this week’s newsletter on top. Even at 15 minutes per item, 50 items is 12.5 hours. That’s an entire Saturday and Sunday, gone.
And when I reread the descriptions I’d written at 3 a.m. the next morning, half of them were thin lines like “A carefully crafted piece made with premium materials” — the kind of sentence you could paste onto any product. It doesn’t rank in search, and it doesn’t stop a shopper mid-scroll. That was the moment I realized I was burning out on writing, not on sourcing.
If you run an online store solo or with a tiny team, you know this feeling. You have products to sell. It’s the time to write descriptions and newsletters that you never have enough of. Hand that part to generative AI, and your weekend comes back.
Key takeaways
- Drafting product descriptions and newsletters with Claude Code shrinks roughly 15 minutes per item down to 2-3 minutes.
- Never feed wholesale cost, margin, or customer personal data to the AI. The rule is: show only the product specs you’re already willing to publish.
- I’ve included a copy-paste prompt template plus a runnable script that drafts descriptions in bulk from a product list.
- AI handles the “first draft” and nothing more. A human always does the final check on price, stock, and any advertising-law wording.
- For a store that lists 10 items a day, this turns roughly 40-60 hours of monthly writing into something in the low teens.
Who this is for
I’m writing for the kind of online store owner or operator who:
- Sells dozens to hundreds of items a month on Shopify, Etsy, BigCommerce, WooCommerce, Amazon, or similar.
- Juggles product uploads, photos, descriptions, and newsletters as the owner or a team of one or two.
- Has never programmed but can handle a spreadsheet and copy-paste.
- Wants to “use AI to write” but is stuck because they don’t know what’s safe to share or how.
By contrast, a large retailer where description generation is already wired into a core system has solved the problem this article tackles — feel free to skip. If you’re nervous because you’ve never coded, read Claude Code for non-engineers first and the rest will feel much easier.
Break down the e-commerce upload flow
To find where the time goes, first break down what happens before a single product goes live. For my store, the typical flow looked like this.
| Stage | Work involved | Where writing happens |
|---|---|---|
| Intake | Inspect, measure, photograph | (no writing yet) |
| Upload | Enter specs, set category | Product name, headline |
| Describe | Write the body copy | Description, how-to, notes |
| Promote | Social and newsletter announcements | New-arrival email, social posts |
| Re-engage | Restock and sale notices | Repeat-customer email |
Look at the “where writing happens” column. From intake to re-engagement, more than half of the work time gets sucked into that column. That’s exactly where generative AI cuts in. Photography and measuring are human-only, but turning the results into words — up to the draft stage — can be handed off entirely.
Common rework and headaches
Before making things easier, let’s be clear about what’s tripping you up. The three rework traps I hear about most often are:
- The description turns out thin and pasteable onto anything, doesn’t land in search, and gets rewritten. You’re squeezing out the same phrases every time.
- The newsletter tone swings day to day. High-energy days and flat days get mixed together, and the brand impression blurs.
- You accidentally use a phrase like “lowest price anywhere” or “100% effective,” which trips advertising and labeling rules. Then you’re stuck fixing every product after the fact.
All three nearly vanish if you decide on a “template” and a “banned-words rule” before you write. And Claude Code is exactly the right partner for memorizing that template.
What to delegate to AI vs. decide yourself
Draw this line first, or things go wrong. Here’s the split that works at my store.
| Stage | Delegate to AI | A human must decide |
|---|---|---|
| Description | Draft from specs | Verify price, stock, material |
| Headline | Mass-produce 5 options | Pick the one that fits the brand |
| Newsletter | Draft subject line and body | Send timing and the send button |
| Legal wording | Flag risky phrases | Final call on advertising law |
The rule is simple: any judgment that touches “facts” or “responsibility” stays with the human. Treat the AI strictly as your “fast, high-volume drafting clerk” and you can delegate with confidence. The mindset for delegating is laid out in the Claude Code getting-started guide.
Use case 1: Draft product descriptions in bulk
This is the highest-impact one. Hand over a table of product name, category, material, size, and features, and you get back a batch of drafts that follow your description template.
Here’s a copy-paste prompt template. Replace what’s inside the <> brackets with your own product.
You are our store's product copywriter. Always follow the constraints below.
# Store tone
- No first person, plain declarative sentences, no exaggeration
- Each sentence under 25 words, body 60-90 words
# Banned wording (advertising and labeling law)
- Never use "cheapest," "No.1," "100%," "guaranteed to work," "cures"
- No unsubstantiated superlatives or absolute claims
# Input
Product name: <Brown leather bifold wallet>
Material: <Genuine leather (cowhide)>
Size: <11cm wide x 9.5cm tall>
Features: <6 card slots / coin pocket / lightweight 85g>
# Output
1. Headline (under 8 words)
2. Product description (60-90 words)
3. Three search keywords to use on this page
The key is handing over the banned wording first. Without it, the AI tries to be helpful and steps on a landmine like “industry-best quality.” Put the gatekeeper up front and the risky phrases stop sneaking in. If you want to sharpen your prompts another notch, advanced prompt engineering is a good reference.
Use case 2: Write new-arrival and repeat-customer newsletters differently
A newsletter’s wording changes based on “who you’re sending it to.” For new customers you lead with the product’s appeal; for repeat customers you bring out a “picked this for you” feeling. Have the AI write these two differently.
As a checklist, here’s the bare minimum a newsletter needs.
- Subject line is around 6-8 words and concrete enough to make people want to open it
- The first two lines say “who this is for and what the news is”
- Each email focuses on one theme, one product link (don’t cram)
- An unsubscribe link and sender identification are present (anti-spam law)
- A human gave price, stock, and coupon expiry a final check
Pass this whole checklist into the prompt and the AI returns a draft with each item filled in. After that, only a human presses send. That part we never automate.
Use case 3: Turn a one-line memo into polished copy
The scribbled note you tap out on the sourcing floor — something like “black knit, warm, stretchy, up to size M.” This use case expands it into proper copy.
| Scribbled memo | AI-polished draft (excerpt) |
|---|---|
| black knit, warm, stretchy, up to M | A brushed-fabric black knit that stretches to follow your body and curbs static. Available up to size M… |
| mug, Nordic, microwave OK | A calm Nordic palette. An everyday mug that’s microwave- and dishwasher-safe… |
No more failing to read your own scribbles and digging through memory every time you write the clean version — that double work disappears. Leave one line at the memo stage, and the evening write-up becomes almost fill-in-the-blank.
A copy-paste script you can run
For anyone who feels “pasting one item at a time is still painful,” here’s a script that reads a product list (CSV) and drafts each row’s description in one pass. It runs if you have Node.js and an Anthropic API key.
First, set up.
mkdir ec-copy && cd ec-copy
npm init -y
npm install @anthropic-ai/sdk
Put a products.csv in the same folder. The first row is the header.
name,material,size,features
Brown leather wallet,Genuine leather,11cm wide 9.5cm tall,6 cards/coin pocket/85g
Black knit,Acrylic blend,up to M,brushed/stretch/anti-static
Here’s the main file (generate.mjs). It reads the CSV, enforces the banned wording, and writes the results to drafts.md.
import Anthropic from "@anthropic-ai/sdk";
import { readFile, writeFile } from "node:fs/promises";
const client = new Anthropic();
// Read the CSV loosely (comma-separated, assumes no quoted fields)
const raw = await readFile("./products.csv", "utf8");
const [head, ...lines] = raw.trim().split(/\r?\n/);
const keys = head.split(",");
const rows = lines
.filter((l) => l.trim() !== "")
.map((l) => Object.fromEntries(l.split(",").map((v, i) => [keys[i], v])));
const rule =
"Plain declarative tone, no exaggeration, each sentence under 25 words. " +
"Never use cheapest/No.1/100%/guaranteed to work/cures.";
let out = "";
for (const r of rows) {
const res = await client.messages.create({
model: process.env.ANTHROPIC_MODEL || "claude-sonnet-4-6",
max_tokens: 700,
system: `You are our store's product copywriter. Constraints: ${rule}`,
messages: [
{
role: "user",
content:
`Write a 60-90 word description for the following product.\n` +
`Name:${r.name} Material:${r.material} Size:${r.size} Features:${r.features}`,
},
],
});
const text = res.content.find((b) => b.type === "text")?.text ?? "";
out += `## ${r.name}\n\n${text}\n\n`;
console.log(`done: ${r.name}`);
}
await writeFile("./drafts.md", out, "utf8");
console.log("-> wrote to drafts.md");
Running it is just this.
node generate.mjs
Put 10 rows in the CSV and 10 drafts line up in drafts.md. After that, a human fact-checks and pastes each one into the relevant store’s admin panel. Write your banned-wording rules into CLAUDE.md and Claude Code remembers your store tone without you re-sending it each time. The how-to is in CLAUDE.md best practices.
What changed before and after
The numbers make the gap obvious. Here’s the rough math for my store (10 items listed a day, one newsletter a week).
| Item | Before | After |
|---|---|---|
| Writing one description | ~15 min | ~2-3 min |
| Writing 10 items a day | ~2.5 hours | ~30 min |
| Weekly newsletter | ~60 min | ~15 min |
| Monthly writing time | ~50 hours | ~12 hours |
If we assume an hourly value of $20, cutting 38 hours a month frees up about $760 worth of time. Being able to redirect that freed-up time into sourcing and photography was the biggest change of all. For keeping the draft quality steady, the habits in Claude Code productivity tips carry over here too.
Privacy and security notes
Skip this and you trade a time-saver for an incident. Here’s the bare minimum.
- Never feed wholesale cost, base cost, or margin to the AI. A description doesn’t need cost data. Pass only the specs you’re willing to publish.
- Never paste a customer’s name, address, email, or purchase history. For a newsletter, tell it only the “segment name”; the personalized greeting gets merged in on the delivery system’s side.
- Put the API key in
.envand don’t push it togit. Always add.envto.gitignore. - Don’t publish output as-is — a human checks it. AI can fabricate facts. Cross-check price, stock, and material against the admin panel.
- Advertising, labeling, and anti-spam laws are ultimately the store’s responsibility. The AI’s output is a “candidate,” not a “stamp of approval.”
For an authoritative external reference, it’s worth reading the U.S. FTC’s advertising and marketing guidance once to understand where the line is on acceptable wording.
FAQ
Q. Can it read product photos? It can read features from an image, but a human does the final check on measurements and material. It can pick up the nuance of a photo, but it can’t definitively tell “genuine leather vs. faux.” Treat the admin-panel values as the source of truth for facts.
Q. Can I pour the output straight into my store platform?
This script only takes you as far as writing drafts to drafts.md. A human handles pasting in a way that fits each platform’s spec. If your store supports CSV bulk upload, add a prompt that formats the output into that layout and it gets even easier.
Q. The brand voice doesn’t come out right. Paste two or three of your best past descriptions into the prompt as “examples.” AI is better at mimicking a voice from concrete samples than from abstract instructions.
Q. Can I try it for free? The API charges usage fees, but each description runs a few cents at most. Start with 10 items, compare against the time saved, and decide from there.
Where to go next
If you run a small online store and want to “try it yourself first,” I keep free PDF learning material and example sets on the products page. You can take the prompt templates and checklists home as-is.
If you run with multiple staff and want to “standardize the store’s writing rules” or “have someone guide the rollout,” reach out from the training and consulting page. We’ll work through the CLAUDE.md design tuned to your store’s tone together.
What I confirmed when I actually tried this
After the “lost weekend over 50 items” from the opening, I tried this process on a sourcing run of the same size.
I checked three things. First, putting the banned wording at the top of the prompt actually kept “cheapest” and “No.1” almost entirely out — risky phrasing appeared in only 1 of 20 items. Second, running 10 items through the bulk CSV script lined up the drafts in drafts.md in about two minutes — a step that took 2.5 hours by hand. Third, cross-checking price and material by eye, I caught two spots where the AI had inflated “genuine leather” into “premium genuine leather,” which reconfirmed that the human check is essential.
The conclusion: AI makes drafting wildly fast, but a human keeps the gate on facts and the law. Hold that line and your weekends go back to sourcing and family. Rather than hunting for a smarter AI, decide the scope you’ll delegate first. That was what worked best.
Free PDF: Claude Code Cheatsheet
Enter your email and download the one-page Claude Code cheatsheet for commands, review habits, and safe workflows.
We handle your data with care and never send spam.
Level up your Claude Code workflow
Start with the free PDF, use Gumroad guides when you need repeatable workflows, and book consultation when rollout or revenue paths need human judgment.
About the Author
Masa
Engineer focused on practical Claude Code workflows. Runs claudecode-lab.com, a 10-language technical media site.
Related Posts
Turn Stale Obsidian Notes Into a Claude Code Brief in 10 Minutes
Obsidian notes that turn to mush when pasted? Sort them into facts, decisions, and unknowns so Claude Code can act on them right away.
Automate Your Pre-Publish Revenue Check: Stop Leaking Conversions with Claude Code
Traffic spiked but signups were zero. A dead link and a half-translated body. Here's the pre-publish funnel check I run with Claude Code.
How to Turn High-Traffic Posts That Don't Sell Into a Clear Next Step
Lots of pageviews but no sales? Build a routing table that picks one next offer per article. Includes copy-paste code and prompts.
Related Products
Claude Code Quick Reference Cheatsheet
A free one-page reference for daily Claude Code work.
Keep the essential commands, file-reference patterns, CLAUDE.md reminders, prompting habits, review cues, and debugging workflow notes next to your editor.
50 Battle-Tested Claude Code Prompt Templates
Copy, paste, ship. 50 production-ready prompts.
Use proven prompts for code review, refactoring, testing, documentation, debugging, architecture, and incident response.