Type "contractor leads" into Google and the autocomplete fills in "app," "services," "free." That's the tell: most contractors aren't looking for a strategy, they're looking for a faucet they can turn on. The problem is that most of those faucets — Angi, Thumbtack, HomeAdvisor, and the dozen clones that copied their model — sell you the same homeowner's name that three or four other contractors just bought. You're not generating a lead. You're renting a stranger's attention for a few minutes before someone faster answers the phone.
This piece breaks down both paths honestly: buying resold leads from a marketplace, and generating exclusive leads yourself on Meta. Real numbers, a real cost comparison, and the part nobody selling leads wants to tell you — that the lead source matters less than what happens in the first five minutes after the phone rings.
What "Contractor Leads" Actually Means (Bought vs. Owned)
There are two fundamentally different products hiding under the same phrase.
- Bought leads (marketplace model): A platform like Angi, Thumbtack, or HomeAdvisor collects a homeowner's project details, then sells that same contact to multiple contractors — usually 3 to 5 — who each pay a per-lead fee regardless of whether they win the job.
- Owned leads (you run the channel): You advertise directly to homeowners in your service area on Facebook or Instagram. The person who fills out your form or calls your number talked to you and only you. Nobody else got their name.
Neither is inherently good or bad. A marketplace lead can still close if you call back fast enough to beat the other three contractors. A Meta lead can still fail if your crew never answers the phone. But the economics are different enough that conflating them costs contractors real money every month.
How Lead Marketplaces Work — And Why It's a Race to the Bottom
Here's the mechanics most contractors don't see until they've paid for a few dozen leads. A homeowner fills out a form on Angi looking for "roof repair near me." That single form submission gets sold to however many contractors have paid for that category and ZIP code — often 3 to 5, sometimes more during storm season when every roofer in a 30-mile radius is bidding on the same leads. You pay $15-$95 for that lead depending on trade and job size, whether the homeowner ever answers your call or not.
Take a roofer in Tulsa, Oklahoma. He buys 20 leads a month from a marketplace at $60 each — $1,200 spent. Industry averages put shared-lead close rates at 8-15%, so he closes maybe 2-3 jobs. If his average roofing job is $9,000, that's $18,000-$27,000 in revenue against $1,200 in lead cost — which sounds fine until he realizes he's spending 3-4 hours a day calling leads that already signed with someone else, and his real cost-per-close, once you count wasted callback time, is closer to $400-$600 per job.
The deeper problem is structural, not just a bad month. Marketplaces are incentivized to sell each lead to as many contractors as the market will bear, because that's their revenue model. Nothing forces them to cap how many times a name gets resold. Your closing odds on any given lead are set by how fast you dial, not by how good your bid is — which turns lead marketplaces into a speed contest with a built-in tax.
Launch your first Facebook & Instagram ad in 2 minutes
Describe your business: the AI writes the copy, designs the visual, sets the targeting, and publishes your ad. Leads arrive with their phone number.
Try Leadria free7-day free trial — no credit card — cancel anytime
Generating Exclusive Leads on Meta: What It Actually Costs
Running your own ads on Facebook and Instagram flips the model. You're not buying a shared contact — you're paying to put your business in front of homeowners in your ZIP codes who are likely to need work done, and whoever responds is yours alone.
Cost per lead on Meta for contractors typically runs $50 to $120, and job size is the biggest driver of where you land in that range. A gutter cleaning or handyman-scale ad often generates leads at $40-$65 because the offer is low-commitment and the audience is broad. A kitchen remodel or full roof replacement ad runs $80-$120+ per lead because the audience is narrower (homeowners, certain home values, certain ZIP codes) and the decision takes longer, so fewer people convert on the first ad view. For a full breakdown of how CPL shifts by trade, see Facebook ads cost per lead by industry.
Take a remodeling contractor in Boise, Idaho, running $2,000 a month in Meta ads. At an average $90 CPL for kitchen and bath remodel leads, that's roughly 22 leads a month — all exclusive, none of them shared with a competitor. If he closes at a realistic 25% (exclusive leads close higher than marketplace leads because there's no competing call coming in ten minutes later), that's 5-6 jobs. At an average remodel ticket of $14,000, that's $70,000-$84,000 in booked revenue against $2,000 in ad spend.
That math only holds if the close rate holds — and close rate on Meta leads depends entirely on how fast you call and what you say when you do, which we'll get to below.
Marketplace vs. Meta Ads: Cost, Exclusivity, and Control
| Factor | Lead Marketplaces (Angi/Thumbtack style) | Meta Ads (self-run or managed) |
|---|---|---|
| Cost per lead | $15-$95, paid whether or not the lead answers | $50-$120, driven by job size and ZIP competition |
| Exclusivity | Shared with 3-5+ contractors, same name resold | Exclusive — only your business gets the contact |
| Typical close rate | 8-15% | 20-35% with fast callback |
| Who controls targeting | Platform decides category/ZIP matching | You choose ZIP codes, radius, and audience |
| Brand ownership | Homeowner remembers the marketplace, not you | Homeowner sees your business name and photos |
| Speed to first lead | Immediate — leads flow as soon as you fund the account | Usually 2-5 days after the ad launches and Meta's learning phase settles |
| Scalability | Capped by how many leads the platform has in your category | Scales with budget, up to your service area's population |
What the table doesn't show
The marketplace column has a hidden cost: your team's time. Calling 20 leads to close 2-3 jobs eats hours that a smaller batch of exclusive leads doesn't. The Meta column has a hidden requirement: someone has to actually build and manage the campaign, which is either you learning it (see how to advertise on Facebook yourself) or a tool that does it for you.
Real CPL Numbers by Job Size — Why $50 and $120 Are Both "Normal"
Contractors get frustrated when their CPL doesn't match a number they read somewhere, because "contractor leads cost $50-$120" hides a lot of variation. Here's what actually moves the number:
- Job size and ticket value. Small jobs (gutter cleaning, minor repairs, $150-$500 tickets) generate cheap leads, often $30-$55, because the ask is low and more people will fill out a form.
- Consideration length. A $25,000 whole-home remodel requires trust-building, so leads cost more ($90-$130) because fewer people convert immediately — they're comparing bids.
- ZIP code competition. Dense suburban markets with 8+ contractors bidding on the same audience push CPL up 20-40% versus a smaller metro with less ad competition.
- Season. Roofers and HVAC contractors see CPL spike after storms or heat waves when every competitor floods the same audience at once — sometimes 30-50% higher for 2-3 weeks. Roofing-specific numbers are in how to get roofing leads.
- Offer clarity. "Free estimate" ads generate more leads at a lower CPL than "schedule a consultation" ads, but the free-estimate leads convert at a lower rate because some are just price-shopping.
The honest takeaway: if your CPL is $110 for kitchen remodel leads and your neighbor's roofing company gets $45 leads, you're not doing worse — you're selling a different job.
Without Callback Speed and a Real Offer, Any Lead Source Fails
This is the section most lead-generation content skips, and it's the reason so many contractors bounce between Angi, Thumbtack, and Facebook without ever fixing the actual problem.
A lead — bought or owned — is worthless if nobody calls it back fast. Data across service businesses consistently shows that leads contacted within 5 minutes convert at 3-4x the rate of leads contacted after 30 minutes. On a shared marketplace lead, that math is brutal: if three other contractors are also calling, the 5-minute window isn't a nice-to-have, it's the whole game. On an exclusive Meta lead, you have more runway because nobody else has the name — but a lead that sits unanswered for two hours still cools off. Homeowners fill out multiple forms even when a lead is technically exclusive to you on the ad side; they might still call two other contractors they found elsewhere.
The second half of the equation is the offer. "Contact us for a quote" generates fewer, lower-intent leads than "Free roof inspection this week" or "$99 drain camera inspection, credited toward repair." A specific, time-bound, low-friction offer does two things: it raises response rate on the ad, and it filters for homeowners who are ready to move now instead of six months from now.
Put bluntly: a contractor with a mediocre lead source, a 2-minute callback habit, and a sharp offer will out-earn a contractor with a premium lead source, a same-day callback habit, and a vague pitch. The lead source is maybe 30% of the outcome. The other 70% is what you do with it.
When Lead Marketplaces Actually Make Sense
It's not all downside. Marketplaces solve a real problem for a specific contractor:
- You're brand new with zero reviews and no ad history. Marketplaces bundle in some trust (platform reviews, verified badges) that a brand-new Facebook page can't replicate on day one.
- You have idle crew time you need to fill immediately. Marketplace leads flow the moment you fund the account — no learning phase, no campaign build. If a crew is sitting idle this week, that speed has value even at a lower close rate.
- You do small, fast-decision jobs. Handyman work, small repairs, and low-ticket services where the customer just wants
