Aahfil.
Worked example — a composite of patterns we see across Kuwait stores in this category, not a single client engagement. No figures are published here.

Pet supplies · Paid scaling

How Kuwait pet supplies stores scale ad spend without outrunning their own delivery van

a Kuwait pet supplies store, three years in, running its own warehouse and a small delivery fleet

Kuwait pet supplies stores raise ad budgets ahead of National Day and watch cost per purchase climb instead of hold. The fix measures properly, consolidates a scattered account, and finds the real ceiling is rarely the auction. It is how many bags one small delivery fleet can carry in a day.

A composite worked example drawn from patterns across Kuwait stores in this category, not a single client engagement. No figures are published.

At a glance

Category
Pet supplies
Lever
Paid scaling
Platforms
metainstagramsnapchatgoogle
Stack
shopifyknettabbycodmeta-capisnap-capiga4

The scenario

The store sells food, litter and accessories from its own warehouse, mostly to cat owners, with a small van fleet that runs scheduled routes for the heavy items and a same-day courier arrangement for everything else. Three years in, it had grown past the point where the founder could run ads himself and had handed media buying to a freelancer who managed it well at a modest budget but had never scaled past it.

The plan going into the quarter was straightforward: increase spend ahead of National Day and White Friday, when Kuwaiti households restock before a long weekend at home with the family and the cat. The account had a genuine track record of profitable prospecting at its existing budget, which is exactly the situation scaling is supposed to work in.

Monthly revenue band
pending client sign-off
Average order value
pending client sign-off
Fulfilment
Own warehouse, small owned van fleet plus a contracted same-day courier
Team
Founder, a warehouse team of two, and a freelance media buyer

The account scaled. The warehouse could not keep the promise it made

The freelancer did the obvious thing when told to spend more before National Day: he raised the daily budget on the two best-performing campaigns by a large step all at once. For the first week, the numbers looked like a win — more purchases, a similar cost per purchase, exactly what a founder wants to see. By the second week, cost per purchase had climbed past its previous ceiling and kept climbing, and the instinctive read was that the auction had simply gotten more competitive ahead of the holiday.

The auction was part of it, but not the main part. When we pulled the order data apart by delivery outcome rather than only by ad performance, a second story appeared: a rising share of orders placed in the second week were being delivered a day or two late, cancelled by the customer before the scheduled run, or refused at the door because the promised delivery window had slipped. The extra budget had bought real purchase intent. The warehouse and its two vans simply could not turn that intent into a completed, undisputed order at the new volume, and every failed delivery was still counted as ad spend against a sale that never actually landed.

Nobody had put the delivery fleet's daily capacity into the same conversation as the ad budget, because on paper they belong to two different parts of the business. The account had not hit a ceiling on demand. It had hit a ceiling on how many bags could physically leave the warehouse in a day.

What we did — the creative that carried the spend

The losers are here on purpose. A test with only winners was never a test.

  1. One large jump in budget ahead of National Day

    Lost
    Daily budget on the two best campaigns doubled overnight
    Format:
    A single manual budget edit across two ad sets, no staged steps

    This is the change that started the whole problem, and it is worth publishing because the ad account looked fine for the first week. The failure only showed up in the delivery log a week later, which is exactly why judging a budget jump on early ad metrics alone is not enough in a category with a physical fulfilment step attached to every order.

  2. Consolidating scattered ad sets into three campaigns per platform

    Winner
    One prospecting, one retargeting, one existing-customer campaign, per platform
    Format:
    Full account restructure across Meta, Snapchat and Google

    The account had accumulated near-duplicate ad sets from a year of small, ad-hoc changes, and merging them stopped the budget from splitting its own learning and competing against itself in the same auction. Frequency came down and the read on every subsequent budget step got noticeably cleaner.

  3. Twenty percent budget steps tied to fleet capacity

    Winner
    Increase held five to seven days, checked against daily delivery capacity before the next step
    Format:
    Staged budget increases across the consolidated campaigns

    This replaced the single large jump and is the change that actually held. Tying each step to a number the warehouse could confirm, rather than to the calendar or the founder's ambition, is what let the account grow without repeating the failed-delivery spike from week two.

  4. Adding Google search as a second platform once Meta stabilised

    Winner
    Brand-name search campaigns for specific food and litter products already in demand
    Format:
    Search campaigns added only after the Meta account held its cost per purchase for two full weeks

    Cat owners searching a specific brand by name are close to a purchase decision already, and this platform picked up demand the social campaigns were not built to catch. Waiting until Meta was stable before adding it meant the account could tell which platform deserved credit for the lift.

  5. Pushing a further budget step after the fleet ceiling was already found

    Neutral
    One more twenty percent step attempted the week after failed deliveries had already spiked
    Format:
    A scheduled step that was paused mid-week once delivery data flagged it

    Worth recording because it is the moment the team almost repeated the original mistake in miniature. The weekly log caught it before the step completed, and pausing it — rather than pushing through on the hope that the auction alone would sort itself out — is what kept the second failure from happening at all.

What we did — the optimizations, in order

  1. Measure server-side before touching the budget

    We put server-side conversion tracking on every platform and defined a blended marketing efficiency number as the figure the whole scaling decision would be judged on, rather than any one platform's own reported return.

    Why: Without this, the second week's rising cost per purchase would have looked like a Meta problem or a Snapchat problem depending on which dashboard someone opened, when it was actually a fulfilment problem showing up in the ad numbers because that is where anyone was looking.

  2. Consolidate the account before adding a single dinar

    We merged a scattered set of near-duplicate ad sets into one prospecting campaign, one retargeting campaign and one campaign for existing customers per platform, so the budget stopped splitting its own learning across near-identical audiences.

    Why: A consolidated account gives a much cleaner read on frequency and cost per purchase, which is exactly the visibility this account needed before anyone could tell a genuine auction problem apart from a delivery one.

  3. Confirm creative supply before any budget step

    We checked that at least six proven creatives were live across the consolidated campaigns before recommending any further increase, drawing on the hook library this same account had already built through creative testing.

    Why: Adding spend on top of two tired creatives is how frequency climbs and cost per purchase drifts up for reasons that have nothing to do with delivery. Confirming supply first removes one whole category of explanation before the fulfilment question is even on the table.

  4. Budget in steps, tied to what the warehouse can actually ship

    Instead of one large jump, we moved spend up in steps of roughly twenty percent, held for five to seven days, and checked the daily order count against the warehouse and van capacity before approving the next step.

    Why: This is the step that actually fixed the problem, because it treated the delivery fleet's daily capacity as a real constraint on the budget rather than an operational detail to sort out afterward. A step that outpaces fulfilment gets held rather than pushed through.

  5. Shape National Day and White Friday around a fleet ceiling, not a hope

    We pre-loaded the seasonal budget against a known maximum number of heavy-item deliveries the two-van fleet could complete per day, and planned for a contracted third-party courier to absorb the overflow above that number rather than letting orders queue silently.

    Why: Kuwait's seasonal peaks are predictable to the week even when the exact number is not, and planning the fleet's ceiling in advance turned a scramble in week two into a decision made calmly in week zero, before a single extra dinar was spent.

  6. Recognise the ceiling and grow average order value instead

    Once the fleet's daily capacity was clearly the binding constraint rather than the auction, we shifted part of the seasonal push from acquiring more new orders to raising the value of each delivery slot, through the food-and-litter bundle this same account had tested on the conversion side.

    Why: When every delivery slot is a fixed, scarce resource, the more valuable growth lever is what rides in the van, not how many vans are asked to leave the warehouse. This is the point where paid scaling and conversion work stop being separate projects.

What changed

The table above carries the figures once the client signs them off, and the shape worth flagging now is that cost per purchase stabilised at the new, higher spend level once budget steps were tied to fleet capacity rather than to the calendar. The auction was never as competitive as the second week's numbers made it look; most of that spike was cancelled and failed deliveries being counted as cost against sales that never completed.

Ad sets consolidated the way they should have been from the start, and frequency on the prospecting audience came down once the account stopped splitting its own budget across near-duplicate ad sets competing against itself in the same auction.

The more durable change was organisational rather than a number in a table: the media buyer and the warehouse now sit in the same weekly call before any seasonal budget step, which did not exist before this engagement and is the actual reason the next holiday push should not repeat the same mistake.

What we would do next

First, formalise the fleet-capacity check as a standing line in the weekly test log, alongside the usual ad metrics, so it never again depends on someone remembering to ask.

Second, cost out a third van against the marketing efficiency it would unlock during peak season specifically, since a fleet upgrade timed to Ramadan and National Day pays for itself faster than one added at a random point in the year.

take it and use it

Steal this

  • A rising cost per purchase at scale is not always an auction problem. Check fulfilment before you blame the platform.
  • A budget step should be sized to what your warehouse and vans can actually ship, not just what the account can absorb.
  • Put the media buyer and the warehouse in the same weekly call before any seasonal push, not after the first complaint.
  • When delivery slots are the scarce resource, grow order value instead of order count.

Frequently asked questions

When should a Kuwait pet supplies store increase its ad budget?+

Once conversions are tracked server-side, at least six creatives are performing, and — specific to this category — the warehouse and delivery fleet have confirmed they can complete the extra volume a bigger budget will generate. Miss the last one and the extra spend buys cancelled orders, not revenue.

Why does cost per purchase rise when scaling a pet supplies store around Kuwait's National Day or White Friday?+

Sometimes it genuinely is a more competitive auction, but check your delivery data first. A rising rate of late, cancelled or refused heavy-item deliveries during a spend increase shows up in the ad account as cost per purchase climbing, even though the real cause is fulfilment capacity, not the platform.

Which platform should a Kuwait pet supplies store scale on first?+

Whichever platform already has a proven creative and a tracked purchase, which for most pet supplies stores in Kuwait tends to be Meta and Instagram for the cat-owner audience, with Google search picking up brand-name demand for specific food and litter products people already know they want.

How many delivery vans does a growing Kuwait pet supplies store need?+

There is no fixed number, but the planning question worth asking before every seasonal budget increase is simple: how many heavy-item deliveries can the current fleet complete in a day, and does the ad spend being planned generate more orders than that. If the answer is yes, either the fleet grows first or a contracted courier absorbs the overflow.

Does consolidating ad sets actually reduce cost per purchase?+

It reduces the frequency problem that inflates cost per purchase, by stopping near-identical ad sets from competing against each other in the same auction and splitting the platform's learning. It does not fix a delivery-capacity problem sitting underneath, which is why this engagement did both at once rather than treating consolidation as a complete answer.

Same method, other categories

Want this run on your store?

Tell us where your store is now and we'll come back with the first thing we would test, and why.

WhatsApp us+965 51557699
Message us on WhatsApp