How do I A/B test CTAs?
Still have a question, spotted an error, or have a better explanation or a source we should cite?
Your CTA is the moment a reader decides whether to act or scroll on. That one button can make or break your click rate, yet most senders never test it. Here's how to do it properly.
Test one thing at a time
This is the cardinal rule of any A/B test. If you change the button text AND the color in the same test, you'll never know which change moved the needle. Pick one variable per send. Common things worth testing are button text ("Shop Now" vs "See the Collection"), button color (brand color vs high-contrast), button size, placement (above the body copy vs below it), and whether you have one CTA or two.
Whatever you're testing, keep everything else identical. Same subject line, same preheader, same body copy, same landing page. The only thing different is the element you're testing.
How big does your list need to be?
This is the part most guides skip. If you send version A to 200 people and version B to 200 people and see a 1% difference in clicks, that result means almost nothing. You don't have enough data to trust it.
A rough rule of thumb: aim for at least 1,000 recipients per variant to get results you can act on. If your list is smaller than that, don't abandon A/B testing entirely. Just treat the results as directional signals rather than hard conclusions, and repeat the test a few sends in a row to see if the pattern holds.
Tools like Mailchimp, Klaviyo, and Brevo have built-in A/B testing that calculates statistical significance for you. If yours doesn't, there are free significance calculators online that take about 30 seconds to use.
How long should you run the test?
Don't call a winner after two hours. Most email opens happen in the first 24-48 hours, but click behavior can trail behind opens by a day or more. A good default is to wait at least 48 hours before declaring a winner, and 72 hours if your audience tends to read on a delay (think B2B subscribers who batch-process email on certain days).
But if your ESP auto-picks a winner and sends to the remainder of your list, set the decision window to at least 24 hours. Letting it run for 4 hours and sending to 80% of your list based on that data is a common mistake that produces unreliable results.
What to measure
Click-through rate (CTR) is your primary metric for CTA tests. That's what a CTA is built to drive. But don't stop there. A button that gets more clicks but sends people to a page they abandon immediately isn't actually winning. Check your conversion rate downstream too, whether that's a purchase, a signup, or whatever action the email was built around.
What to do with the results
When one version wins clearly, adopt it as your new default. Then test the next variable. CTA optimization is cumulative. A 15% improvement in clicks from button text, plus a 10% improvement from placement, adds up fast across a year of campaigns.
Still if the test is basically a tie (within 1-2% and not statistically significant), that's useful data too. It means that variable probably doesn't matter much for your audience. Move on and test something else.
One more thing worth checking: run a segment analysis once you have a few tests under your belt. Sometimes different CTAs resonate with different parts of your audience, and what wins overall might not be what wins for your most engaged subscribers.
If you want to stress-test your subject lines while you're at it, our free subject line tester is worth a look too.
Contributors
Who worked on this answer
Every name links to their profile. Every company links to their site. Real people, real accountability.