In this article
Cost per booked job is source spend divided by attributed jobs at a clearly defined booking stage. In this guide, a booked job means accepted work, while an estimate appointment is reported separately. theBuildd publishes this article and supplies exclusive residential opt-ins with optional monthly dispatching, so treat our buying advice as disclosed vendor guidance.
That disclosure matters because the number can make a monthly budget look sensible or indefensible. It can also be manipulated by changing what counts as a booking, ignoring fees or crediting one channel for work another channel started.
Cost per lead stops one step too early
Cost per lead measures the price of an opportunity. It does not measure whether your office reached the homeowner, booked the work or collected revenue. Two sources can show the same CPL while producing very different calendars.
The useful conversion chain is longer:
| Funnel stage | Formula | What the number diagnoses |
|---|---|---|
| Cost per lead | Net source spend ÷ charged leads | Media or provider price |
| Cost per qualified lead | Net source spend ÷ serviceable leads | Targeting and qualification |
| Cost per booked appointment | Net source spend ÷ estimate or service appointments | Contact and scheduling |
| Booked-job cost | Net source spend ÷ accepted jobs | Lead quality and sales conversion together |
| Customer acquisition cost | Total acquisition expense ÷ new paying customers | Full acquisition economics |
Keep all five if your CRM can support them. Use the booked-job metric to compare lead sources, then use customer acquisition cost and gross profit to decide whether the winning source is actually affordable.
This distinction also fixes a language problem. Some teams call an estimate appointment a booked job. Others wait until the homeowner accepts the quote. Pick one definition, write it into the report and never change it between channels.
How to calculate cost per booked job
Group inquiries by acquisition source and buying period, then divide their net source spend by the accepted jobs attributed to that group through the reporting date. Include platform and management fees and subtract only actual monetary credits. A replacement lead is not a cash credit. Keep estimate appointments separate from accepted work and preserve the original source when a project signs later.
The base formula is:
Cost per booked job = net channel spend ÷ attributed booked jobs
If you have reliable CPL and booking-rate data, the equivalent conversion is:
Booked-job cost = cost per lead ÷ booking rate
Use the booking rate as a decimal. Dividing by 20 instead of 0.20 understates the answer by a factor of one hundred.
A labeled example
Assume a contractor spends $4,000 on one channel, receives 100 attributed leads and books 20 accepted jobs. These are illustrative inputs, not a benchmark or expected result.
| Measure | Calculation | Result |
|---|---|---|
| Cost per lead | $4,000 ÷ 100 leads | $40 |
| Booking rate | 20 jobs ÷ 100 leads | 20% |
| Booked-job cost | $4,000 ÷ 20 jobs | $200 |
| CPL conversion check | $40 ÷ 0.20 | $200 |
The two routes reach the same result. If they do not in your report, the spend, lead count, job count or attribution window is inconsistent.
If the group has no accepted jobs, the cost per accepted job cannot be calculated by division. Report the spend and zero outcomes; do not display a zero acquisition cost. Keep pending proposals visible without assigning them future revenue.
A CPL becomes decision-grade only after you carry it through a consistently defined booking rate.
Method used for this comparison
We compared published contractor lead-cost evidence at the point where a lead becomes a booked job. The review covered stated CPL, the conversion percentage paired with it, the funnel stage named by the publisher and any disclosed sample. Every displayed result had to be reproducible from visible inputs or raw totals.
The evidence check used four criteria:
| Criterion | What we required | Why it matters |
|---|---|---|
| Price traceability | A published CPL or enough spend and lead data to calculate one | Prevents a floating dollar figure from becoming a benchmark |
| Denominator clarity | A named booking, close or paying-customer stage | Stops unlike funnel stages from being treated as identical |
| Evidence context | A stated sample, source description or explicit limitation | Shows how far the figure can reasonably travel |
| Reproducible arithmetic | Visible inputs that produce the displayed result | Separates a checked calculation from a repeated claim |
The Google, BlueGrid and SearchLight evidence pages were rechecked on 23 September 2026. The underlying SearchLight dataset remains February 2026. Google documentation was used only for Google’s billing mechanics. BlueGrid Media and SearchLight Digital were treated as third-party benchmark publishers, not as independent audits of Google, Thumbtack or Angi.
We excluded figures that had no traceable source or usable denominator. We also kept “book rate,” “close rate” and “paying customer” separate whenever a publisher did. That evidence threshold is intentionally stricter than collecting every number repeated across ranking pages.
A cost per booked job benchmark is a starting point, not a target
There is no defensible contractor-wide average for this metric. Trade, job value, market, season, source mix and sales process all move it. Published figures can still help you pressure-test a budget, but only when their inputs and definitions travel with them.
Ask for the number, not the adjective. Then ask for its denominator.
One widely repeated 2026 comparison reports the following all-trade estimates:
| Channel | Reported CPL input | Reported rate input | Published booked-job cost |
|---|---|---|---|
| Google Local Services Ads | $52 | 31% | $168 |
| Thumbtack | $45 | 18% | $250 |
| Angi | $65 effective CPL | 12% | $542 |
Source: BlueGrid Media, “Angi vs Thumbtack vs HomeAdvisor: Best Leads (2026),” BlueGrid comparison, checked 23 September 2026.
BlueGrid says the figures reflect managed accounts and contractor feedback. It does not publish an audited platform dataset or enough sampling detail to turn them into universal industry averages. Treat all three as third-party estimates, not Google, Thumbtack, Angi or theBuildd performance data.
The labels need another caveat. BlueGrid describes the percentage input as both a booking rate and a close rate. Those terms can mean an appointment, an accepted job or a paying customer in different systems. The table is comparable only inside BlueGrid’s own model.
The published arithmetic checks out
The model converts CPL to the displayed figures cleanly:
- Google LSA: $52 ÷ 0.31 = $167.74, rounded to $168.
- Thumbtack: $45 ÷ 0.18 = $250.
- Angi: $65 ÷ 0.12 = $541.67, rounded to $542.
That proves the arithmetic, not the assumptions. A contractor with different CPL or conversion data should get a different answer.
A second LSA dataset produces a different view
SearchLight Digital reports $6.72 million of February 2026 LSA spend across 888 contractors and 126,650 leads. It gives a $53 blended CPL, a 43.9% book rate and a separate $233 cost per paying customer.
Source: SearchLight Digital, “What Is a Good Cost Per Lead for Google Local Service Ads? (2026 Benchmarks),” SearchLight LSA benchmark, February 2026 dataset, checked 23 September 2026.
Applying the booked-job formula to SearchLight’s rounded CPL and book rate produces about $121, not $168. Its $233 figure measures paying customers after a later CRM match stage. Different samples and funnel definitions create different answers even within one channel.
That is why a published benchmark should never be pasted into a budget without its denominator. The honest 2026 view is a range of published methods, not one magic national average.
All figures in this section are agency-reported observations or estimates; they are not established industry-wide rates. None is theBuildd-specific data, and results depend on trade, territory, local demand, source settings and follow-up.
Build the conversion chain your CRM can defend
A useful report begins before the lead arrives. Give every source a stable label, capture the original source on the contact record and preserve it when the record becomes an estimate, job and invoice.
Track these fields at minimum:
- Source and campaign, without letting staff overwrite the original value.
- Gross spend, fees, credits and net spend for the reporting period.
- Charged leads, disqualified leads and the written disqualification reason.
- First-response timestamp, contact outcome and estimate appointment status.
- Accepted job date, quoted value, expected gross profit and eventual collected revenue.
Separate lead quality from sales execution. A high disqualification rate points toward targeting or qualification. A strong qualified-lead rate followed by weak booking points toward response, scheduling, estimating or follow-up. One blended CPL cannot tell you which problem you have.
The exclusive-versus-shared lead structure belongs in the same report because competition can affect the conversion stage without changing the invoice price. That does not mean exclusivity guarantees a better result. It means the source design is a variable worth recording.
Fix the denominator before you trust the report
Reporting breaks down when teams use different outcome definitions. Sales counts an estimate as booked, operations counts an accepted job, and finance waits for collected revenue. All three can be internally correct while the dashboard is useless.
Use one written rule such as: “Booked job means the homeowner accepted the scope and price, and the work entered the production or service calendar.” Then apply four controls.
- Deduplicate customers. One homeowner contacting twice is not two booked jobs.
- Separate reschedules from new bookings. Moving a date does not create another acquisition.
- Lock an attribution window. Late-closing projects must follow the same rule across sources.
- Reconcile to operations. The CRM total should match the jobs the scheduling system recognizes.
Google states that Local Services Ads charges for valid leads, with prices varying by location, job type, lead type and bidding mode. Its dashboard reports spend and leads, not your accepted-job definition. That last conversion still belongs to your CRM.
Source: Google Local Services Help, “How leads work,” Google lead documentation, checked 23 September 2026.
For another operational lever, review how quickly contractor leads should be called. Keep response time beside the channel result. Otherwise, a slow office can blame a source for conversion loss it created after delivery.
Set a ceiling from gross profit and capacity
The reported number answers “what did a booking cost?” Your budget needs a second answer: “what can a booking afford to cost?” Build that ceiling from job economics, not a marketplace average.
Work backwards from a job, not forwards from a budget.
Maximum acquisition cost per job = average gross profit per job × acceptable acquisition share
Consider another labeled illustration. If an average job contributes $2,000 of gross profit and the contractor chooses to spend no more than 20% of that gross profit on acquisition, the ceiling is $400 per booked job. This is a management assumption, not an industry rule.
If the business needs 12 additional jobs, the corresponding budget ceiling is $4,800: 12 jobs multiplied by $400. Capacity still comes first. Planning for 12 additional jobs when the crew can serve six creates a capacity gap even if the source performs as hoped. A budget does not guarantee those jobs.
The trade pages for roofing, HVAC, solar and other home-improvement work help frame why one blended target is weak. Ticket size, sales cycle and crew capacity are different by trade. Your own recent gross profit is the correct input.
Job revenue is not the acquisition allowance. Account for direct labor, materials and other job costs before deciding how much contribution can fund marketing and selling. Use your own job-costing records, then track completed work and collected revenue as well as accepted projects.
Flat-rate exclusive leads still need the same test
A flat monthly invoice removes per-lead bidding; it does not remove measurement. For a flat-rate source, divide the full monthly fee by accepted jobs attributed to that source. If bookings fall, the effective cost rises even though the invoice stays unchanged.
theBuildd supplies residential opt-ins to one buyer through its service, with territory agreed by ZIP and trade. Your team qualifies base-plan inquiries. Optional monthly dispatching adds callers and a live transfer or booked appointment handoff. Trial and weekly plans exclude dispatching.
Current pricing, checked 23 September 2026, includes a $300 trial for 4–7 opt-ins, $800 weekly and monthly lead plans from $3,000. The base monthly dispatching add-on is $500. Include any selected add-on in the spend used for your calculation.
Volume depends on trade, territory and local demand. Bad leads are replaced rather than refunded under the agreed terms. An exclusive inquiry does not guarantee a job or stop the homeowner seeking other estimates independently.
Measure the source with the same booked-job definition used elsewhere. Published contractor case studies are first-party accounts of specific relationships; do not copy their results into your forecast.
How many jobs meet the chosen acquisition allowance?
This illustration combines one published price with two management assumptions. It does not predict bookings or promise a volume level.
| Named input | Value | Status |
|---|---|---|
| theBuildd Lead Generation monthly fee | $3,000 | Published base price, checked 23 September 2026; excludes add-ons |
| Average gross profit per accepted job | $2,000 | Assumption for this illustration |
| Acceptable acquisition share of gross profit | 20% | Assumption for this illustration |
First calculate the assumed acquisition ceiling:
$2,000 assumed gross profit × 0.20 assumed acquisition share = $400 per accepted job
Then calculate the minimum whole-job volume needed to stay at or below that ceiling:
$3,000 monthly fee ÷ $400 ceiling = 7.5 accepted jobs, rounded up to 8
This is the volume needed to meet the assumed source-spend allowance, not the business’s overall breakeven point. Additional sales expense would require a larger budget or more outcomes. The check is $3,000 ÷ 8 = $375 per accepted job. At seven accepted jobs, the result would be $3,000 ÷ 7 = $428.57, which is above the assumed $400 ceiling. Replace both assumptions with the contractor’s own trailing gross profit and chosen acquisition share before making a budget decision.
Use the number to make a budget decision
Start with your own allowable acquisition ceiling. Compare every channel below it using net spend, one booked-job definition and one attribution rule. Then diagnose the funnel before cutting a source.
If CPL rose while the booking rate held, inspect pricing and targeting. If CPL held while bookings fell, inspect qualification, response time, estimating and follow-up. If both held while profit fell, the problem is job mix or margin, not lead acquisition.
Do not defend a budget with a published average alone. Defend it with your conversion chain, the source data behind each input, and a clear statement of what would make you reduce or expand spend. The guide to what contractor leads cost can help normalize quotes before they enter that model.
Compare the invoice before you model the jobs
See theBuildd's flat-rate plans, trial and replacement model, then run the fee through your own booked-job definition.