The agency reported magical gains. The bank statement told a different story.
Paid traffic converting at a third of the industry floor, and an agency whose numbers didn’t reconcile. We fixed what was leaking before adding a dollar more.
0.97% → 2.73%
Site conversion, same traffic
3× → 9–14×
Return on ad spend, same budget
+79%
Sessions, year over year
A luxury skincare company founded in 1948, now sold across North America, the UK, Germany and Asia. A proprietary ingredient with a genuine origin story, and a name built over decades on live TV shopping, where the founder herself became a beloved on-air personality. By early 2025 the brand faced the challenge common to legacy DTC: a strong product and a loyal older base, but a digital operation that hadn’t kept pace.
- Industry
- DTC premium skincare
- Revenue
- ~$20M
- Founded
- 1948 · three generations of family leadership
- Engagement
- 90-day intervention
“We need more ad spend.”
“Traffic was fake. The reported return wasn’t real, and the store and the email flows were leaking the buyers already arriving.”
A diagnostic review surfaced a cascade of interconnected problems. None were catastrophic in isolation. Together they were quietly draining budget and blocking the brand from its next stage. The store was converting paid traffic at 0.97%, roughly a third of the Shopify average.
- Inflated, opaque reporting. The agency claimed 11.7× ROAS on Meta. Cross-referenced against Shopify, the numbers didn’t reconcile: one “winning” campaign had generated $918 in net sales against $600 in spend.
- Zero segmentation. 27,000–39,000 email subscribers and no demographic data. A 60-year-old loyalist and a 37-year-old first-timer got the identical newsletter, offer and message.
- A friction-filled store. ~100 SKUs with no hierarchy; 80%-off ads landing on generic pages; a popup firing on top of the promo; a $99 free-shipping threshold that surprised buyers at checkout.
- Automation switched off. Klaviyo used as a basic email sender. Welcome, cross-sell, browse-abandonment, post-purchase, VIP and win-back flows missing or disabled.
Rather than overhaul everything at once, we ran a focused 90-day intervention on the highest-leverage constraints first: fix what’s leaking before adding more water to the bucket.
- 01
Agency audit and transition
A forensic review flagged fraudulent like-purchasing suppressing organic reach and campaigns optimised for clicks instead of purchases. Ad management came in-house with structured coaching.
- 02
Klaviyo flow architecture
Rebuilt the automation strategy (welcome, indoctrination, abandoned cart and checkout, win-back moved to 90 days in the founder’s voice, cross-sell, browse abandonment, post-purchase and VIP), with a framework for ongoing subject-line testing.
- 03
Segmentation and data
Captured birth-year data through an incentive campaign so a 37-year-old prospect sees different creative than a 55-year-old loyalist. Synced Klaviyo segments to Meta for exclusions and lookalikes.
- 04
Creative diversification
Multiple hooks across multiple angles, clear naming conventions and UTM tracking, replacing a handful of untested creatives with inconsistent attribution.
- 05
Founder-led storytelling
Coached the third-generation leader on short-form storytelling. A three-generation family narrative no competitor can replicate, and cheap to produce.
- 06
Ambassador programme
An opt-in structure to activate the brand’s most passionate customers as nano-influencers through affiliate links. No upfront payment, segmented by age.
The first result wasn’t a lift. It was the truth about the numbers. The agency’s dashboard reported 11.7× on Meta; reconciled against Shopify it was closer to 1.5×, and one “winning” campaign had made $918 on $600 of spend. The brand had been setting budget, judging performance and planning growth on a figure that didn’t exist. That finding, not any single flow, is what changed the decisions.
Once the measurement was honest, the execution had something real to move against:
| Metric | Before | After | Change |
|---|---|---|---|
| Reported vs. real ROAS | 11.7× reported | ~1.5× reconciled | Truth |
| Site conversion rate | 0.97% | 2.73% | +181% |
| Meta ads ROAS | ~3× | 9–14× | +140–180% |
| Sessions, year over year | Baseline | +79% | +79% |
| Ad management | External agency | In-house with coaching | Full control |
| Audience segmentation | None | Age-cohort targeting | Activated |
| Klaviyo utilisation | Basic ESP | Flows + segmentation | Expanded |
The conversion jump moved the brand from well below the Shopify average into the range benchmarks consider strong for established DTC beauty: roughly 2.8× more orders from the same ad spend. On paid media, returns went from ~3× to 9–14× on the same budget. But those gains only mean anything because they’re measured against a baseline that finally reconciles. A lift on top of a fake number is still fiction.
“Before your guidance we were seeing maybe around 3× on every dollar of ad spend. After what you showed us, we started to see 9, 10, 11, 12, even 14×. It was an amazing experience.”
The first deliverable was the truth about the numbers. Before optimising a single flow, we reconciled the agency’s reported massive gains against actual Shopify sales, and it didn’t hold. You can’t fix what you’re mis-measuring. This case is anonymised at my request; the figures are real and independently reconciled.
This brand had something most DTC companies spend millions trying to manufacture: a 77-year heritage, a genuine origin story, and a leader with the charisma to carry it. None of that was the problem. The problem was that leadership couldn’t see it, because the numbers they were looking at weren’t true. Every decision about spend, growth and performance was being made on a dashboard that didn’t reconcile with the bank. The first job was never the flows or the ads. It was making the numbers real. You can’t find where the money is leaking until you can trust what the map says. And almost no one has checked the map.
How much of your ad spend is leaking before the sale?
The Next Version finds where the money is actually stuck (starting with whether your numbers are even real) and names each move, what it’s worth, and who runs it. You keep the roadmap either way.