DEV Community

Hanako H.
Hanako H.

Posted on

How to A/B Test AI-Written Cold Emails and Improve Your Reply Rate

The fastest way to get value from AI for cold emails is not to ask for one sample and hit send. Ask for two drafts built on different angles, send each to half your list, and use whichever gets more replies as the base for the next round. Once an AI draft stops being a finished product and becomes something to compare, the whole workflow changes.

Plenty of freelancers and small agencies write their own outreach. A common habit is to search for "sales email template," swap in the recipient's name and send. A more reliable routine is to have AI produce two versions, split the list in half, and keep the one that earns replies. This article walks through that improvement loop in a form a single person can actually run.

Why AI sample emails sent as-is rarely get replies

Ask a generative AI for "a sample sales email" and a polished draft comes back in seconds. The trouble is that it has been averaged out so it won't offend anyone it's sent to. It is tidy but has nothing aimed at a specific reader, so to the recipient it looks like every other pitch in the inbox. Anyone who receives cold outreach knows the feeling: a templated message gets spotted within the first line or two, and that is usually where reading stops.

The second problem is that what lands varies by reader. Some people engage when you name their problem; others ignore anything without hard numbers. There is no way to know which works before sending. That is why sending two drafts with different hypotheses and learning from the replies beats polishing a single "good" template. The real strength of AI here is that it can produce both drafts in minutes.

How to prompt for two drafts

The trick is to ask for "two emails built on different hypotheses," not "a good email." A prompt along these lines works well:

You write B2B sales emails.
Write two versions of a cold email for the product and recipient below.
- Version A: open with a problem common in the recipient's industry
- Version B: open with our track record and concrete results
- Give each version its own subject line
- Keep the body under about 120 words, with the purpose clear in the first two lines
Product: (describe your service)
Recipient: (industry, company size, likely role)
Enter fullscreen mode Exit fullscreen mode

The key point is to limit the difference between A and B to one thing. If the subject line, opening and offer all differ, a gap in reply rates tells you nothing about which change mattered. Test one variable per round: if you're testing subject lines, keep the body identical; if you're testing openings, keep the subject the same.

One more rule worth adopting: never send the generated text untouched. Add one sentence, researched by hand, that references the recipient's business or a recent announcement. Put that same sentence in both A and B so the test stays clean. That handwritten line is what removes the template feel.

The minimum setup for splitting and tracking

Splitting can be as simple as alternating down your list: A, B, A, B. That evens out most of the skew in industry and company size. For tracking, a spreadsheet with three columns is enough: send date, version, and whether a reply came in. A dedicated email platform only becomes worth it once your list runs into the hundreds.

Beyond the split, keep sending conditions equal. If A goes out Monday morning and B on Friday evening, you can't tell whether the wording or the timing made the difference. Sending both versions on the same day in the same time window is part of keeping the test to one variable.

Here is a quick way to decide what to test:

Variable Version A example Version B example Metric to watch
Subject line A subject that asks about a problem A subject with a results figure Reply rate (assuming opens can't be tracked)
Opening Reference to the recipient's business Self-introduction and pitch Reply rate and tone of replies
Size of the ask "A quick 15-minute chat first" "I'll bring a concrete improvement plan" Reply rate and meetings booked
Length Short, around 120 words Around 250 words with background Reply rate

To be honest about the limits: at the scale of a personal prospect list, you can't reach statistically rigorous conclusions. Suppose, for example, you send 20 of each and get three replies to A and none to B. Chance is still a possible explanation. But it is enough to decide "drop B and test the next variable on top of A." A personal A/B test isn't about proving significance; it's about gathering evidence to pick the next hypothesis. Seen that way, the loop keeps moving even with small numbers. Repeat "build on the winner, test the next variable," and over time you end up with a format that fits your offer and your audience.

Which tools support the loop

The loop needs surprisingly few tools:

  • Drafting: The ChatGPT or Claude chat interface is enough. Each model has its own writing tendencies, so sending the same prompt to a second model is an easy way to widen the range of drafts.
  • Sending and tracking: Your normal email client plus a spreadsheet with the three columns above.
  • Comparing drafts from several models side by side: A desktop workspace that lets you bring your own API keys and switch models in one window is another option. osFoundry is one such app (free download), and since it can also run local models in the same environment, it works for drafts containing client names you'd rather not send to an external server.

More important than any tool is keeping the record going. As emails that got replies and emails that didn't pile up, your instructions to the AI get more specific. Once you can say "in the style of the opening that got a reply last time" instead of "open with a problem," you no longer need to hunt for templates.

FAQ

Which AI tool is best for writing cold emails?

For generating drafts, the major chat AIs are close in quality. What actually moves results is how you design the two hypotheses and the effort of adding a recipient-specific sentence yourself. Rather than spending time on tool selection, start splitting sends with whatever you already have.

How many emails do I need before trusting A/B results?

Statistical certainty takes hundreds of sends, which isn't realistic for most personal lists. With 20 to 30 per version, a clear gap such as one version getting zero replies is enough to move on to the next hypothesis. Accuracy comes from running the loop repeatedly, not from any single test.

Can recipients tell an email was written by AI?

Sending generated text untouched tends to feel templated because of its run of average phrasing. Adding one sentence of your own about the recipient's business or recent news changes the impression considerably. Include that sentence in both versions and the test design stays intact.

Top comments (0)