The scenario
The brand sells educational toys, outdoor play sets and birthday party bundles in Kuwait, on a Shopify store with KNET, Tabby and cash on delivery. Family-run across two generations, with a warehouse handling its own packing and a genuinely strong presence inside several Kuwait parenting and mothers' WhatsApp groups, where party bundles in particular were shared unprompted before every birthday season.
The advertising account had grown the way most do without a plan: a new campaign for every new product line, none of them ever retired. By the time we looked at it there were more than a dozen ad sets, several targeting close to identical audiences of mothers with young children, all bidding against each other inside the same platform auction every single day.
- Monthly revenue band
- pending client sign-off
- Average order value
- pending client sign-off
- Fulfilment
- Own warehouse and packing, local courier, next-day across Kuwait
- Team
- Family-run, two generations, no dedicated media buyer before this engagement
More than a dozen campaigns, all fishing in the same pond
Every product launch had earned its own campaign, and every campaign had earned its own audience settings, which in practice meant near-identical groups of mothers being shown ads from the outdoor-toys campaign, the educational-toys campaign and the birthday-bundle campaign inside the same scroll on the same evening. None of it was tracked server-side, so when the family asked which line was actually profitable, the honest answer was that nobody could separate the signal from the overlap.
The instinct when a new product launched had always been to spin up a new campaign rather than add it into an existing structure, because a dedicated campaign felt like it was getting proper attention. What it actually did was split the learning phase a dozen ways and put more than a dozen budgets into competition with each other for the same limited pool of Kuwait mothers actively shopping that week.
The brand did not have a demand problem or a creative problem. It had an account structure quietly bidding against itself, and every new campaign it launched to fix that made the competition worse.
What we did — the creative that carried the spend
The losers are here on purpose. A test with only winners was never a test.
The party countdown, assembled on camera
Winner"Party in five days? Here's everything you need, delivered by Thursday."
- Format:
- Vertical, a full party bundle unpacked and assembled against a countdown graphic
This creative held its cost per purchase as budget scaled far better than any single-product ad, because a birthday is an evergreen occasion rather than a seasonal one, and the ad found a fresh audience of parents on a countdown every week of the year rather than exhausting the same pool of shoppers.
Outdoor play in a real Kuwait garden
Winner"Get them off the screen for an hour. Even in this heat."
- Format:
- Vertical, an outdoor play set filmed in a garden with the evening shade, not a studio lawn
Filmed in the evening light Kuwait households actually use their gardens in, this held up at higher frequency where the studio-style ad below fatigued fast, because the setting itself felt like a specific, repeatable moment rather than a generic product demo the audience had already seen once.
Single hero product, boosted post style
Lost"Our best-selling toy is back in stock."
- Format:
- Vertical, one product on a plain background with a caption announcing restock
It had performed acceptably at the old, small budget, which is exactly why it was trusted to carry the new, larger one, and exactly why it should not have been: frequency on this creative climbed fastest of all six once spend increased, and its cost per purchase rose in step, because a plain restock announcement has nothing left to say to someone seeing it for the fourth time.
Sibling bundle, two ages one box
Winner"One for the toddler, one for the seven-year-old. One box."
- Format:
- Vertical, two age-appropriate toys packed together with the two ages labelled on screen
Aimed squarely at the multi-child household this brand's own WhatsApp following was full of, and it converted at a steady rate through the budget increase because it was solving a real logistics problem — two different ages, one order — rather than competing on the toy itself.
What we did — the optimizations, in order
Put measurement in place before touching budget
Server-side conversion tracking went live on Meta and Snapchat, every link carried one naming convention, and blended marketing efficiency became the single number the account was judged on instead of each campaign's own reported return.
Why: Twelve campaigns each reporting their own healthy return inside a fragmented account is how a family business ends up unable to say which product line is actually paying for the others, and no restructure means anything without one shared truth underneath it.
Consolidate a dozen ad sets into one funnel per platform
One prospecting campaign, one retargeting campaign and one campaign for past customers, per platform, replaced the separate structure per product line, with every product now living inside the same funnel as an ad set rather than a whole campaign.
Why: Twelve small auctions competing for the same mothers were replaced with one larger auction learning as a whole, which is what let the platform's own optimisation start working for the brand instead of against it.
Confirm at least six proven creatives before scaling
We audited the existing library, kept the party countdown and the outdoor-play pieces that were already earning attention, and shot new sibling-bundle and seasonal variants to reach a genuine spread of six before any budget increase.
Why: The single-hero-product ad had been carrying most of the spend by default, not by design, and increasing the budget on it alone was exactly the move that would have driven its frequency and its cost per purchase up together.
Raise budget in steps, not in one jump
Spend increased roughly a quarter at a time, held for the better part of a week before the next step, with an automatic roll-back after two consecutive days above the agreed cost ceiling.
Why: The family's previous approach had been to double a campaign's budget whenever it had a strong week and cut it whenever it had a weak one, which is closer to gambling than scaling and never let any single change be judged on its own.
Add Snapchat once Meta held steady
Snapchat launched only after Meta's cost per purchase had held under ceiling for a full budget step, targeting the same mothers eighteen to thirty-four this brand's own WhatsApp community skewed toward.
Why: Launching a second platform while the first is still unstable splits attention and creative supply across two accounts that both need proving, and this brand had already made that mistake once by spreading itself across a dozen campaigns on one platform.
Pre-load the birthday, Eid and school-term calendar
Budget for Eid clothes season, the back-to-school window and the year-round birthday drumbeat was planned and loaded a month ahead, rather than discovered mid-month when a peak arrived.
Why: A toy brand's demand is not flat, and treating every month like an average month means missing the higher costs per thousand that are worth paying in a real peak and overpaying for reach in the quiet weeks between them.
Watch for the ceiling by product line, not just the account
Once the consolidated account stabilised, we tracked cost per purchase by product line rather than only at the account level, so a genuinely saturated line could be spotted before its rising cost dragged the blended number down for everything else.
Why: A consolidated funnel is the right structure, but it can also hide one line quietly hitting its ceiling behind two others still growing, and the family needed to know which line to feed with budget next rather than assuming the whole account moves together.
What changed
The headline number sits in the table above, and the shape of it is what matters: blended marketing efficiency improved while monthly spend rose, which is the only combination worth calling scaling. It moved because a dozen small auctions bidding against each other became one auction learning as a whole, not because any single ad went viral.
Cost per purchase held through two full budget steps before it needed a pause, and the pause itself was useful information: it told us exactly which product line had reached its ceiling first, rather than leaving the family guessing at an account-level number that blends a saturated line with two that still have room.
The single-hero-product creative, once the account's biggest spender by default, is now a minor part of the mix, replaced by the party countdown, the outdoor-play piece and the sibling bundle, all of which held their cost as frequency rose in a way the plain restock ad never could.
What we would do next
Move the product line that hit its ceiling first into a retention play instead of more prospecting spend, since growth there now has to come from repeat purchase and sibling orders rather than reach.
Test Google alongside the two social platforms for parents already searching a specific toy by name during the school-term and Eid windows, where intent is higher than anything a cold feed can produce.