Yesterday I soft launched launched ColdCopy, a cold email generator. But I kept getting stuck on one question: "Should this email be more direct or more friendly?"
That's when I realized - why not generate both and let the user decide?
The Problem
Cold emails are tricky. The same message can work completely differently depending on tone:
Too formal = sounds robotic
Too casual = unprofessional
Too direct = aggressive
Instead of guessing, what if users could see all approaches side-by-side?
The Implementation
Before: One API call, one result
const response = await openai.chat.completions.create({
model: "gpt-4",
messages: [{ role: "user", content: prompt }]
});
After: Three API calls, three variations
const tones = ["Professional", "Friendly", "Direct"];
const promises = tones.map(tone =>
openai.chat.completions.create({
model: "gpt-4",
messages: [{ role: "user", content: getPromptForTone(tone, formData) }]
})
);
const results = await Promise.all(promises);
The UI Challenge
Displaying three emails clearly without overwhelming users:
Responsive grid layout (3 columns on desktop, stacked on mobile)
Clear labels for each tone
Individual copy buttons for each version
Same glassmorphism styling as the main form
Early Results
Users are actually using it! People seem to like comparing options rather than wondering "what if I tried a different approach?"
The conversion rate stayed strong (27% of visitors actually try the tool), which suggests the extra complexity isn't scaring people away.
What I Learned
Prompt engineering for tone is harder than expected
Users want options, not just "one size fits all"
Sometimes the obvious feature is the right feature
Check it out: coldcopy.xyz
What do you think - is A/B testing for AI-generated content useful, or just feature bloat?
Top comments (2)
Giving users real choice over tone is huge for trust - makes it feel less like a black box. Are you tracking which style wins per use case, or planning to surface data to help users pick smarter?
Great point about the black box issue! That's exactly why I added it - people want to see their options rather than trust one AI decision. Not tracking wins yet but that's definitely on the roadmap. Would love to hear if you try it - curious which tone you'd naturally gravitate toward