Answer-ready summary
What happened in this case study?
Blended paid ROAS improved from 1.6x to 3.3x while monthly online revenue grew 78% on 7% lower paid spend.
A Lahore-based modest-wear brand selling abayas, scarves, and modest pret nationwide was doing PKR 19.6 million a month online, with 78% of orders on cash-on-delivery, while spending PKR 8.9 million a month on paid at a blended 1.6x return. The WooCommerce store converted at 1.9% checkout completion, crashed during collection drops, and had never sustained a working Google Shopping feed. Paid spend was scaling into a store that physically could not convert the traffic it was buying.
The rollout used 4 implementation phases: technical cleanup, architecture, content, and authority building.
At a glance
Case summary
- Industry
- Modest-wear fashion (D2C ecommerce)
- Market
- Pakistan (Lahore)
- Duration
- 5 months
- Client type
- Ecommerce
- Services used
- Shopify marketing and replatforming, Google Shopping ads management, Ecommerce conversion optimization
- Starting problem
- A Lahore modest-wear brand was scaling PKR 8.9M of monthly paid spend into a WooCommerce store converting at 1.9% checkout completion, with a broken Shopping feed and COD returns eroding efficiency.
- Work completed
- Replatformed the store to Shopify Plus with a redirect-mapped migration, rebuilt tracking and the product feed, restructured Google and Meta campaigns around margin tiers, and engineered the collection-drop process.
- Evidence type
- illustrative_composite
Results and proof
Measured impact at 5 months
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 paid ROAS
Improved from 1.6x to 3.3x (+106% efficiency lift)
Monthly online revenue
Grew from PKR 19.6M to PKR 34.8M (+78%)
Monthly paid spend
Reduced from PKR 8.9M to PKR 8.3M (-7%)
Checkout completion
Improved from 1.9% to 2.9% (+53%)
Measured metrics
Before and after
Challenge context
Challenge context
A Lahore-based modest-wear brand selling abayas, scarves, and modest pret nationwide was doing PKR 19.6 million a month online, with 78% of orders on cash-on-delivery, while spending PKR 8.9 million a month on paid at a blended 1.6x return. The WooCommerce store converted at 1.9% checkout completion, crashed during collection drops, and had never sustained a working Google Shopping feed. Paid spend was scaling into a store that physically could not convert the traffic it was buying.
PKR 8.9M monthly paid spend at 1.6x blended ROAS, below the 2.5x+ level modest-wear unit economics require
Checkout completion at 1.9% and mobile LCP at 4.8s on a 27-plugin WooCommerce stack
A February collection drop caused a six-hour outage at roughly 600 concurrent sessions, an estimated PKR 2.8M in lost orders
Google Merchant Center feed disapprovals on 31% of SKUs; Shopping effectively abandoned after one failed attempt
COD returns at 26% of delivered orders eroding paid efficiency silently
Meta measurement double-counting ~18% of purchase events, making ROAS unreadable by channel
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
Commercial audit and migration blueprint (Weeks 1-3)
Phase 2
Replatform to Shopify Plus (Weeks 3-8)
Phase 3
Paid rebuild on a clean feed (Weeks 8-14)
Phase 4
Drops, reallocation, and measurement (Weeks 14-20)
The Client
A Lahore-based modest-wear label founded in 2018, selling abayas, scarves, and modest pret wear to women across Pakistan’s urban centers. The catalog ran to 300+ SKUs produced through a small in-house stitching unit plus outsourced cut-and-sew partners, with 26 staff covering operations, a two-person marketing team, and a warehouse dispatching nationwide. Cash-on-delivery carried 78% of orders — the defining commercial fact of the business, because every operational leak (returns, failed deliveries, wrong sizes) flows straight back into acquisition economics.
Online revenue averaged PKR 19.6 million a month over the quarter before the engagement, against paid spend of PKR 8.9 million — almost all of it on Meta, mostly as boosted posts managed by a freelancer, plus one abandoned attempt at Google Shopping. The store ran on WooCommerce with 27 plugins, a stack assembled plugin-by-plugin over five years that had quietly become the constraint on everything: page speed, checkout completion, drop-day stability, and feed quality.
The breaking point arrived in February. A collection drop — the brand’s biggest sales moments, when a launched line does a large share of its lifetime revenue in days — took the store down for six hours at roughly 600 concurrent sessions. The conservative estimate of lost orders was PKR 2.8 million, on the single highest-demand day of the quarter. Management’s conclusion was correct: the problem was not marketing volume, it was the store’s inability to convert and survive the demand marketing already produced.
This engagement is an illustrative composite — a representative profile assembled from patterns we see across Pakistani fashion ecommerce, with figures kept inside realistic ranges so your team can sanity-check fit against your own baseline. Brands in this category typically start with a digital marketing for clothing brands audit before committing to a replatform.
The Problem
The diagnostic ran against three layers — unit economics, the store, and the media — and found the same failure described three ways: spend was scaling into infrastructure that could not hold it.
- Blended ROAS of 1.6x. With blended gross margins around 55%, the brand needed 2.5x+ to fund operations and growth. At 1.6x, every incremental rupee of spend lost money on first order.
- Checkout completion of 1.9%, mobile LCP of 4.8 seconds. On Pakistani mobile networks and mid-range Android devices — the overwhelming majority of sessions — the store took longer to become usable than most visitors stayed.
- Feed disapprovals on 31% of SKUs. Variant data, fabric attributes, and consistent sizing were missing from the WooCommerce product model, so Google disapproved or suppressed a third of the catalog. Shopping had been abandoned after one month of confusion.
- COD returns at 26% of delivered orders. Refused parcels, sizing disappointments, and courier failures — each one a fully paid acquisition cost returned to inventory, invisible in the ads dashboard.
- Measurement double-counting ~18% of purchase events. A browser pixel and a half-configured server integration both fired purchases, inflating reported ROAS and making every channel decision unreliable.
- Drops were feared rather than leveraged. With the February crash fresh, the team throttled launch marketing instead of leaning into the demand — the exact inversion of how collection drops should work.
Phase 1 — Commercial audit and migration blueprint (Weeks 1-3)
Book a free strategy call - we'll audit your current setup and identify the highest-impact fixes.
The audit began with money, not technology. We built a contribution-margin model across the catalog and sorted it into three tiers: Tier A abaya sets and co-ords at roughly 58% contribution margin, Tier B pret wear at 44%, Tier C accessories at 31%. This mattered because a flat “ROAS target” punishes exactly the products that fund the business — accessories can never profitably carry the same acquisition cost as a PKR 12,000 abaya set.
Returns analysis followed, split by courier, city, and price band. Two patterns stood out: high-value COD orders returned at nearly double the rate of prepaid ones, and a large share of “sizing” returns traced to inconsistent abaya length conventions across the catalog — a data problem, not a customer problem.
The measurement plan came next: GA4 with a deduplicated server-side purchase event, Meta CAPI configured properly against the pixel, and a single source of truth for purchase counts. Honest measurement lowered reported ROAS by about 18% immediately. That drop was the first real result of the engagement — every decision after it stood on numbers that were true.
The migration blueprint inventoried 1,900 URLs (1,240 products, 180 categories, 480 blog posts) with a full redirect map, selected a lean 12-app Shopify stack to replace 27 plugins, and set the platform decision: Shopify Plus, justified on three operational grounds rather than prestige — checkout capacity engineered for drop-day concurrency, checkout scripts for COD fee logic, and scheduled launch tooling. Platform cost of roughly PKR 0.7 million a month against a single February outage worth PKR 2.8 million made the arithmetic straightforward. We scoped the whole program under our shopify marketing agency framework, which treats replatforming as a performance lever rather than an IT project.
| Audit finding | Decision |
|---|---|
| Tier A margins 58% vs Tier C 31% | Margin-tiered feed and campaign structure |
| High-value COD orders returning at ~2x prepaid rate | Advance-payment option at checkout for orders over PKR 10,000 |
| 31% of SKUs disapproved in Merchant Center | Product data model rebuilt around fabric, size, and variant attributes |
| ~18% of purchase events double-counted | Server-side dedup before any ROAS was trusted |
| Drop-day crashes at ~600 concurrent | Shopify Plus checkout capacity plus scheduled launch tooling |
Phase 2 — Replatform to Shopify Plus (Weeks 3-8)
The build ran on a staging store with a hard rule: no cutover until parity checks passed on the full order path — browse, cart, checkout, COD logic, courier booking, and confirmation.
The theme was built mobile-first on Online Store 2.0 with an explicit performance budget: LCP under 2.2 seconds on a mid-range Android over 4G. Product imagery was compressed and served in responsive variants; non-critical scripts were deferred entirely. Modest-wear-specific data went into structured metafields — fabric composition, opacity, abaya length in inches with a length chart per silhouette — which paid off twice: better product pages, and clean feed attributes later.
Checkout was rebuilt as one-page with address autocomplete for Pakistani addresses, JazzCash, EasyPaisa, and cards surfaced alongside COD, and checkout scripts implementing the COD logic the margin audit demanded: a PKR 150 COD handling fee on smaller orders, waived above PKR 8,000, and an advance-payment option (20% via payment link) required on COD orders above PKR 10,000 — the direct lever on the 26% return rate.
Cutover happened on a Thursday, 2–4am Pakistan time, the lowest-traffic window in the week’s pattern. The redirect map covered all 1,480 indexable former URLs; crawl errors were monitored daily for two weeks after. Organic sessions held at 96% of pre-migration levels by day 60 — the markdown in traffic that punishes careless migrations never materialized.
A two-week pre-cutover QA gate kept the risk bounded. Every order path was walked on staging with live courier integrations against test bookings — browse, add to cart, COD selection, advance-payment link generation, courier booking, confirmation email — and the redirect map was validated link-by-link against the old sitemap rather than trusted as a spreadsheet. Order history and customer records were imported and spot-checked by the operations team before anything switched, so returning customers found their accounts intact on launch morning. The rollback plan stayed warm throughout: the WooCommerce store lived on a subdomain for 30 days after cutover. It was never needed, but its existence is what let the team launch on schedule instead of negotiating with fear.
| Store metric | WooCommerce (before) | Shopify Plus (relaunch) |
|---|---|---|
| Checkout completion | 1.9% | 2.6% |
| Mobile LCP | 4.8s | 2.1s |
| Plugin/app count | 27 | 12 |
| Drop-day stability | Outage at ~600 concurrent | Tested past 1,400 concurrent |
| Feed-ready product data | Partial, unstructured | Full variant + attribute model |
Phase 3 — Paid rebuild on a clean feed (Weeks 8-14)
With the store able to convert, media was rebuilt from zero on the principle that drove the whole engagement: spend follows contribution margin.
Google first. Merchant Center went live on a variant-level feed with fabric, color, and length attributes populated from the new metafields; disapprovals fell from 31% of SKUs to under 2%. Shopping campaigns were split by margin tier using the google shopping ads management margin-tier structure — Tier A on aggressive target ROAS, Tier B moderate, Tier C capped low and treated as basket-filler. A Performance Max campaign ran with brand excluded at the account level, so its read stayed clean non-brand; brand terms got a small dedicated search campaign at negligible cost.
Meta changed shape rather than volume. Boosted posts became catalogue sales campaigns with the deduplicated CAPI signal feeding them, and creative moved to a structured test matrix — 34 assets across studio product shots, UGC try-ons, and drape close-ups. The drape-and-fabric videos won decisively, holding a 38% higher click-through than static studio creative; modest-wear buyers want to see how fabric actually moves and covers, and no flat product shot communicates that.
Weekly hygiene held the structure clean as volume grew: search-term reviews fed a growing negative list that excluded international and wholesale-intent queries (“abaya wholesale,” “uk delivery”) the brand could not serve, out-of-stock variants were suppressed from active campaigns automatically, and creative was retired on a fixed seven-day cadence once an asset fell below threshold click-through. A remarketing layer — dynamic product ads for cart abandoners and recent viewers, plus a cart-recovery flow — ran quietly in the background and converted well above cold acquisition, the pattern we expect in Pakistani fashion, where comparison shopping spans days rather than minutes.
The COD-returns lever from Phase 1 kept operating throughout: by week 14 the blended return rate had come down from 26% to 19%, worth roughly seven points of effectively free ROAS that no bid change could have bought.
| Channel | Before | After (week 14) |
|---|---|---|
| Meta (boosted → catalogue + CAPI) | 1.5x | 3.1x |
| Google Shopping (margin tiers) | Abandoned | 4.1x weighted across tiers |
| Performance Max (non-brand) | Not running | 2.9x |
| Blended | 1.6x | 3.3x |
Two notes on reading that table. First, the Meta “before” of 1.5x was itself overstated by the double-counting fix’s inverse — honest numbers made before-state look worse and after-state look earned. Second, Shopping’s 4.1x is weighted: Tier A ran above 4.5x while clearance-tier C ran near 2.0x, which is exactly the point of tiering. A single blended Shopping number would have hidden which products deserved budget.
Phase 4 — Drops, reallocation, and measurement (Weeks 14-20)
How we helped a Pakistani business achieve measurable results.
The Eid-ul-Adha drop was the program’s final exam: the first major launch on infrastructure designed for it.
The drop ran on scheduled launch tooling with the collection queued, ads pre-staged, and the team watching a live tracker of concurrent sessions, checkout completion, and revenue. Peak concurrency passed 1,400 sessions — well beyond the February failure point — with checkout holding throughout. The drop did PKR 11.2 million over ten days at 4.4x ROAS, and the contrast with February’s outage-defined launch changed how management thought about demand spikes: drops moved from risk to be avoided to the brand’s most efficient revenue window to be engineered.
Budget reallocation became a weekly margin exercise rather than a monthly ROAS guess. Spend shifted toward Tier A products and the PMax campaigns earning their non-brand keep; underperforming creative was retired on a seven-day cadence. Owned channels got a supporting build — post-purchase and replenishment flows lifted owned-channel revenue share from 9% to 15% — deliberately kept lightweight, since paid efficiency remained the engagement’s mandate.
By month five, the stable four-week window read: PKR 34.8 million monthly online revenue (+78%) on PKR 8.3 million paid spend (-7%) at 3.3x blended ROAS.
Final Results
Measured at month five against the pre-engagement baseline quarter:
| Metric | Before | After | Change |
|---|---|---|---|
| Blended paid ROAS | 1.6x | 3.3x | +106% |
| Monthly online revenue | PKR 19.6M | PKR 34.8M | +78% |
| Monthly paid spend | PKR 8.9M | PKR 8.3M | -7% |
| Checkout completion | 1.9% | 2.9% | +53% |
| Mobile LCP | 4.8s | 2.1s | -56% |
| COD return rate | 26% | 19% | -7 pts |
| Feed disapprovals | 31% of SKUs | 1.8% | Near-eliminated |
| Organic sessions (post-migration) | Baseline | 96% retained | No migration loss |
| Drop-day peak concurrency | ~600 (outage) | 1,400+ (stable) | Engineered capacity |
The efficiency story is the spine: revenue nearly doubled while spend fell. But the durable outcome is structural — the brand now owns a store that converts, a feed that Google can serve, honest measurement, and a drop process that turns its highest-demand days from a liability into its best-performing window.
The handoff mattered as much as the numbers. Feed maintenance, the creative test matrix, and the drop playbook were documented and run by the brand’s two-person marketing team through the final month of the engagement, with weekly reviews tapering to monthly. An outcome that only holds while the agency holds it is not an outcome — it is a rental.
What Made This Work
-
The store was fixed before spend was scaled. Checkout completion rising from 1.9% to 2.9% compounds across every campaign, every channel, and every drop. No amount of media optimization survives a store that leaks two-thirds of its intent at checkout.
-
Margin tiers structured everything. Feed, campaigns, and budgets were organized by contribution margin rather than category or convenience, so spend concentrated where returns survived COD logistics. Tier A abayas carrying the acquisition load while accessories filled baskets is a portfolio strategy, not an accident.
-
Honest measurement came before optimization. Deduplicating purchase events dropped reported ROAS by 18% immediately — and made every subsequent decision trustworthy. Optimizing against inflated numbers optimizes the inflation.
-
COD returns were treated as a paid-efficiency lever. The advance-payment requirement on high-value COD orders cut returns by seven points, worth more than any bid adjustment available in the ads accounts. In Pakistani ecommerce, logistics policy is media strategy.
-
Drops were engineered, not endured. Plus checkout capacity, scheduled launches, and a live tracker converted the brand’s scariest days into its most efficient revenue window — 4.4x ROAS across the Eid drop versus 1.6x blended before the program.
What Teams Can Apply
-
Audit contribution margin by SKU before restructuring campaigns. A single blended ROAS target quietly starves your highest-margin products. Tier the catalog, feed, and campaigns so acquisition spend follows what actually funds the business after returns.
-
Fix checkout and speed before scaling spend. Every point of checkout completion is free ROAS across all channels. For Pakistani stores specifically: COD fee logic, local wallets surfaced prominently, and address autocomplete address the three biggest drop-off points in the local order path.
-
Deduplicate measurement before trusting any ROAS. If a browser pixel and server integration both fire purchases, reported performance is fiction. Establish one source of truth for purchase counts, then re-baseline every channel against it.
-
Migrate with a redirect map and a parity checklist, then watch crawl errors. 1,900 URLs mapped meant organic traffic held at 96%. The replatform risk that deters most Pakistani brands from leaving WooCommerce is real — and entirely manageable with a plan.
-
Treat COD returns as acquisition cost. Measure returns by price band and courier, then build checkout policy (advance payment on high-value orders, fee waivers that nudge prepayment) that reduces them. Returns reduction shows up in ROAS without touching a single bid.
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.
The store was fixed before spend was scaled, so every subsequent paid click landed on a checkout that could actually close.
Campaigns and feed were tiered by contribution margin, not price or category convenience, concentrating spend where returns survived COD logistics.
Brand traffic was isolated from Performance Max and measurement deduplicated, giving a clean non-brand read for every budget decision.
Limitations
Context and limitations
Illustrative composite built from common patterns in Pakistani fashion ecommerce; ROAS outcomes vary with category margins, COD return rates, and creative refresh cadence.
Questions
Case study FAQs
Is this Shopify ROAS case study framework applicable in Pakistan?
Yes, with COD-specific adaptations. Pakistani modest-wear buyers order heavily on cash-on-delivery, so return rates, courier performance, and confirmation-call efficiency sit inside the ROAS math rather than outside it. The replatform and feed work applies to any Lahore, Karachi, or Islamabad D2C store; the Plus-versus-standard Shopify decision comes down to drop-day traffic peaks and checkout scripting needs, not brand size alone.
How quickly can we expect results?
Feed and creative fixes show in performance within two to four weeks of the paid rebuild. Replatform gains arrive as a step change at relaunch — checkout completion and page speed improve the day the new store takes over. Stable blended ROAS readings need eight to twelve weeks post-migration, because Google's Shopping learning phases and the first full drop cycle have to complete before numbers settle.
Can you replicate this process for our business?
Yes. We start with a margin and returns audit, because campaign structure follows unit economics. Brands coming from WooCommerce, older Shopify themes, or marketplace-first setups each need a different migration path; the margin-tiered feed and campaign framework then applies across clothing, beauty, and home categories selling into Pakistan's COD market.
Do you provide reporting during implementation?
Yes. Weekly build checkpoints during the migration covering redirect maps, feed health, and checkout QA, then weekly media reporting from the paid rebuild onward. Dashboards are shared from day one, with a live tracker for drop days showing concurrent sessions, checkout completion, and revenue in real time.
Next step
Want a similar rollout in Pakistan?
Share your current baseline and we will map a phased execution plan to your growth goals.