Pricing

Cost Per Booked Job

Turn lead spend and booking data into one defensible acquisition number, then use it to set a contractor marketing budget.

In this article

Cost per booked job is total source spend divided by the jobs that source put on your calendar. Unlike cost per lead, it carries lead quality and your conversion rate into one number. theBuildd publishes this article and sells exclusive, phone-qualified residential leads, 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

Divide net channel spend for a fixed period by the accepted jobs attributed to that channel in the same period. Net spend should include platform fees and management costs, less valid credits. Count jobs once, use one written attribution rule and keep estimate appointments separate from accepted work.

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.

Key takeaway

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

Price and evidence pages were checked on August 20, 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),” bluegridmedia.com/lsa-vs-thumbtack-vs-angi-contractors, published March 2026, updated June 4, 2026, and checked August 20, 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),” searchlightdigital.io/google-local-service-ads-cost-per-lead/, February 2026 dataset, checked August 20, 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 industry-wide or third-party estimates. 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

Most reporting disputes are denominator disputes wearing a finance costume. 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.

  1. Deduplicate customers. One homeowner contacting twice is not two booked jobs.
  2. Separate reschedules from new bookings. Moving a date does not create another acquisition.
  3. Lock an attribution window. Late-closing projects must follow the same rule across sources.
  4. 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,” support.google.com/localservices/answer/7195435, checked August 20, 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. Buying 12 jobs when the crew can serve six creates delays, poor reviews and working-capital pressure rather than useful growth.

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.

Trade wages show what a revenue-only ceiling misses

Acquisition spend is paid before a crew performs the work. That is why job revenue cannot serve as the acquisition ceiling by itself. Labor, materials, callbacks, vehicles, insurance and overhead still have to come out before the owner reaches profit.

The U.S. Bureau of Labor Statistics supplies a useful scale check for the labor line. Its Occupational Outlook Handbook reported these national median employee wages for May 2024:

Trade occupation May 2024 median annual wage What the figure can tell you
Roofers $50,970 Field labor has a material annual cost before other job expenses
HVAC mechanics and installers $59,810 A service or replacement booking must fund skilled labor as well as acquisition
Plumbers, pipefitters and steamfitters $62,970 Job value and money left after direct costs are not interchangeable

Sources: U.S. Bureau of Labor Statistics (bls.gov), Occupational Outlook Handbook pages for roofers, HVAC mechanics and installers, and plumbers, pipefitters and steamfitters; May 2024 wage data, checked August 20, 2026.

Those figures are employee wages, not customer prices, a fully burdened labor rate or a per-job cost estimate. Use the wages only as evidence that the labor line cannot be skipped. Use your own job-costing records to set the actual gross-profit input.

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 sends each residential homeowner lead to one buyer, locks territory by ZIP code and trade, and uses a five-person in-house call team to qualify before delivery. Leads arrive by text and email in under 10 minutes, and bad leads are replaced.

Those are process facts, not a close-rate or return promise. Typical volume is 10 to 15 qualified leads a week, depending on trade, territory size and local demand. theBuildd is not the fit for commercial projects, a guaranteed volume floor or buyers who want cash returned instead of a replacement.

Ask for the exclusivity boundary and replacement terms in the order you accept. Then measure the source with the same booked-job definition used everywhere else. Published contractor case studies can show how the process worked in named markets, but they should not be copied into your forecast.

A worked breakeven volume for the monthly plan

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 price, checked August 20, 2026
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

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.

See what theBuildd charges: one flat rate, no per-lead bidding

Frequently asked questions

What is cost per booked job?
The metric is the amount spent on one source during a defined period divided by the booked jobs attributed to that source. Define “booked” before reporting: an estimate appointment, an accepted project and a completed paying job are different stages and should never share one denominator.
How do I calculate booked-job cost from CPL?
Divide cost per lead by the share of leads that become booked jobs. A $40 CPL and a 20% booking rate produce a $200 booked-job cost. Use the decimal form of the rate, keep credits and fees in the spend total, and label the reporting period.
What is a good booked-job acquisition cost for contractors?
A good result sits below the acquisition ceiling created by your gross profit, capacity and acceptable payback period. There is no useful contractor-wide target. A $400 booked job can work for a high-margin replacement project and fail badly for a low-ticket service call.
Should I compare lead companies by cost per lead?
Use cost per lead to diagnose media pricing, not to choose a winner. The cheaper source can cost more per booked job when fewer leads convert. Compare sources using the same definition of booked, the same attribution window, total net spend and enough recent data to represent normal operations.
cost per booked joblead economicsmarketing budgetattribution
Written by

Sym

Founder, theBuildd

Sym founded theBuildd after a career in high-ticket sales on Wall Street, and now works alongside the in-house call team that qualifies every homeowner before a lead goes out. He writes about lead economics, speed to lead, and what contractors should ask a lead-gen company before signing anything.

Flat monthly rate

Want to know exactly what you are spending each month?

One flat rate, no per-lead bidding, no surprise invoices. Bad leads get replaced.

Team of 5 in-house callers · USA coverage · Exclusive by design