Skip to content
Ecommerce · Paid Media · UAE → GCC

They thought it was a creative problem. It was an attribution problem.

A DTC fashion brand operating across UAE and KSA had hit a hard ceiling at AED 60K/month in ad spend. Every test to scale beyond that threshold produced the same result: ROAS deteriorated, CAC climbed, and the budget was pulled back. Three creative agencies in 18 months had not moved the needle.

Channels:Meta AdsTikTok AdsGoogleServer-Side Tracking
3.4×ROAS
−32%CAC
3.5×Monthly spend
+108%Mobile CVR

02 / Business Context

The brief, the constraints, and what couldn't change.

Every system we build is shaped by what exists at the start. The constraints below are not excuses — they are the parameters the system had to work within.

Engagement brief

Client
UAE DTC fashion brand — multi-category apparel, AED 60K/month paid media budget at engagement start
Region
UAE and KSA — dual-market Shopify operations with separate storefronts
Engagement
Full-system engagement: tracking infrastructure, channel architecture, CRO. 16 weeks.

Browser-side tracking only

No server-side layer. iOS 14+ signal loss unmitigated for 18+ months. The team had accepted platform-reported data as accurate and was making AED 60K/month budget decisions on a number with a 35%+ error rate.

Limited internal creative capacity

No in-house UGC production capability. Creative was dependent on external agencies producing product-led content — a structural bottleneck on creative volume and format diversity.

16-week fixed engagement window

Measurement infrastructure, channel rebalancing, landing page deployment, and creative pipeline setup all had to sequence within 16 weeks — in dependency order, not in parallel.

Live campaigns could not be paused

The brand was in active sale periods during the engagement. Tracking rebuild and campaign restructure had to be implemented without pausing revenue-generating campaigns.

03 / The Problem

The scale ceiling wasn't a creative problem. It was a measurement problem.

The brand had been optimising toward a ROAS number that was wrong. Browser-side only tracking — with no iOS 14+ mitigation and no server-side layer — was under-reporting conversions on Meta by 35% and over-crediting Google branded search. Every budget decision made against this data was structurally incorrect.

ROAS degraded at scale

Every increase in Meta spend above AED 25K/month produced diminishing returns in the platform's reported ROAS — leading the team to conclude Meta had hit its ceiling.

Google branded search 'performing best'

Branded Google was showing 6.5× ROAS and was receiving 40% of total budget — but this is captured intent, not created intent. The spend that created the intent was invisible.

TikTok 'doesn't convert'

TikTok had been tested for 6 weeks and cut because its reported ROAS was 0.9×. With correct attribution, the actual ROAS was 2.3×. The channel was profitable and abandoned.

CVR flat despite CRO attempts

Two rounds of landing page A/B tests had produced no meaningful CVR improvement. The tests were structured for desktop, run on mixed traffic — and mobile accounted for 76% of sessions.

04 / Strategic Diagnosis

Four structural failures, one compounding effect.

Our diagnostic process — attribution audit, channel efficiency analysis, creative performance review, and landing page teardown — identified four independent failures. Each was manageable alone. Combined, they created a ceiling that no creative change could break through.

Attribution architecture

What we found

No server-side tracking. Browser-side Meta pixel losing 38% of events post-iOS 14. Event deduplication not configured. The marketing team was making AED 60K/month decisions on data with a 35% error rate.

Why it mattered

Before fixing channels or creative, we needed to fix measurement. Any spend decision made on broken data would compound the existing inefficiency.

Channel budget allocation

What we found

40% of budget to branded Google (high reported ROAS, zero incrementality), 10% to TikTok (abandoned), 50% to Meta (under-budget given actual performance).

Why it mattered

Rebalancing alone — with no other changes — would improve blended ROAS significantly by shifting budget toward channels that were creating demand, not just capturing it.

Landing page / traffic mismatch

What we found

The landing page was optimised for Facebook retargeting traffic: long-form, social-proof heavy, review-dense. TikTok cold traffic (entertainment-primed, impulse-oriented) had a completely different decision pattern.

Why it mattered

A single landing page for mixed acquisition traffic is a structural constraint on conversion rate. Channel-specific pages were required.

Creative framework

What we found

All three active agencies had been producing product-led creative (flat lay, feature callouts, discount announcements). No hook testing methodology. No UGC-to-paid pipeline. No creative lifecycle framework.

Why it mattered

Creative was being produced and retired on gut feel rather than data. Without a testing pipeline, scale would always depend on guessing which creative would hold at higher spend.

05 / System Architecture

A six-layer system built in sequence, not parallel.

We built the system in dependency order — measurement first, then channel architecture, then creative, then conversion. Each layer depended on the one before it being correct. This sequencing is the system.

01

Tracking infrastructure

Decision

Server-side Meta CAPI + TikTok Events API implementation via Stape. Deduplication configured. GA4 migration with cross-domain attribution.

Output

97% event match rate on Meta (from 62%). Clean attribution data as the decision layer for everything that follows.

02

Channel architecture

Decision

Branded Google budget reduced to 15% (enough to hold branded search, not over-invest). Meta prospecting increased to 50%. TikTok re-opened at 20%. YouTube testing at 15%.

Output

Budget allocation aligned to actual incremental contribution, not reported ROAS. Blended efficiency improved before any other change.

03

Creative system

Decision

Hook testing pipeline established: 3 hooks per week, 2-week test window, winner held at scale. UGC brief framework developed. Creative lifecycle: Test → Scale → Retire defined.

Output

4 winning hooks identified in first 6 weeks. Creative refresh cadence locked in. No more manual guessing on creative rotation.

04

Landing page architecture

Decision

Channel-specific landing pages: Meta traffic → social-proof-first page, TikTok traffic → entertainment-framed page with immediate offer. Shared product pages removed from paid traffic flow.

Output

Mobile CVR 1.3% → 2.7%. TikTok-specific page converting at 3.1% vs. 0.9% on the shared product page.

05

Scaling framework

Decision

CAC ceiling calculated from LTV model (AED 340 average LTV, 3× purchase rate). Maximum profitable CAC set at AED 113. Budget increase triggered only when 14-day CAC is below AED 100.

Output

Scale decisions governed by unit economics, not ROAS targets. Budget increase from AED 60K to AED 210K over 12 weeks within the CAC ceiling.

06 / Execution

Four phases over 16 weeks.

The engagement ran in four distinct phases, each with a defined output that gated the next. No creative work began until measurement was correct. No scaling began until unit economics were confirmed.

Phase

Measurement rebuild

Weeks 1–3

Server-side tracking implementation across Meta, TikTok, and GA4. Deduplication and event quality validation. Attribution audit: channel-by-channel incremental contribution analysis. Branded Google incrementality test (results confirmed near-zero incrementality on branded at current spend levels).

Phase

Channel architecture

Weeks 4–6

Budget rebalancing based on corrected attribution data. TikTok re-activation with fresh creative brief. Meta account restructure: CBO campaigns, audience consolidation, creative-led testing framework. Google Search restructured to defend branded only.

Phase

Creative and conversion

Weeks 7–11

Hook testing pipeline launched on TikTok (3 hooks/week). Channel-specific landing pages built and deployed. Mobile optimisation: load time from 4.2s to 1.8s, checkout flow simplified from 4 steps to 2 steps. A/B testing framework established with Statsig.

Phase

Scaling

Weeks 12–16

Budget scaled from AED 60K to AED 130K (week 12), AED 175K (week 14), AED 210K (week 16). Each increase triggered by 14-day CAC clearing the AED 100 threshold. Creative refresh maintained: no single creative carried beyond 3× weekly frequency without a fresh variant in test.

07 / Measurement Methodology

Measurement methodology: establishing correct baselines before optimising.

Every outcome metric has a corrected baseline — not just a platform-reported number. The core measurement challenge was that starting-point data was structurally wrong by 35%+ across the most important channels. All decisions waited for corrected baselines.

MetricHow it was measuredBaseline
Blended ROAS

Server-side attributed revenue ÷ total ad spend. Meta CAPI + TikTok Events API data. Deduplication applied against Shopify order records.

Platform-reported 2.9× vs. corrected 2.1× at engagement start — 38% over-statement from attribution overlap between channels.

Customer Acquisition Cost

Total ad spend ÷ unique first-order customers, cross-referenced against Shopify order data by acquisition date. Not derived from platform-reported attribution.

AED 145 per first-order customer at engagement start, calculated from corrected attribution. Platform-reported was lower due to double-attribution.

Channel incrementality

Geo holdout test for branded Google: 2-week test across paired UAE regions, identical campaign setup with one region as holdout.

Near-zero incremental lift confirmed for branded Google above AED 15K/month spend — established the case for budget reallocation to demand-creation channels.

Mobile CVR

Shopify checkout initiation → purchase conversion rate, mobile device segment, paid acquisition sessions only. Sourced from Shopify Analytics + GA4, not platform data.

1.3% actual mobile CVR at engagement start — used as the CRO improvement benchmark, not the platform-reported session conversion figure.

Blended ROAS

Method: Server-side attributed revenue ÷ total ad spend. Meta CAPI + TikTok Events API data. Deduplication applied against Shopify order records.

Baseline: Platform-reported 2.9× vs. corrected 2.1× at engagement start — 38% over-statement from attribution overlap between channels.

Customer Acquisition Cost

Method: Total ad spend ÷ unique first-order customers, cross-referenced against Shopify order data by acquisition date. Not derived from platform-reported attribution.

Baseline: AED 145 per first-order customer at engagement start, calculated from corrected attribution. Platform-reported was lower due to double-attribution.

Channel incrementality

Method: Geo holdout test for branded Google: 2-week test across paired UAE regions, identical campaign setup with one region as holdout.

Baseline: Near-zero incremental lift confirmed for branded Google above AED 15K/month spend — established the case for budget reallocation to demand-creation channels.

Mobile CVR

Method: Shopify checkout initiation → purchase conversion rate, mobile device segment, paid acquisition sessions only. Sourced from Shopify Analytics + GA4, not platform data.

Baseline: 1.3% actual mobile CVR at engagement start — used as the CRO improvement benchmark, not the platform-reported session conversion figure.

08 / Performance Outcomes

Unit economics improved before spend increased.

The key result is not the ROAS improvement in isolation — it is that unit economics improved first and scale followed from that improvement. This is the opposite of 'spend more and hope for better ROAS.'

Timeframe: 16 weeks (Q1–Q2 2025)
3.4×ROASfrom 2.1×

Blended across all channels, corrected attribution

AED 98Customer Acquisition Costfrom AED 145

−32% over 16 weeks

AED 210KMonthly ad spendfrom AED 60K

Scaled 3.5× with improving unit economics

2.7%Mobile CVRfrom 1.3%

Channel-specific landing pages

97%Meta event match ratefrom 62%

Server-side CAPI implementation

28%TikTok contributionfrom 0% (channel abandoned)

Now second-highest revenue channel

09 / Lessons + Strategic Insights

Three lessons that generalise beyond this account.

The scale ceiling is almost always a measurement ceiling first.

In 80% of accounts we audit, the reported ROAS is structurally wrong — usually by 20–40% on the low side for Meta and TikTok, and over-credited on Google branded. The first question is never 'what creative should we test?' It is 'is the data we are optimising against correct?'

Branded search ROAS is a vanity metric without an incrementality test.

6.5× ROAS on branded Google looks like a channel worth investing in. It is not — it is search demand created by other channels, expressed as a conversion on a brand term. Capturing it with minimal spend (10–15% of budget) is correct. Over-investing in it at the cost of demand-creation channels is how brands plateau.

Landing pages are channel-specific assets, not universal conversion pages.

A single landing page cannot optimise for cold TikTok traffic and warm Meta retargeting simultaneously. The intent signals, decision timelines, and information hierarchies are different. Channel-specific pages add 3–5 development days and routinely move CVR by 60–120%.

Build your growth system

The same system is available for your programme.

Every engagement starts with a diagnostic. We identify the binding constraint — attribution, channel allocation, conversion rate, or creative — and build the system layer that moves it. No generic pitch. No long retainer before results.

  • Senior strategist on every engagement
  • UAE · KSA · Global markets
  • Diagnostic-first, not deck-first