Outcome

What I moved.

20–23%
of company revenue generated by the newsletter channel
+400%
newsletter signups after the A/B test (France)
14
countries the newsletter machine ran across
17
B2B white-labels supported on the same front end

The revenue share was reached over roughly two years of compounding list growth.

Global Savings Group · Rocket Internet · Munich · 2012–2015

CupoNation

The newsletter that became a fifth of the revenue

I built the newsletter on a hypothesis about our users. The A/B test destroyed it in a fortnight. I shipped the version I had argued against, and it grew into 20–23% of company revenue.

CupoNation preview
Role
Frontend Software Engineer — owned the UI of all company products
Timeline
2012 – 2015 · 3 years
Scope
14 country roll-outs · 17 B2B white-labels

The stakes

Every visitor was rented. The list was the only thing we owned.

A coupon site makes money on affiliate commission: a user clicks through, buys at the retailer, and a tracking cookie proves the sale came from us. No purchase, no revenue.

Which makes the traffic itself the whole business — and almost none of it was ours. Rankings move, paid traffic gets more expensive, a competitor outbids you, an algorithm update lands. Every visit had to be won again the next morning.

An email list is the one channel nobody can reprice or de-rank. Send it, and a share of those people come back and convert. That is why the newsletter was worth two years of compounding work rather than a growth sprint.

The question was never whether to have a newsletter. It was how many people we could get onto it, and how much I was willing to annoy them to do it.

01 — The problems

One assumption, and the data that killed it.

Problem 01

I was wrong about my own users

My hypothesis was elegant, humane, and completely false.

I argued for the polite version. Put the signup inline in the sidebar, let people find it, and you self-select for genuinely interested users — a smaller list, but a better one that converts harder later. The intrusive modal, I said, buys volume from people who never wanted it.

It is a reasonable argument. It is the argument most designers make. I ran it as a proper A/B test across markets because I wanted the data to back me up.

It did the opposite. The blocking modal beat the inline widget by 400% in France, and the pattern repeated everywhere we ran it. The polite variant was pulling a trickle; the modal was pulling dozens a day in the same markets, on the same traffic, with the same creative.

The uncomfortable part was the downstream data. The "low-quality" subscribers the modal brought in did not behave like tourists. They opened, they clicked, they bought. My filter-for-intent theory had no support at all — the inline widget was not filtering for interest, it was filtering for whoever happened to look at the right corner of the page.

The test that changed my mind

A

Inline, in the sidebar

My hypothesis

Newsletter variant A — Inline, in the sidebar

Polite. Waits to be noticed. Only genuinely interested users sign up.

Single digits per day

B

Modal, over the page

The control

Newsletter variant B — Modal, over the page

Blocks the page. Interrupts the task. The thing I argued against.

+400% signups (France)

The finding: the polite variant did not filter for intent. It filtered for attention — and almost nobody was paying any.

Problem 02

One newsletter, fourteen countries

A win in one market is a demo. The value was in making it repeatable.

Proving the modal worked in France took two weeks. Turning that into revenue took closer to two years.

Fourteen countries meant fourteen sets of retailers, currencies, languages, and seasonal calendars — and a front end that also had to serve 17 B2B white-labels running on the same codebase under other brands. Anything I built for the newsletter had to work everywhere without becoming fourteen bespoke implementations.

That is where the actual engineering was: one templated signup and send system, localised per market, with the A/B mechanics baked in so every new country could re-run the test rather than inherit an assumption. List growth compounds — but only if the machine producing it is the same machine in every market.

02 — The problems I solved

Every call, and what it cost.

No decision is free. These are the four that moved the numbers, with the price attached.

01

Shipped the variant I had argued against

Decided
Killed my own inline-widget hypothesis the day the numbers came in and rolled the blocking modal out across every market.
Because
The test was unambiguous and it repeated. Defending my hypothesis would have cost the company the largest owned channel it was ever going to have.
Traded away
A user experience I did not believe in, and being publicly wrong about the thing I had lobbied for.

+400% signups in France, repeated across markets

02

Delayed the modal and softened the close button

Decided
Held the popup back until the user had engaged with the page, and made dismissing it less immediate than accepting it.
Because
Firing on load caught people before they knew what the site was. Delay raised conversion — and so, measurably, did making the exit harder.
Traded away
This is a dark pattern and I will not pretend otherwise. We bought subscribers with friction we had deliberately designed. It worked, it was standard practice in 2013, and it is not a trade I would make the same way now.

further lift on top of the modal, compounding across 14 markets

03

Built the test into the roll-out, not around it

Decided
Made the signup and send system templated and localisable, with A/B mechanics built in so each new market could re-run the experiment instead of inheriting the German answer.
Because
Fourteen countries and 17 white-labels on one front end. Bespoke-per-market would have collapsed under its own maintenance within a year.
Traded away
A slower first market — the templated version took materially longer to ship than a one-off would have.

one machine across 14 countries; ~20–23% of revenue at maturity

04

Closed the loop from landing page to affiliate cookie

Decided
Owned the whole journey rather than just the signup — validating that tracking cookies actually fired at coupon checkout so commission was captured.
Because
An email that produces a click nobody gets paid for is a cost centre. The channel is only worth anything if attribution survives to the retailer.
Traded away
Time on plumbing and QA nobody sees, instead of visible front-end work.

newsletter traffic that converted into attributed, billable revenue

03 — How I did it

The loop, every time.

  1. 1

    Hypothesis

    Written down before the test, so being wrong would be undeniable.

  2. 2

    A/B test

    Live traffic, one market first, same creative in both variants.

  3. 3

    Check downstream

    Not just signups — opens, clicks and purchases from each cohort.

  4. 4

    Templatise

    Rebuild the winner as one localisable system, not a one-off.

  5. 5

    Roll out

    Market by market, re-running the test rather than assuming.

  6. 6

    Verify attribution

    Confirm the affiliate cookie fires so the revenue is actually booked.

A look inside

04 — What I learned

Five things I took with me.

  1. 01

    My taste is a hypothesis, not evidence.

    The polite variant felt right to me and to every designer in the room. It was worth a fraction of the thing none of us liked.

  2. 02

    Check the cohort, not just the conversion.

    The argument against volume was that the users would be worthless. The only way to kill that argument was to follow them all the way to purchase — so I did.

  3. 03

    A result in one market is not a result.

    France proved the mechanic. Revenue came from turning it into one system that fourteen countries could run without me.

  4. 04

    Owned channels are worth slow work.

    Rented traffic has to be re-won every morning. A list compounds — which is why two years of unglamorous list-building beat any single growth campaign.

  5. 05

    Winning the test does not settle whether you should have run it.

    The friction we designed into the close button converted. It also made the product slightly worse for everyone who did not want it, and that cost never showed up in my dashboard.

Tech & tools

JavaScriptHTML/CSSA/B testingGoogle AnalyticsHotjar / heatmapsAffiliate trackingEmail templating

The most useful three years of my career, because they were the years the data told me I was wrong and I had to ship the other thing anyway.