DEV Community

J Now
J Now

Posted on

Building email campaigns in Klaviyo without knowing if they work

Last year I spent 45 minutes rebuilding a promotional email that our designer had templated six months prior. The template was gone, the brief was vague, and I had no way to know if the CTA contrast was readable on mobile until complaints came in after send.

That's the actual shape of the problem: blank canvas, no feedback loop, consequences arrive too late.

I built kopi to close that gap. You write a brief — something like "re-engagement campaign, lapsed 90-day subscribers, free shipping offer, two CTAs" — and it returns a complete HTML email in under 5 minutes. Not a starting point. A finished draft.

The part I care most about is what happens after generation. Every email gets a design critique scored on a 0–100 scale across 12+ criteria: layout hierarchy, mobile readability, CTA contrast, whitespace, font sizing. You see the score before you export. You know what's weak before it ships.

Here's what a typical input-output pair looks like:

Brief:

Re-engagement. Lapsed 90 days. Free shipping for 48 hours. Primary CTA to shop, secondary CTA to update preferences. Brand: outdoor gear, earthy palette.
Enter fullscreen mode Exit fullscreen mode

What kopi scores on the output:

Layout hierarchy: 91/100
Mobile readability: 88/100  
CTA contrast: 94/100
Whitespace balance: 79/100
Overall: 86/100
Enter fullscreen mode Exit fullscreen mode

The Whitespace balance flag is the one that saves you — that's the thing you wouldn't have caught until a designer reviewed it, if you had a designer reviewing it.

The public gallery at trykopi.ai/emails has 400+ emails that scored 80 or above, which is useful if you want to see what high-scoring output actually looks like across verticals before you write your first brief. It also integrates with Klaviyo for direct export, and runs as an MCP server inside Claude Code and Cursor if that's your workflow.

trykopi.ai

Top comments (0)