Answer-ready summary
What happened in this case study?
Data-driven attribution shifted 19% of monthly ad spend into 2.1x-ROI channels, lifting blended ROAS from 2.4x to 3.6x and cutting blended CPA 22% over one quarter.
A Faisalabad-based direct-to-consumer activewear, equipment, and accessories brand was spending roughly PKR 2.8M a month across five paid and owned channels but could not tell which of them actually produced first-time buyers. Last-click attribution credited almost everything to branded search and a single retargeting campaign, so the team kept pouring budget into the bottom of the funnel while the discovery channels doing the real awareness work were quietly underfunded.
The rollout used 4 implementation phases: technical cleanup, architecture, content, and authority building.
At a glance
Case summary
- Industry
- D2C Activewear and Fitness Ecommerce
- Market
- Pakistan (Faisalabad)
- Duration
- 90 days
- Client type
- Ecommerce
- Services used
- Marketing attribution modeling, GA4 setup and custom configuration, Marketing mix modeling, Marketing reporting automation
- Starting problem
- Last-click attribution credited 71% of conversions to branded search and a single retargeting campaign, hiding the discovery channels that actually drove first-time revenue.
- Work completed
- Rebuilt the measurement foundation in GA4 and a marketing data warehouse, built and validated a data-driven attribution model, and reallocated 19% of monthly spend toward channels that returned 2.1x or better.
- Evidence type
- illustrative_composite
Results and proof
Measured impact at 90 days
The top-line numbers are separated from the narrative so buyers, search engines, and answer engines can understand the outcome before reading the full execution notes.
Blended ROAS
Improved from 2.4x to 3.6x (+50%) at flat spend
Spend on 2.1x+ ROI channels
19% of monthly budget reallocated upward
Blended CPA
Reduced from PKR 1,650 to PKR 1,290 (-22%)
New-customer revenue share
Grew from 39% to 54% of total attributed revenue
Measured metrics
Before and after
Challenge context
Challenge context
A Faisalabad-based direct-to-consumer activewear, equipment, and accessories brand was spending roughly PKR 2.8M a month across five paid and owned channels but could not tell which of them actually produced first-time buyers. Last-click attribution credited almost everything to branded search and a single retargeting campaign, so the team kept pouring budget into the bottom of the funnel while the discovery channels doing the real awareness work were quietly underfunded.
Blended ROAS had slipped from 3.1x to 2.4x over two quarters as spend rose
Last-click credited 71% of conversions to branded search — a clear misread
YouTube and Meta prospecting were being cut every month because they "did not convert"
No unified view of spend, sessions, new-customer revenue, and LTV across platforms
Email and SMS were treated as free revenue when they were mostly retargeting owned audiences
Ad platform pixel counts disagreed with GA4 by 18-34% on the same campaigns
Execution roadmap
Implementation phases
The page now presents the process as a scannable roadmap before the long-form breakdown, improving buyer comprehension and passage-level retrieval.
Phase 1
Measurement audit and data foundation (Weeks 1-2)
Phase 2
Attribution model design and validation (Weeks 3-5)
Phase 3
Spend reallocation and bid alignment (Weeks 4-8)
Phase 4
Measurement cadence and compounding (Weeks 8-12)
The Client
A direct-to-consumer activewear, fitness equipment, and accessories brand based in Faisalabad. The business had grown out of a family textile manufacturing operation and had spent three years building a Shopify storefront into a credible name among Pakistani gym-goers, runners, and home-fitness buyers. By the time they engaged WeProms Digital, they were shipping roughly 4,200 orders a month, with an average order value near PKR 6,400 and a loyal base in Punjab and Karachi.
Their channel mix had accreted the way most scaling D2C brands do — a little at a time. Paid Search handled brand defence and a few commercial product terms. Google Shopping carried the catalog. Meta ran prospecting and a thick layer of retargeting. YouTube had been added during a Ramadan push and never removed. Email and SMS, run through their lifecycle platform, contributed a steady chunk of revenue that the team increasingly relied on. Total paid and platform spend sat around PKR 2.8M a month.
The problem was not volume. Orders were growing. The problem was that nobody on the team could answer a simple question with any confidence: of the five channels we pay for, which ones actually bring us customers we did not already have? Every monthly review ended in the same argument, because every platform’s dashboard told a different story, and GA4’s default last-click view sided with the channels closest to the sale.
The Problem
Three measurement failures were quietly leaking margin:
-
Last-click worship. GA4’s default non-paid last-click model credited 71% of conversions to branded search and a single Meta retargeting campaign. Those channels were genuinely useful, but they were the end of the customer journey, not the beginning. The team kept increasing their budgets while the discovery work — YouTube view-throughs, Meta prospecting, commercial Shopping traffic — got trimmed every month for “not converting.”
-
Platform counts that disagreed. On the same set of campaigns, the Meta pixel, Google Ads conversions, and GA4 disagreed by anywhere from 18% to 34%. Some of this was the usual consent and ad-blocker loss on Pakistani mobile traffic; some of it was double-counting where a click and a view both claimed the same order. Without a single reconciled number, every channel decision was half guess.
-
Owned-channel blind spot. Email and SMS were reported as “free” revenue, so they looked wildly efficient. In reality, most of that revenue was retargeting audiences the paid channels had paid to acquire. The brand was effectively assigning the same revenue to two places and then rewarding the cheaper one, which made the whole budget picture look better than it was.
The net effect: blended ROAS had slipped from 3.1x to 2.4x over two quarters even as spend climbed, and the team had no trusted view to reverse it.
Phase 1 — Measurement Audit and Data Foundation (Weeks 1-2)
Book a free strategy call - we'll audit your current setup and identify the highest-impact fixes.
No reallocation happens against a model nobody trusts, so the first two weeks went into building a measurement foundation the whole team could sign off on.
Conversion reconciliation. We defined a single source of truth for “order” and wired it backwards into every platform. Shopify’s order record became the canonical count, with a new-customer flag derived from the customer’s first order date. We then rebuilt the conversion tracking so each platform reported against that same number rather than its own pixel. The GA4 setup and custom configuration work included deduplicating events between the website tag and server-side sends, fixing a cross-domain issue that was dropping users between the storefront and the COD confirmation page, and aligning the conversion window to the brand’s actual consideration cycle rather than the default.
Separating new from repeat. Because the question that mattered was “which channels create new customers,” we split every conversion into first-order and repeat. This single change reframed the entire conversation. The “efficient” retargeting campaign was revealed to be almost entirely repeat buyers who would have ordered anyway; the “inefficient” YouTube campaign was carrying a large share of first-time buyers.
Channel data warehouse. Spend, sessions, new-customer orders, and revenue from all five channels plus organic and direct were pulled into one warehouse table, refreshed daily. This killed the nine-day-late spreadsheet ritual and gave us one table to model against.
| Channel (last-click view) | Reported ROAS | Share of first-orders | Real picture |
|---|---|---|---|
| Branded Search | 9.1x | 11% | Mostly harvesting demand others created |
| Retargeting (Meta) | 7.4x | 9% | Mostly repeat buyers |
| Google Shopping | 2.8x | 24% | Genuine, but commercial-term heavy |
| Meta prospecting | 1.3x | 31% | Underspending against its real contribution |
| YouTube | 0.6x | 25% | Starved — last-click made it look broken |
That table was the moment the team stopped arguing. Under last-click, branded search and retargeting looked like heroes and YouTube looked like a write-off. The first-order column told the opposite story.
Phase 2 — Attribution Model Design and Validation (Weeks 3-5)
With clean data, we built a data-driven attribution model suited to a multi-touch D2C journey. The goal of marketing attribution modeling here was not a perfect number — it was a stable, defensible weighting that held up against a sanity check.
Model choice. We ran a custom position-and-recency weighting informed by the brand’s actual path data, then cross-checked it against GA4’s data-driven model. The custom weighting let us handle the Pakistani quirks GA4 struggles with: long COD-confirmation gaps, heavy direct and organic return traffic that last-click models over-reward, and view-through influence from YouTube that click-based models miss entirely.
Validation against incrementality. A model is only worth acting on if it predicts what happens when you move money. We stress-tested the weighting with two short geo holdouts (pausing YouTube prospecting in two smaller cities for ten days) and confirmed that first-order volume in those cities dropped materially — the model’s claim that YouTube carried real acquisition weight was grounded in reality, not attribution arithmetic.
Light marketing-mix backstop. Because ad platform attribution alone is unreliable for a brand this size, we layered a lightweight marketing mix modeling pass using two years of weekly spend and revenue to estimate each channel’s marginal contribution. The mix model and the click-based model disagreed in places, which was the point — the overlap defined the high-confidence reallocation zone, and the disagreement flagged where we should move slowly.
By the end of week 5, every channel had two numbers the team trusted: its attributed first-order ROAS and its estimated marginal ROAS from the mix model. Channels where both numbers sat at 2.1x or better became the reallocation targets.
Phase 3 — Spend Reallocation and Bid Alignment (Weeks 4-8)
This is where the budget moved. We defined a simple rule the team could defend in any review: protect channels returning 2.1x or better on first orders, shrink channels below 1.5x unless they serve a clear harvesting role, and fund the move from the over-credited bottom of the funnel.
The reallocation. Over six weeks we shifted 19% of monthly spend — roughly PKR 530,000 — out of the over-funded branded-search and retargeting layers and into Meta prospecting, YouTube, and commercial-term Shopping. Branded search was not killed; it was right-sized to its actual harvesting job, freeing budget without giving up the orders it genuinely captured. The move was executed in three tranches of roughly 6-7% each, two weeks apart, so each tranche could be read against confirmed, delivered revenue before the next one went live. Moving the full 19% in one cut would have drowned the signal in delivery-cycle noise and made it impossible to tell whether the lift was real or seasonal.
| Spend bucket | Before | After | Reason |
|---|---|---|---|
| Branded Search | 26% | 17% | Right-sized to harvesting role |
| Meta retargeting | 21% | 13% | Mostly repeat buyers already |
| Google Shopping (commercial) | 18% | 23% | Genuine first-order contributor |
| Meta prospecting | 19% | 27% | Underspent against real acquisition |
| YouTube | 8% | 15% | Starved discovery, validated by holdout |
| Display / other | 8% | 5% | Low confidence on both models |
Bid and audience alignment. Smart Bidding on Search and Shopping was retargeted to maximise for new-customer conversions rather than all conversions, which stopped the algorithms from optimising toward repeat buyers who were going to convert anyway. On Meta, prospecting audiences were rebuilt around lookalikes seeded from first-time-buyer lists rather than the full customer file, which had been quietly optimising toward existing customers.
Killing the owned-channel double count. Email and SMS revenue was re-presented as assisted revenue tied back to the acquiring channel, not as a standalone “free” line. This did not change what email earned; it changed what the team credited, which is what made the paid-channel reallocation politically possible.
By the end of week 8, the spend mix looked nothing like the last-click dashboard had implied it should, and the model’s predicted lift was showing up in the order data.
Phase 4 — Measurement Cadence and Compounding (Weeks 8-12)
How we helped a Pakistani business achieve measurable results.
Reallocation is not a one-time event; it drifts back unless the cadence holds. The final phase installed the routine that keeps the gains.
Same-day dashboard. The data warehouse fed a live dashboard showing attributed first-order ROAS, marginal ROAS from the mix model, spend share, and new-customer revenue share by channel. Decisions that used to wait nine days for a spreadsheet now happened in the Monday standing review.
Biweekly reallocation triggers. We set simple guardrails: any channel whose attributed and marginal ROAS both stayed above 2.1x for two weeks was eligible for incremental budget; any channel dropping below 1.5x on both was reviewed for cuts. This kept the budget migrating toward the best channels without requiring a full re-modelling exercise every month.
COD confirmation feedback. Because a large share of Pakistani D2C orders are cash on delivery, “order placed” overstates true revenue. We fed confirmed-and-delivered status back into the warehouse so the model weighted confirmed revenue, not just submitted orders — a small change that made every number more honest.
Model decay monitoring. Attribution models drift as creative fatigue sets in, audiences exhaust, and the competitive mix shifts. We set a monthly model-refresh checkpoint and tracked the gap between attributed ROAS and marginal ROAS from the mix model per channel. When the two diverged sharply on a single channel for more than two weeks, it was a signal to re-examine that channel rather than blindly trust either number. Over the 90-day window the YouTube weighting moved twice as the prospecting audiences matured, and the refresh cadence kept the reallocation targeting honest rather than optimising into a stale read.
Final Results at 90 Days
| Metric | Before | After | Change |
|---|---|---|---|
| Blended ROAS | 2.4x | 3.6x | +50% |
| Blended CPA | PKR 1,650 | PKR 1,290 | -22% |
| Spend on 2.1x+ ROI channels | 31% of budget | 50% of budget | +19 pts |
| New-customer revenue share | 39% | 54% | +15 pts |
| First-order volume (monthly) | ~1,640 | ~2,270 | +38% |
| Reporting lag | 9 days | Same day | n/a |
The headline outcome was achieved at flat total spend — the gain came from moving money, not from adding it. That distinction matters for finance teams who want to know whether growth is being bought or unlocked.
What Made This Work
-
Measurement before money. The single biggest reason this worked is that no budget moved until the team had a reconciled, trusted number. Brands that reallocate based on platform dashboards end up moving money toward whichever platform lies most flatteringly; the order-record reconciliation removed that trap entirely.
-
New-versus-repeat was the unlock. Splitting conversions by customer status reframed every channel’s value. The brand had been optimising toward repeat buyers — efficient on paper, but a repeat buyer is not growth. Optimising the bidding and audiences for first orders is what let the reallocated spend compound into actual new revenue.
-
The model was validated, not assumed. Attribution models can be elegant and wrong. The geo holdouts and the mix-model cross-check gave the team the confidence to move 19% of spend rather than the 5% they would have moved on faith alone. The disagreement between models was treated as information, not noise.
-
Owned channels stopped being a free ride. Re-crediting email and SMS revenue to the channels that acquired those customers made the paid picture honest. Without that step, the reallocation would have looked worse than it was and would likely have been reversed in the first review.
What Teams Can Apply
For Pakistani D2C brands trying to understand where revenue really comes from:
-
Reconcile to the order record first. Before any attribution work, make sure every platform reports against the same Shopify order count. If your pixel, ad account, and GA4 disagree by double digits, every decision downstream is compromised. We see platform counts disagree by 18-34% on Pakistani traffic as a matter of course, and the fix is reconciliation, not choosing which dashboard to believe. For more on why this happens, our write-up on how ad platforms double-count conversions walks through the Pakistan-specific causes.
-
Separate new from repeat before you read any ROAS number. A blended ROAS hides whether you are growing or just re-selling to the same people. First-order ROAS is the number that tells you if a channel is building the business.
-
Treat owned channels as assisters, not free revenue. If your email revenue is “free,” you are almost certainly double-counting and under-crediting the paid channels that built the list. Tie lifecycle revenue back to acquisition source before you judge paid efficiency.
-
Validate the model with a real-world test. Run one geo holdout or on/off test against your model’s most surprising claim. A model that predicts the outcome of moving money is worth acting on; one that merely redistributes credit is not.
-
Move slowly enough to read the signal. Reallocate in tranches over several weeks, not in one cut. The brand in this study shifted 19% of spend over six weeks precisely so each move could be read against confirmed, delivered revenue rather than noisy early signal.
-
Refresh the model on a cadence. Attribution weightings decay as creative fatigues and audiences exhaust. A monthly refresh, paired with a watch on the gap between attributed and marginal ROAS, keeps the reallocation targeting the channels that are working this month rather than the ones that worked three months ago.
-
Weight for confirmed revenue, not submitted orders. In a COD-heavy market, a submitted order is a promise, not a sale. Feeding confirmation and delivery status into the model stops you from optimising toward orders that get returned or never collected — a distortion that quietly inflates every channel’s apparent performance.
This framework is built for the Pakistani ecommerce context — COD confirmation flows, mobile-heavy traffic, and platform tracking gaps included. The exact channel mix and weighting change with every vertical, but the sequence holds: reconcile, split new from repeat, model, validate, then move money.
What teams can apply
Use the framework, not just the headline number.
For GEO, AEO, and classic SEO, the useful signal is the sequence: fix crawl access, build answerable category assets, improve conversion paths, and document proof in a format that humans and machines can cite.
Measurement was fixed before money was moved — the model ran on clean, reconciled GA4 data rather than platform pixel counts that disagreed by 18-34%
The brand had enough margin headroom on first orders (activewear AOV around PKR 6,400) to make a 2.1x floor meaningful, so reallocation had room to compound
Discovery channels were starved, not broken — once YouTube and Meta prospecting were funded against a validated model, new-customer revenue responded within four weeks
Limitations
Context and limitations
Illustrative composite built from common WeProms ecommerce engagements; results vary with category margins, AOV, creative quality, and how much of the budget is already stuck in branded-search and retargeting loops.
Questions
Case study FAQs
Is this ecommerce attribution framework applicable in Pakistan?
Yes. The model is built around Pakistani D2C realities: heavy mobile usage, Cash-on-Delivery bias, platform pixel gaps from consent and ad-blockers, and owned-channel revenue that is easy to double-count. We adapt the channel set and conversion definitions to each store's checkout and COD confirmation flow.
How quickly can we expect results from attribution work?
The measurement foundation and model are usable within 3 to 4 weeks. Spend reallocation starts once the model has enough conversion volume to be stable, usually around week 4 to 6, and the ROAS uplift compounds over the following 6 to 8 weeks as bids and budgets adjust.
Can you replicate this process for our ecommerce business?
Yes. We map the same phased rollout to your stack, order volume, and team. The framework adapts across activewear, beauty, electronics, home goods, and food D2C; what changes is the channel mix, the margin profile, and how we weight owned versus paid channels in the model.
Do you provide reporting during implementation?
Yes. We share a live dashboard from week one and run weekly working sessions on channel-level ROAS, spend shifts, and the model's confidence intervals so decision-makers can see exactly why each reallocation was made.
Next step
Want a similar rollout in Pakistan?
Share your current channel mix and we will map a phased attribution and spend-realignment plan to your margin and growth targets.