Real numbers · Real businesses · Real receipts

Numbers we’re
willing to show.

Two of our roofing clients, named with their blessing. One of them on camera, talking you through his own numbers. Pipelines pulled straight from the CRM, ad accounts pulled straight from Meta. Two more anonymised accounts sit below. Every number is exactly what was reported, nothing inflated.

£0+
Client revenue generated, last 12 months
0×
Peak ROAS, 60-day window
0
From green light to live ads
Real names
Verifiable businesses, not blurred logos
Case 01 Roofing · Glasgow · First 60 days live

£97,000 closed.
First 60 days live.

A Glasgow roofing firm, brand-new to the system. We went live on the 9th of May, the first appointment booked on day one, and by the end of month two the lads had closed about £97,000 of work on £2,976 of ad spend. Around £60,000 of it landed in the first month. Paul sat down with us on camera to go through it, in his own words.

Paul Doolan and John Bell, TradeTech Roofing
Paul Doolan & John Bell
TradeTech Roofing
Moodiesburn, Glasgow
On camera · Paul, TradeTech
01 The interview · Paul on the first two months £60k in month one
£0k
Closed & confirmed, 60 days
0
Appointments booked
0×
Return on ad spend
£0
Total ad spend, two months

Full roofs since he left school. A mixed bag from marketing.

Paul Doolan has been stripping and re-slating roofs since he left school. TradeTech, the Glasgow firm he runs with John Bell, is set up for one thing: full roof replacements, with the fascias, soffits, guttering and leadwork that go with them. They are not a repair outfit, and lead sources that send repair jobs waste their time.

Paul had worked with lots of companies doing similar jobs to ours, with what he calls a mixed bag of results. He found us through a few searches and LinkedIn, did his own research, and liked what he saw. What tipped it was the backstory: our founder grew up on roofs, working in his dad’s roofing firm from age 11. Paul wanted someone who actually knew the industry. One intro call later, we took it from there.

The full system, switched on in three days.

  • Meta ads, multiple creatives tested. Real jobs and real faces from their own work across Glasgow and Lanarkshire, refreshed as the results came in.
  • A custom landing page with a quiz funnel. Roof type, postcode, urgency. Built to filter for the full roof replacements TradeTech actually wanted, so repair-hunters rarely reached the calendar.
  • AI follow-up on the backend. Replies in seconds at any hour, chased the non-bookers, and reactivated leads that went quiet.
  • The full CRM with the LeadConnector app. Paul and John talk directly to every inquiry from their phones, between jobs, not from a laptop in the evening.
  • Three days from onboarding call to fully live. The ads were running about 30 hours after they sent us their photos.

£2,976 in. About £97,000 back.

The first appointment booked on the very first day live. That lead priced up as a roofline job, then the lads found rot all around the roof once they got on site, and it turned into a substantial full job for TradeTech. They finished it just before we filmed, customer extremely happy.

Across the first two months the ads produced 58 leads on £2,976 of spend, £51 a lead. Of those, 38 booked appointments, roughly two of every three, at £78 an appointment. Paul puts around 90% of the leads as exactly what TradeTech want, most of them full roofs.

Month one closed at roughly £60,000. By the end of month two the total stood at about £97,000 of work won, a 32× return on the ad spend. The diary is now booked around eight weeks ahead, and Paul’s biggest problem has changed shape: he is deciding whether to come off the tools to keep up with the quoting. Asked on camera whether he would recommend this to other roofing companies in the UK, his answer took one word: “100%.”

The filter did the sorting. The system did the chasing.

  • The quiz matched the business. TradeTech only wanted full roof replacements, so the funnel filtered for them. That is why 9 in 10 leads were worth Paul’s time.
  • Speed from day one. Replies inside seconds and same-day booking turned the very first lead into the very first appointment.
  • Booked around the real diary. When the quoting stacked up we blocked out Wednesdays so Paul got his time back. The system adapts to the business, not the other way round.
  • A direct line to every lead. The LeadConnector app means Paul and John message inquiries from the scaffold. Nothing waits until the evening.
  • Honest expectations. Paul will tell you himself it is a proper outlay. He will also tell you, on camera, that the outlay is worth it.

Honestly, I’ve not had many bad leads. As much as 90% of the leads that are coming in are everything that TradeTech want. Most of them full roofs.

Paul Doolan · TradeTech Roofing · Glasgow
Case 02 Roofing · Northamptonshire · One-month window

28 booked appointments.
£60 each.

An established Northamptonshire roofer, 10+ years in. In a single month we put 28 qualified site visits on his calendar at £60 a time. A steady, predictable flow he can actually staff. No inflated revenue claim: the work is honest repairs, and the volume speaks for itself.

Zak Campbell, Ace Roofing Services
Zak Campbell
Ace Roofing Services Ltd
Wellingborough, Northants
0
Website leads
0
Appointments scheduled
£0
Cost per appointment
£0
Total ad spend
Meta Ads Manager Ace Roofing Meta Ads Manager, 28 April to 31 May, 14 ads, 32 website leads at £52.08 per lead, 28 appointments scheduled at £59.52 per appointment, £1,666.53 total spent
01 Meta Ads Manager · 28 April to 31 May £1,667 spent · 28 booked

Predictable site visits, no chasing.

A 10-year roofer who wanted a steady diary without spending evenings replying to enquiries. We gave him a system that does it for him.

  • Local Northamptonshire angles across 14 tested creatives: Northampton, Kettering, Bedford, Wellingborough.
  • A quiz funnel filtering for real repair & replacement intent before booking.
  • AI follow-up booking appointments around the clock, evenings and weekends included.

You’ve fully gained my trust and I’m really glad we chose to work with you. Really happy with the amount of site visits coming through. Thanks again for the fantastic service.

Zak Campbell · Ace Roofing Services · Northamptonshire
More in the vault

Two earlier accounts, anonymised at the client’s request. The deepest breakdowns we publish, kept here for the detail-hungry.

Case 03 Roofing · London · 30-day window

67 qualified quotes.
£72,260 in won revenue.

A London roofing company we’ve been running for a while. The numbers below are a single 30-day snapshot inside the relationship. 46 of the quotes came directly from the ads, 21 more from our backend AI and reactivation flows. All numbers pulled straight from the ad account and the live CRM.

0
Qualified quotes in 30 days
£0
Revenue won, same window
0×
Return on ad spend
£0
Effective cost per quote
Live CRM pipeline GoHighLevel CRM showing 28 opportunities in Job Confirmed and Booked stage at a total value of £72,260
01 GoHighLevel CRM · Booked-jobs stage £72,260 · 28 ops
Meta Ads Manager Meta Ads Manager 30-day report, 44,556 impressions, £4,224.15 spent, 482 link clicks, 109 leads, 46 appointments scheduled at £91.83 per appointment, 42.20% conversion rate
02 Meta Ads Manager · 30-day window · full breakdown £4,224 spent · 46 booked

A real business that wanted predictability.

An established London roofer with a real crew, real reviews, and a steady flow of word-of-mouth work. The business worked, but the lead flow was unpredictable. Slow weeks were really slow, and inquiries often went cold before he could reply, especially evenings and weekends.

He’d tried boosting posts, tried a freelance marketer, tried an agency. Bits of activity, no system. What he wanted was simple: steady booked jobs, on his calendar, without spending evenings chasing. We’ve been running his account ever since.

The full pipe. Front end and back end.

  • Meta ads, 15+ creatives tested. Local angles, problem-aware framing, same-day quotes. Static and short video. Refreshed weekly based on what was clicking.
  • Custom landing pages with a quiz funnel. Pre-qualified roof type, postcode, urgency, and budget range before we ever asked for a phone number. Filtered out tyre-kickers cleanly.
  • AI follow-up trained on his voice. Replied within seconds at any hour over SMS and WhatsApp, gathered missing details, and booked into his real calendar. No robotic templates.
  • Backend reactivation flows. Old leads, ghost leads, leads that never picked up the phone. The AI re-engages them weeks and months later. Roughly 1 in 3 quotes in this window came from the backend, not new ads.
  • GoHighLevel CRM mapped to his actual sales process. New lead → Booked appointment → Quote sent → Job confirmed and booked. Every lead in one place. Nothing in a notebook.

£4,224 in. £72,260 back. Plus 21 free quotes.

Inside this 30-day window, ad spend was £4,224. The ads brought 109 raw leads. The quiz qualified those down to 46 ad-direct booked quotes at £91.83 per quote.

On top of that, our backend AI and reactivation flows pulled 21 more quotes out of leads that had previously gone cold. Total: 67 qualified quotes, which works out to an effective £63 per quote on the same ad spend.

Of those, the team closed £72,260 of confirmed booked revenue. A 17× return on the ad spend in one window, and that’s before counting future months. The CRM screenshot above is the live state at the end of the period: 28 opportunities sitting in Job Confirmed and Booked at £72,260.

Not the ad. The whole system.

  • Intent over volume. The quiz cut the 109 raw enquiries down to 46 buyer-intent quotes. The crew never wasted time on bad leads.
  • The backend earned its keep. 21 of the 67 quotes came from leads we’d already “paid for” weeks or months ago. That’s 31% of revenue with no new ad spend behind it.
  • Speed and context. Replies inside seconds, with the lead’s answers already loaded. Most agencies hand you a phone number. We hand you a half-warm conversation.
  • No leaks at the routing layer. Instant alerts to the owner, deduplication on phone numbers, no double-handling. Zero leads lost in a Friday-evening blackout.
  • Local creative, not generic stock. Postcode-specific angles, real before/after photos from his own jobs. Cost per lead came down each week we tested.
  • Operational CRM, not vanity dashboards. Every stage tied to revenue. He opens the app at 7pm and knows exactly what’s outstanding.

Amazing results from you guys so far. Really impressed.

From the client · Roofing owner · London
Case 04 Roofing · London · First 37 days live

£22,630 closed.
Month one live.

A second London roofing client. Brand-new account, day one on the system. The numbers below are from the very first 37 days, with more sat in the active pipeline behind them. £22,630 of confirmed booked revenue closed in month one, on £1,740 of ad spend.

0
Qualified quotes in 37 days
£0
Won & confirmed, month one
0×
Return on ad spend
£0
Cost per qualified quote
Live CRM pipeline GoHighLevel CRM kanban, New Qualified Lead 8 ops £21,140, Booked Appointment 3 ops £9,450, Quote Sent 1 op £900, Job Confirmed and Booked 7 ops £22,630
01 GoHighLevel CRM · Full kanban, all stages £54,120 across stages · 19 ops
Meta Ads Manager Meta Ads Manager ad sets table, 6 ad sets, video and image, 28 Meta leads, £62.16 cost per lead, £75.68 cost per quote, £1,740.55 total spend across the period
02 Meta Ads Manager · Ad sets table £1,740 spent · 6 ad sets

A roofer ready to scale, no system to scale with.

A second London roofer with a real crew and real reviews, but no engine behind the lead flow. New homeowners would call when they called, and dead weeks were dead. He’d watched the first roofing case study, asked a few questions, and signed up.

His goal: predictable booked jobs from day one, not just a faster phone. We turned everything on at the same time, ads, quiz, AI, CRM, and let the first month tell the truth.

Video first. Quiz hard. Book on autopilot.

  • 10+ ads tested, video led. Real footage from his own jobs, walk-throughs, before/afters, owner-on-camera trust pieces. Video-led ad sets outperformed static on cost per lead by a clear margin in this account.
  • Quiz funnel that filtered hard. Roof type, postcode, urgency, budget bracket. Anyone outside the box never reached the calendar.
  • AI booking with same-day scheduling. When a qualified lead came in, the AI offered a same-day quote slot, confirmed details in the message thread, and pushed straight into GHL.
  • Full lead lifecycle in CRM. Every lead tracked across New Qualified Lead → Booked Appointment → Quote Sent → Job Confirmed and Booked. The kanban above is the live state at end of month one.

£1,740 in. £22,630 closed. Plus a stacked pipeline behind it.

Across the first 37 days, total spend was £1,740.55. The system produced 28 Meta leads, qualifying down to 23 real conversations at £75.68 per qualified quote.

By the end of month one, the kanban had £22,630 sitting in Job Confirmed and Booked across 7 won jobs. Quotes sent, booked appointments and qualified leads stacked further pipeline behind that, already in motion for the second month. He won every one of the 7 booked jobs in the window.

The video, the filter, the speed.

  • Video did the heavy lifting. Showing the actual finished work in his postcodes massively outperformed static creative. Cost per lead came down each week we tested.
  • The quiz pre-sold the slot. By the time someone hit the calendar, they’d already told us their roof type, their timeline, and their budget. Conversations started warm.
  • Same-day quote scheduling closed momentum. Lead-to-quote inside the same day, every day. No sitting in a CRM gathering dust.
  • Personalised lead-to-quote messaging. Each conversation tailored to the answers in the quiz. No copy-paste templates, no “Hi, I’m the owner” spam.
  • Recovery automations from week one. Industry-wide, around 46% of leads ghost between interest and booking. Even in month one, our follow-up sequence pulled chunks of that back.
  • Owner stayed on tools. He never had to filter, qualify, or chase. He walked into already-warm site visits while the system did the rest.

Exactly what I was looking for.

From the client · Roofing owner · London
And dozens more like it

The pattern repeats.
Across every account.

The case studies above are the deepest breakdowns we publish. The numbers below are pulled from a handful of other accounts we’ve run. Different niches. Different budgets. Same system. Same shape of result.

A collage of Meta Ads Manager screenshots from multiple client accounts. Cost per lead across accounts ranges from £19.21 to £49.01.

£19.21 / lead £24.38 / lead £30.40 / lead £36.80 / lead £49.01 / lead ·  The system holds across niches and budgets.

Want this for your company?

Same system.
Your account.

Two calls is all it takes to know if we can do for you what we did for these roofers. The first is a 15 to 20 minute intro on Google Meet. The second, only if we both want it, is a custom strategy and offer.

Start the questions No commitment. If we’re not a fit, we’ll tell you why.