Cost Per Booked Job calculator: the number behind your lead cost
Calculate Cost Per Booked Job, compare it against the contribution one booked job can carry, and see what a platform lead report leaves out.
Calculate Cost Per Booked Job, compare it against the contribution one booked job can carry, and see what a platform lead report leaves out.
Google Ads can report leads. Your calendar records jobs. The distance between those two numbers is where the acquisition decision actually lives.
The short answer
Cost Per Booked Job is your attributable advertising spend divided by the number of attributable booked jobs. It is the number a platform lead report cannot give you, and it is the one you compare against the contribution a single booked job can carry.
Use the calculator below to estimate your cost per booked job, compare it against the contribution available from one job, and see what the platform report leaves out. It is built for owners: take the spend and lead counts from your ad report, and the booked jobs from your own calendar or job records.
Calculator
Enter one month of tracked numbers. This tool models your spend, leads, and booked jobs. It is not a profit report.
Ad spend for the same dates and campaigns as the jobs below.
State whether this counts all calls and forms or only qualified leads.
Only leads that met your written rule for a booked job.
Job price, not profit. Note if tax or refunds are included.
Money left from a job after direct job costs. Keep the same cost rule each month.
Management fee, tracking setup, or call tool costs you want to include.
Model output. Every number depends on the spend, lead rule, booking rule, and margin you entered.
Copied.
Cost Per Booked Job is the attributable advertising spend divided by the number of attributable booked jobs.
CPBJ = attributable advertising spend ÷ attributable booked jobs
Spend $2,800.00 and see 9 attributable leads become booked jobs, and the cost per booked job is $311.11. That is the advertising cost per booked job under the definitions used in the model.
The word booked carries the weight. A lead is a lead. A booked job is a lead that reached the outcome your business has defined as a booking: a confirmed date and time, an accepted work order, a signed estimate, a deposit, or a dispatched job. Different trades use different milestones. State yours before you calculate anything.
Cost per lead tells you what the platform paid for a lead. It does not tell you how many of those leads became booked jobs.
Cost per lead is still useful. It helps diagnose keyword cost, ad relevance, landing-page performance, and lead volume. It becomes a weak decision metric when it is reported without booked-job rate, service mix, revenue, margin, capacity, and follow-up alongside it.
If 42 leads produce 9 booked jobs, the booked-job rate is 21.4%. A $66.67 cost per lead becomes a $311.11 cost per booked job. The platform number did not lie. It answered a narrower question than the owner needed.
CPL = advertising spend ÷ attributable leads
An activity and efficiency measure at the lead stage. Define what counts as a lead before comparing periods or campaigns.
Booked-job rate = attributable booked jobs ÷ attributable qualified leads
The proportion of your chosen lead stage that became your chosen booking stage. It moves with service fit, geography, answer rate, follow-up speed, price, capacity, client intent, and the booking definition itself.
CPBJ = advertising spend ÷ attributable booked jobs
This connects advertising spend to the outcome the owner is actually trying to buy. It still does not prove profit on its own.
Compare it against the contribution available from one booked job, not against revenue.
Maximum allowable CPBJ = average revenue per booked job × incremental contribution margin
A contribution-margin acquisition threshold. Not a full-business break-even point.
For a $500.00 booked job at a 40% contribution margin, the modelled contribution is $200.00. A cost per booked job above $200.00 consumes more than that job’s modelled contribution before any other cost is considered.
Call that a contribution-margin acquisition threshold. It is not a universal break-even point for the business. Full break-even also depends on fixed overhead, owner compensation, taxes, financing, refunds, and cancellations. Revenue, expenses, profit, and break-even are distinct concepts, and gross profit margin is calculated from gross profit divided by sales revenue.
If you use gross margin, contribution margin, or another basis, name it. Do not switch the basis between campaigns and still call the comparison fair.
A business records $2,800.00 in attributable advertising spend, 42 attributable leads, and 9 attributable booked jobs, at $500.00 average revenue per booked job.
| Metric | Calculation | Result |
|---|---|---|
| Cost per lead | $2,800.00 ÷ 42 | $66.67 |
| Booked-job rate | 9 ÷ 42 | 21.4% |
| Cost per booked job | $2,800.00 ÷ 9 | $311.11 |
| Contribution per job at 40% | $500.00 × 0.40 | $200.00 |
| Maximum allowable CPBJ at 40% | Same as contribution per job | $200.00 |
| Contribution before advertising at 40% | 9 × $200.00 | $1,800.00 |
| Contribution after advertising at 40% | $1,800.00 − $2,800.00 | −$1,000.00 |
| Contribution per job at 60% | $500.00 × 0.60 | $300.00 |
| Maximum allowable CPBJ at 60% | Same as contribution per job | $300.00 |
| Contribution before advertising at 60% | 9 × $300.00 | $2,700.00 |
| Contribution after advertising at 60% | $2,700.00 − $2,800.00 | −$100.00 |
At both stated margins, a $311.11 cost per booked job sits above the modelled contribution threshold. The next question is not “how do I get cheaper leads?” It is whether the business can improve booked-job rate, average revenue, contribution margin, or campaign quality, without pretending the current result is profitable.
A $500.00 job is $500.00 of revenue. At a 40% modelled contribution margin it contributes $200.00, before the acquisition cost and before anything the margin definition excludes.
That distinction is not academic. Nine booked jobs at $200.00 of modelled contribution produce $1,800.00 before a $2,800.00 advertising spend. The result after advertising is negative $1,000.00.
Do not call that verified profit or verified loss unless the cost model includes the relevant costs. Call it the result of the stated contribution model, which is what it is.
A booked job should be a defined business outcome, not a hopeful reading of a platform event.
One business may define it as a new client with a confirmed date and time. Another needs a signed estimate, a deposit, an accepted work order, or a dispatched job. The right definition depends on the trade and on the decision the owner is trying to make.
Write the definition before you look at results, and keep these stages apart:
| Stage | What it means | What it does not prove |
|---|---|---|
| Impression | An ad was shown | Interest, lead, or revenue |
| Click | A person visited or interacted | A qualified lead or a booking |
| Lead | A lead was recorded | A booked job or revenue |
| Qualified lead | The request fits the service and basic criteria | A confirmed booking |
| Estimate or consultation | A sales step occurred | Accepted work or payment |
| Booked job | The defined booking commitment occurred | Completion, revenue, or profit |
| Finished job | The service was delivered | Margin, unless costs are known |
| Client-confirmed revenue | The owner confirms the revenue | Profit, unless margin and costs are modelled |
Some outcomes happen offline or over the phone. Offline conversion imports can measure what happens after a click or a call in the offline world, including a contract signed or a sale finished. Call conversion tracking covers calls from ads and calls to a website number, and imported call conversions let a business count calls against its own outcome criteria.
Enhanced conversions for leads can use user-provided data to supplement imported offline conversion data. Google describes it as an upgraded approach intended to make reporting more durable and accurate. It does not remove the need for a clean booking definition or client confirmation.
The sequence is straightforward:
Where the setup and consent model allow it.
In the CRM or booking system, at the moment it arrives.
Qualified, booked, finished, or paid.
Only the outcome you defined in writing.
A call, form, WhatsApp message, or chat is a lead. It becomes a booked job when it reaches the definition you wrote before the review, not before.
A month that counts all calls is not comparable with a month that counts only new clients with a confirmed appointment. Keep the definition and attribution scope stable, or label the change where it happened.
Emergency plumbing, recurring pest plans, roof replacements, one-time cleaning, commercial painting, and mobile detailing do not share booking value, margin, or sales cycle. Compare like with like, or segment the report.
Media-only and all-in acquisition cost answer different questions. Show which costs are inside the model rather than quietly changing the numerator.
Revenue crossing advertising spend is not payback. Contribution or profit crossing spend is, and only at the margin and costs the model includes.
A single period gets distorted by seasonality, delayed bookings, cancellations, repeat clients, weather, capacity, or one unusually large job. Use a fixed test period matched to the trade, and state the evidence boundary.
There are four levers, and budget reduction is not one of them.
Improve lead quality. Tighten service, location, and intent alignment. Read the search terms and exclude traffic that does not represent a service the business sells. Google Ads supports broad, phrase, and exact negative-keyword match types in Search campaigns.
Improve booked-job rate. Check whether calls get answered, whether forms get followed up, whether service areas are accurate, whether prices or ranges are explained, and whether the business has capacity. Do not assume a universal answer-time multiplier or follow-up count. Test the process and record the outcome.
Improve average revenue or contribution. Package services, sell appropriate recurring options, reduce avoidable job costs, or improve pricing, but only where the business can deliver and document the change. A larger ticket at a lower margin is not automatically better.
Reduce avoidable acquisition cost. Separate materially different service lines, improve landing-page relevance, and stop paying for traffic outside the offer.
At the same time each month, export the attributable spend and platform outcomes, then reconcile them against the booking or CRM record.
Do not raise the budget by a fixed percentage just because the number came in below a threshold. Capacity, tracking quality, marginal demand, and the stability of the evidence get checked first.
| It can tell you | It cannot tell you on its own |
|---|---|
| The advertising cost per defined booked job | Whether the job was profitable, without a cost and margin model |
| Whether booked-job rate changed | Whether the booking will complete or be retained |
| Which campaign or service line is cheaper per booking | Whether a cheaper booking is more valuable |
| Whether spend sits inside a stated acquisition threshold | Whether the attribution is complete or fair |
| Where to investigate lead quality and follow-up | Whether the business has capacity to scale |
Your one-page monthly report
The platform report tells you what it counted. Your booking record tells you what happened after the lead. Count conservatively: an untracked job is upside, not proof.
Take the cost per booked job the calculator gave you and work backwards to a defensible budget with the Google Ads budget calculator. If the number came out higher than you expected, the fixed test period guide shows how to spend against it with a capped downside.
There is no universal good number. Compare it against the contribution available from the booked job, the capacity of that service line, the customer's repeat or contract value where you can verify it, and the costs your margin figure actually includes.
It can be a media-only form of customer acquisition cost, when the booked job represents a new customer and the numerator holds only advertising spend. A fuller acquisition model may add management, sales, software, tracking, and creative costs. State which scope you are using.
Cost Per Booked Job cannot be calculated, because the denominator is zero. Report the spend, the lead count, the qualified-enquiry count, and the booking count as separate facts, then investigate service fit, answer rate, follow-up speed, price, geography, and capacity.
Decide before the review, not after seeing the number. For a new-customer acquisition question, separate repeat customers from first-time bookings. For a retention or recurring-plan question, analyse repeat revenue on its own rather than mixing it into first-booking cost.
Only if your written definition says an accepted estimate is the outcome you are buying. A request for an estimate is not the same as an accepted estimate, a signed contract, a scheduled job, or a completed service.
Separate the cost per first booking or plan signup from the later revenue and retention record. Do not assign lifetime value to a plan until the business can verify the revenue and retention stages that value depends on.
Where the technical setup, consent, identifiers, CRM, and conversion definitions support it, offline conversion imports or enhanced conversions for leads can send deeper outcomes back to Google Ads. That improves the measurement path. It does not make weak source data reliable.
Payback needs a time series and a stated margin model. A single cost-per-booked-job comparison can show whether one booked job appears to carry its acquisition cost. It cannot establish a payback date when revenue is delayed, recurring, refunded, cancelled, or incomplete.
The form sends your details to me by email. I reply personally.