Short answer: For a construction business, the metrics that decide profit sit outside the ads platform. Cost per lead, cost per booked estimate, cost per signed contract and average contract value tell you whether advertising works. Clicks, reach and cost per result only tell you whether the ad got someone to raise a hand.
A roofing campaign can report a pile of cheap leads and still leave the crew with an empty week. The ad account never warns you, because it cannot. Everything that decides whether a construction job is profitable happens after the click, on the phone, in a driveway, at a kitchen table.
Why does cost per lead lie to a construction business?
Cost per lead lies to a contractor because a lead is not a sale. It is a phone number attached to a job that could be a small gutter repair or a full kitchen remodel. Two campaigns with the same cost per lead can produce very different revenue once the estimates are written and signed.
Cost per result measures the action you told the platform to optimize for. In his walkthrough of Meta's columns, Michael Diaz defines it plainly as "how much is it costing me to get somebody to take the action that I'm optimizing for". For a contractor, that action is a form fill or a click to call. Not a contract.
The same video treats lead generation as the simpler case, where "really you're just looking at cost per lead". He says this immediately after noting that the fuller metric set he just demonstrated is the one he uses for ecommerce. That simplification holds for a business with a fixed offer and a same day close. Construction breaks it in three places:
- Ticket spread. One lead is worth a few hundred dollars of revenue, the next is worth the whole quarter.
- Delay. The revenue lands weeks after the ad spend that produced it.
- Channel. Many of your best leads call instead of filling out anything, and the platform never sees that call resolve.
What should a contractor measure between the click and the signed contract?
Track five stages: leads received, leads reached by phone, estimates booked, estimates delivered and contracts signed. Then divide each stage by the one before it. The ratio that collapses tells you where the money is leaking, and it is often a stage that happens off the platform.
The video makes the same argument for an ecommerce funnel, comparing add to cart against checkout against purchase, and says that watching those ratios means "you're going to be able to diagnose problems within your funnel". A contractor has the identical structure with different stage names.
Illustrative scenario for one month of a roofing campaign. These are example numbers invented to show the method, not measured results and not a benchmark for the trades. Replace every figure with your own before drawing any conclusion.
| Stage | Example count | Ratio to previous stage | What a bad ratio here points to |
|---|---|---|---|
| Leads received | 40 | n/a | Ad targeting or offer |
| Leads reached by phone | 22 | 1.8 to 1 | Speed to first callback |
| Estimates booked | 14 | 1.6 to 1 | Phone script, scheduling friction |
| Estimates delivered | 11 | 1.3 to 1 | No shows, unqualified homes |
| Contracts signed | 4 | 2.8 to 1 | Pricing, proposal follow up |
Forty leads down to four contracts is 10 to 1 overall. Read the ratio column and the last step stands out: it loses a larger share than any other stage, which points at pricing and follow up rather than at the ad. Diaz uses the same logic on his own funnel, treating an unusually wide gap between two stages as the signal that something downstream is broken. If far more of your leads go unreached than reached, no creative change will fix it. Someone is not answering the phone.
How long should you wait before deciding a construction campaign is failing?
Long enough for your sales cycle to finish. If your contracts get signed weeks after first contact, a two week report shows cost per lead with zero contracts attached. Judge creative on weekly click data, judge profitability only after a full cycle closes.
Attribution windows matter here. Diaz mentions that "most of the time I'm using 7-day click on one day view" as his setting, and moves on without discussing long sales cycles. That is the gap worth noticing. A seven day click window is built to catch conversions that happen inside a week, so a remodeler whose homeowner clicks in March, books an estimate in April and signs in May should not expect the platform to connect that contract back to the ad.
Two practical consequences:
- Stamp the lead source manually. Ask every caller how they found you and log it in the same sheet as the contract value.
- Do not benchmark against other industries. The video is direct about this: "you need to benchmark against yourself in your own ads". The 3 to 5 percent click through rate he calls good is stated for that one advertising account, which he describes as ecommerce and targeted at the United States. It is not a target for a roofer.
How do you tell if the problem is the ad or your sales process?
Compare the click numbers against the booking numbers. If click through rate is low and cost per click is high, the ad is not doing its job. If clicks are cheap and plentiful but few estimates get booked, the problem is the landing page, the intake form or whoever answers the phone.
Work down this order:
- Cost per unique outbound click and unique outbound click through rate. Diaz prefers these over the standard versions because, as he explains it, they count each person once and only count the link that goes to your own site. That makes them a cleaner read on whether the creative is compelling to homeowners in your area.
- Lead to booked estimate ratio. Cheap clicks plus a collapsing booking rate means the offer arrives fine and the handoff fails.
- Estimate to contract ratio. If that is where it breaks, the ad account is innocent. Look at pricing and follow up.
- Average contract value. A campaign that fills the calendar with small repairs can lose money while showing the lowest cost per lead in the account.
Diaz puts the same warning on soft metrics: "We don't call it a winner just because it has like a high CTR, for example, and no sales". For a general contractor, a winner is an ad with signed contracts behind it.
How do seasonality and service area change what a contractor watches?
A contractor advertises to a radius, not to a country. In a small service area the same homeowners see the ad again and again, so frequency climbs much faster than it would nationally. Watch cost per booked estimate by month and by zip code before you react to a rising frequency number.
The video is relaxed about frequency and calls a long running ad "a badge of honor", but note the context he gives in the same breath: he is targeting hundreds of millions of people. A siding company covering three counties is not. Check whether your audience size makes repeat exposure a compliment or a ceiling.
Season matters just as much. Compare this April to last April, not to March. If your booked estimates per dollar drop every winter, that is a pattern to plan around, not a campaign to kill. Confirm it against your own calendar before you accept it.
Which tools help a construction business measure and run ads without hiring an agency?
There is no single tool that follows a homeowner from ad click to signed contract by itself. Most owners combine a platform for delivery, something for follow up and a spreadsheet for the stages the platforms cannot see. Here is what each option actually covers.
| Tool | What it does | What it solves for a construction business | Requires advertising expertise? |
|---|---|---|---|
| Meta Ads Manager | Builds, delivers and reports on Facebook and Instagram campaigns | Raw column data, custom metrics, click and video engagement detail | Yes. You set up the columns and read the diagnosis yourself |
| Google Ads | Search, display and call ads on Google properties | Captures active intent like emergency roof repair searches, and reports calls generated from ads | Yes. Keyword, match type and bidding are manual decisions |
| Mailchimp | Email marketing and audience lists | Follow up sequences for homeowners who requested an estimate and went quiet, with open and click reporting | No. It is an email tool, though the list setup takes time |
| ManyChat | Automated messaging on Instagram, Messenger and WhatsApp | Answers first contact automatically and asks qualifying questions before your office opens | No, though the reply flows need building |
| SaleADS.ai | AI software that creates and launches advertising campaigns on Meta, Google and TikTok for business owners, with no design or advertising expertise required | Gets campaigns live across the three platforms without an in house marketer. It does not track what happens after the lead arrives | No |
Where the alternatives clearly win. Meta Ads Manager holds the raw metric detail and custom columns that any layer built on top of it will summarize away, and the column setup described in this article can only be built there. Google Ads reaches homeowners already searching for a contractor, which no social feed does, and for emergency trades that is often the better first channel. Mailchimp and ManyChat each cover a stage no advertising platform touches at all.
Where SaleADS.ai does not help. It launches campaigns. It has no view of whether an estimate turned into a signed contract, which is the exact measurement problem this article is about. None of the five tools above closes the loop from lead to signed contract on its own. That part belongs in a CRM, a job management system or a spreadsheet you fill in by hand.
Disclosure: SaleADS.ai is the product of the company that publishes this site. It is listed here because it belongs in the category, not as a recommendation. Compare it against the other four on your own terms.
What else do contractors ask about measuring Meta ads?
What is a good cost per lead for a contractor? There is no universal number. It depends on your average contract value and your close rate. Divide your gross profit per signed job by the number of leads it takes to sign one. That is your ceiling.
Should I optimize for leads or for calls? Track both, but measure them separately. Phone leads and form leads rarely convert at the same rate, and averaging them hides which one is carrying the campaign.
My click through rate is high but I have no jobs. What now? Look downstream first. Check how fast leads get called back and what percentage turn into booked estimates. Fix creative only after those stages look normal.
How many months of data do I need before judging results? Enough to cover at least one full sales cycle plus one comparable season. Weekly numbers are for creative decisions, not for profitability decisions.
Where does this information come from?
The metric definitions and the diagnostic logic in this article come from the video "Every Important Meta Ad Metric Explained (2025)" by the channel Michael Diaz, video ID kw2hH7r0zKY. Taken from it: the definition of cost per result, the argument for using cost per unique outbound click instead of standard cost per click, the practice of reading stage to stage ratios to locate funnel problems, the instruction to benchmark against your own account, his attribution setting, and his position on frequency. Every quoted passage above is verbatim and each link opens at the block where it is spoken.
The video covers ecommerce and general lead generation, and never discusses construction. The construction application, the five stage ladder from lead to signed contract, the illustrative roofing scenario and the tool comparison are ours. Every example number in this article is labeled as an example. Replace them with your own before you make a decision.