How the math works
Cost per lead is your ad spend divided by the leads it produced. Booked jobs are those leads multiplied by your booked-job rate. Cost per booked job is the same spend divided by those booked jobs instead. Revenue is booked jobs times your average job revenue, and return on ad spend (ROAS) is that revenue divided by the spend.
If you add a gross margin, two more figures appear. Gross profit after ad spend is revenue times margin, minus what you spent on the ads: the money the campaign actually left you with before overhead. Break-even cost per lead is average job revenue times margin times booking rate, the gross profit an average lead is worth. It is the ceiling on what you can pay per lead.
Every figure comes from the numbers you type. There is no benchmark, no typical conversion rate and no assumption about what your trade "should" see.
Why cost per booked job beats cost per lead
Cost per lead is the number ad platforms and many agencies report, because it is the one they can see. It rewards the wrong thing. A campaign can halve its cost per lead by pulling in cheaper, weaker inquiries: people outside your service area, people after a job you don't do, people shopping for the lowest quote. The lead count goes up, the booked jobs don't, and the report looks better while the business does worse.
Cost per booked job can't be gamed that way. It only falls when more of the spend turns into work on the schedule, which is the only outcome you are paying for. It also puts the ads and the office in the same number: a campaign with good leads and a phone nobody answers will show a high cost per booked job, and it should, because that is what those jobs cost you.
What to do with the number
Compare cost per lead with break-even cost per lead. If there is plenty of room, the ads are working and the question is whether more budget would bring more of the same. If you are close to break-even or over it, look at the booking rate before the ad account: a few more booked jobs from the same leads moves every figure here, and it costs nothing in extra spend.
Run it for each channel separately if you can, since Google Search, Local Services Ads and Meta rarely perform alike. Our paid ads management is reported in exactly these terms, and cost per booked job, not cost per lead goes further into why.