582 exclusive leads at a 10% close rate — $23,200 in booked revenue on $2,056 in ad spend.
a 3-month lead-generation campaign run across a lean 4-ad-set structure. the client closed 10% of the leads produced — 58 booked jobs at a ~$400 average job value — from a total spend under $2.1k.
the starting point
the client had tried shared lead-gen services before and been burned — the same leads sold to 3–4 competitors, low intent, high refund rate. they wanted exclusive leads, from their own funnel, that their sales process could actually close.
what we did
we skipped broad testing and went straight to a lean 4-ad-set structure informed by what already worked in the vertical. creative, copy, and audience were varied inside a tight budget so every dollar produced a qualified lead — handed off warm and pre-qualified so the client's sales process could focus on closing.
4 ad sets, 3 months, one outcome
a qualified lead. creative, copy, and audience variations tested inside a tight structure so budget went further per lead from day one. leads were handed off warm and pre-qualified — the client's sales process closed 10% into booked cleaning jobs.
full-funnel breakdown
- ad spend
- $2,056.48
- impressions
- 220,000+
- leads generated
- 582
- cost per lead
- ≈ $3.53
- close rate
- 10%
- booked jobs
- 58
- avg job value
- $400
- revenue generated
- $23,200
- roas
- ≈ 11.3x
before vs. after
- lead type
- shared, low-intent
- cost per lead
- $15–40
- close rate
- single digits
- control of funnel
- none
- lead type
- exclusive, pre-qualified
- cost per lead
- ≈ $3.53
- close rate
- 10%
- control of funnel
- owned end-to-end
swapping shared lead-gen for an owned meta ads funnel cut cost-per-lead by an order of magnitude and gave the sales team leads they could actually close.
notes: platform metrics pulled from meta ads manager. revenue uses the client-reported average job value and conversation-to-booking rate. figures presented for case-study illustration.