GoDrinks is a premium drinks-delivery brand built for Bali's villa-and-tourist market — wine, beer and spirits at your door in about an hour, no resort markup. The demand was real and the catalogue was strong. The problem was that there was no system behind the advertising.
The account was run by the calendar, not the data. The same handful of creatives cycled round again and again — business as usual — and when one fatigued, there was no instinct for what to try next, so it was back to square one. As the market matured, that wasn't enough: growth had to come from new customers, and winning them took a creative engine, not a recycled banner. This page is the rebuild.
Meet GoDrinks.
GoDrinks serves Bali's villa-and-tourist market — expat and traveller buyers who want wine, beer and spirits delivered fast, without the resort markup. There was a loyal repeat base and genuine demand. But as the market matured, repeat orders could only stretch so far; the next stage of growth had to come from new customers — the hardest thing for creative to win, and exactly where calendar-led, repeat-the-banner advertising falls apart.
The problem wasn't a bad ad. It was the absence of a system.
Even when GoDrinks found a winning ad, the win was temporary. Every creative fatigues — that's physics, not a mistake — and without a way to reproduce the next one, fatigue sent them straight back to zero, again and again. Underneath that were three quieter traps.
- The calendar picked the creative, not the data. Testing followed the campaign calendar — the next holiday, the next seasonal push — instead of what the numbers were asking for. The account was scheduling, not learning.
- Business as usual meant the same ads, again. A recycled handful of concepts ran on loop. Nobody could say what to test next, so the answer was always “run them again” — and each pass fatigued a little faster.
- So the budget wouldn't scale. Every time spend went up, the recycled creative buckled and efficiency fell away, so budget got pulled back. The ceiling was never the budget. You can't pour money into creative you can't reproduce.
A winning ad isn't one good idea. It's nine things agreeing at once — and they were changing the date on the banner.The reframe behind the rebuild
A winner isn't a great image — it's the rare moment when the format, the hook, the audience, the pain point, the value proposition, the visual, the persona call-out, the risk reversal and the offer all line up at once. Get eight right and the ninth wrong, and it misfires. GoDrinks was changing one thing — the seasonal banner — and hoping the other eight sorted themselves out. Make those variables visible and testable, and a winner stops being something you stumble onto and becomes something you can engineer, then re-engineer when it tires.
The principles we built the engine on.
- Data decides, not the date. Testing now follows what the data is signalling — which angle is tiring, which is climbing, what to try next — not which month it is.
- Treat a winner as an alignment of variables. Instead of swapping the whole ad and guessing, we isolate the variables — so we can read which one is carrying the win and which one fatigued, and replace just that part.
- Capacity is the engine. We roughly tripled creative output to 40+ ads a month, so there's always a fresh slate of tests live and a proven angle ready before the current winner fades.
- Speak the buyer's language. A library of proven angles, laddered by awareness and written in the buyer's own voice — same bottle, a fraction of restaurant price, at the door. When one tires, we pull the next instead of starting from a blank page.
What we test — across every lever that makes or breaks a creative.
We don't guess which lever makes a creative win. The engine runs dozens of experiments a month across every variable that can make or break an ad. On angle, we test persona call-outs, pain-point framing, us-vs-them, value proposition, education and how-to, and risk reversal. On offer, flash sales, bundles, persona-specific offers, free delivery and best-value framing. On format, catalogue versus single-product, static versus video, testimonial and UGC, and hook variants. On audience, cold versus warm, awareness stage, local-voice personas, and new versus returning. The data, not a hunch, decides what to scale.
Before — the calendar on loop.
The old account leaned on a recycled set of seasonal banners — loud on the discount, quiet on the service. The kind of creative the rebuild replaced.

Tourist Tip
No message, no hook

Big-bottle hero static
The hero image ate the frame — no space left for what, how, or when.

No data-led test queue
Nothing told the account what to test next — so a fatigued winner meant starting from zero.
After — the engine's proven angles.
A library of data-chosen creatives, each doing a defined job, with the next test always queued behind it.

Bundle · bigger savings
The most efficient acquisition concept — value made obvious, not just discounted.

“How to taste wine”
An educational angle that reframes the click — it earns the prospect before it sells.

Dynamic product · new wines
Fresh-product framing that keeps the catalogue feeling alive to returning buyers.
Influencer testimonial
Credible proof that moves the returning buyer.
UGC Customers
Written in the buyer's own voice — same bottle, a fraction of the price, at the villa.
The next variant
One of the cycle's data-chosen tests — the next winner before the current one fades.
Every creative and offer earned its place — or got cut.
The test is the strategy. We ran creatives and offers as experiments and let the data decide which scaled, which evolved, and which died — because knowing what to stop is half the system.
| Experiment | Verdict | What the data said |
|---|---|---|
| Bundle value staticWinner | >29× ROAS | The most efficient acquisition concept in the account — value made obvious, not just discounted. The standout the engine now builds variants around. |
| Education & testimonial angleScaled | Out-returned offer-led video | “How to taste wine” and the influencer testimonial earned the prospect before selling. Graduated into the always-on set. |
| Landing-page routingEvolved | Multiplied the homepage's conversion | Traffic used to land on a homepage that barely converted. We routed winning creative to the flash-sale and box-wine pages instead — several times the homepage's rate — so the click lands where it closes. |
| Discount-led staticKilled | A fraction of the winners' return | Discount-led prospecting collapsed on cold audiences — it bought a price, not a customer. Cut it, and folded the value story into the bundle creative that wins. |
Killing the discount static mattered as much as scaling the bundle. The whole point of a data-led engine is the licence to stop — you can't free budget for what's working until you cut what isn't.
What changed — business as usual vs the engine.
| The job | Business as usual | What we built instead |
|---|---|---|
| What to test | Whatever the campaign calendar said next — holiday, season, weekend deal | Whatever the data signals — the angle tiring, the angle climbing, the next variable to isolate |
| How a winner is found | Swap the banner and hope — one variable changed, eight left to luck | Nine variables made visible and testable — engineer the alignment, then re-engineer it when it tires |
| How much we ship | A recycled handful on loop, fatiguing faster each pass | 3× the output — 40+ ads a month, with the next test always queued |
| Why it scales | Budget pulled back every time recycled creative buckled under spend | A reliable supply of proven angles — budget finally has a floor to stand on |
Results — the creative engine.
Six numbers that show the system carrying its weight. ROAS is shown as a multiple; everything else is relative.
Honest read: cold acquisition is the longer game — its returns mature over more cycles than warm retargeting, and we're deliberately investing into it because that's where GoDrinks' next thousand customers come from. We're also closing an attribution gap (UTM persistence across landing-page transitions) so the winners scale on clean signal, not overstated “direct.” The engine is built and running; the compounding is underway.
What the rebuild taught us about creative at scale.
- A winner is an alignment, not an ad. — Nine variables have to agree at once. Make them visible and testable, and a winner becomes repeatable instead of lucky.
- Let the data choose the test, not the date. — A calendar schedules; it doesn't learn. The moment the data picks the next test, the account starts compounding instead of resetting.
- Capacity is what beats fatigue. — Every winner dies. Triple the output and keep the next proven angle queued, and fatigue stops being a cliff and becomes a conveyor belt.
- You can't scale what you can't reproduce. — Budget follows confidence. A reliable supply of fresh winners is what finally lets spend climb without efficiency falling away.
GoDrinks went from an account the calendar ran to a creative engine the data runs — one that produces winners on purpose and replaces them before they fade.
Three times the creative output, the next test always queued, and winners chosen by signal instead of the season — the system that finally gives budget a reason to scale. The next job is cadence: keeping the engine fed and the winners fresh.
Book a strategy call →