The previous agency was spending £1.22 to make £1.00.
We took the account over.
A multi site climbing gym in the English Midlands had been running Meta Ads through an agency for over a year. The sales campaign had returned £0.82 for every £1 spent. Eight months after we took it on, the same account returns £2.99, on a third less budget.
- Sector
- Local ecommerce
- Market
- Two sites, English Midlands
- Service
- Agency handover
- Period
- January 2026 - September 2026
Nothing was broken.
It was simply losing money.
This was not a broken account. The tracking worked, the pixel fired purchases with values attached, and the campaigns were optimising for sales. Everything a checklist would look for was in place. The account was simply losing money, quietly, for more than a year.
The sales campaign had spent £2,947.21 and returned £2,422.33. That is 0.82 back for every pound in. 76 bookings at £38.78 each, against an average order value of £31.87. Every sale cost more than it was worth.
Alongside it sat an engagement campaign that had produced 12,237 post engagements for £85.99. That number is genuinely impressive and means nothing. It was, as far as we could tell, the number being reported.
The structure explains most of it. One always on purchase campaign had been left running for over a year across multiple locations, with 16 ads in total. It had long since stopped learning, and nobody was giving it anything new to learn from.
A third less money.
Nearly three times the bookings.
Both columns are purchase optimised campaigns on the same account, selling the same thing to the same catchment. This is as close to a like for like comparison as an ad account gets.
A third less money. Nearly three times the bookings. Two and a half times the revenue. Cost per booking down 76 percent.
Full performance
under our management.
All campaigns, January 2026 to 7 September 2026. Source: Meta Ads Manager. Attribution: 7 day click, 1 day view. All figures in GBP.
| Metric | Result |
|---|---|
| Sales campaign spend | £2,002.08 |
| Tracked revenue | £5,989.62 |
| Return on ad spend | 2.99x |
| Bookings | 212 |
| Cost per booking | £9.44 |
| Average order value | £28.25 |
| Adds to cart | 459 |
| Enquiries from lead campaigns | 494 |
| Cost per enquiry | £2.02 |
| Campaigns run | 44 |
| Ads tested | 37 |
The first campaign we launched, on 15 January 2026, spent £134.14 and returned £640.62. That single campaign, in its first weeks, beat the return the account had managed across the whole of the preceding year.
The lead campaigns promoted a different offer to the previous agency's, so those two cost per enquiry figures are not directly comparable and we have not presented them as a before and after. The sales figures above are.
The account did not need rebuilding.
It needed to stop being left alone.
Four changes, none of them technical. The build was already competent. What was missing was somebody making a decision about it more than once a year.
We stopped reporting on things that are not sales
Post engagements, reach and cost per click are diagnostic numbers. They tell you why something is happening. They are not results, and when they get promoted to headline metrics the account drifts for months without anyone noticing it is unprofitable.
We replaced one always on campaign with short cycles
A campaign left running for a year is not a mature campaign, it is a stale one. Audiences fatigue, creative gets ignored, and the cost of a conversion climbs so gradually that no monthly report ever shows a bad month.
Running in short, dated cycles means every few weeks the account gets fresh creative, a clean read on what worked, and a decision. Losers get cut in days rather than quarters.
We split the sites
Two locations with different catchments, different demographics and different competitors were sharing one campaign and one set of creative. Whichever site was cheaper to convert absorbed the budget, and the other site's performance was invisible inside the blended number.
We led with an offer, and tested it properly
A first session offer lowers the barrier for someone who has never been climbing, which is the actual audience for a bouldering gym. The risk is obvious: a discount cuts the value of every sale. So it has to be tested rather than assumed, and judged on total revenue rather than on order value.
Here it worked, with a trade off worth naming. Average order value fell from £31.87 to £28.25. Booking volume nearly tripled, so revenue rose sharply on a smaller budget. Had volume risen less, the offer would have been the wrong call, and that is the calculation to run before launching one.
None of this is clever
The account was set up competently and then left to run, which is the most common way agency managed Meta accounts lose money. The work is in the weekly decisions, not the initial build.
What people ask us
before switching agency.
How do you tell if your Meta Ads agency is underperforming?
Look at return on ad spend and cost per acquisition, and compare the second against your average order value. If a booking costs more than a booking is worth, the account is losing money regardless of how healthy every other metric looks. Then check how many campaigns and how many distinct ads have launched in the last quarter. A small number is the warning sign, because it means nobody is testing anything.
Should you switch agencies or ask the current one to fix it?
Ask first, and be specific: request the return on ad spend and cost per acquisition for the last ninety days, and the number of new creatives tested in that period. A good agency will have those to hand. If the answer arrives as engagement, reach or cost per click, that is the answer to your question.
What does a healthy return on ad spend look like for a local gym?
It depends on margin and on how much a first visit is worth over time, so there is no universal number. What is not ambiguous is a return below 1.0, which means the ads cost more than they bring in and are only defensible if you have deliberately decided to buy first visits at a loss and have the retention data to justify it. Most local businesses running below 1.0 have not made that decision, they simply have not been shown the number.
Does an introductory discount hurt profitability?
It lowers average order value by design, so it only works if it raises volume by more than it costs you per sale. On this account order value fell around 11 percent while bookings nearly tripled, which made it clearly worth doing. That is a calculation to run against your own numbers rather than a rule, and it needs testing against non offer creative rather than assuming the discount is what drove the result.
Neither this client nor the agency that preceded us is named on this page, and the previous agency will not be named on request either. Every figure here comes directly from Meta Ads Manager and we are happy to walk through the live account, campaign by campaign, on a strategy call.
Get a second opinion on your account.
Not sure whether your ads are actually profitable? We audit the account, tell you what we would fix and in what order, and manage it month to month with no lock-in. If your current agency is doing fine, we will tell you that too.