Cost Per Booked Job: The Only KPI Restoration Marketing Should Report

Your agency report says leads are up and cost per lead is down. Your scheduling board says the crews are no busier. Both can be true, and only one of them pays payroll.

The fix is to make cost per booked job the headline number in your restoration marketing reporting. This post covers what the number is, how to track it, what to put next to it, and what to ask your agency for.

If you would rather have a restoration-focused team set this reporting up, talk to Restoration Inbound.

What Is Cost Per Booked Job in Restoration Marketing?

Cost per booked job is your total marketing cost for a period divided by the number of jobs booked from that marketing in the same period. Unlike cost per click or cost per lead, it counts only work your crews actually scheduled. That makes it the one marketing number you can hold up against job margin.

Two parts of that formula need a written definition before you start.

  • Total marketing cost. Include ad spend, lead fees, agency fees, and the call tracking or CRM tools you pay for to run the program. Leave something out and the number looks better than it is.
  • Booked. Pick one event and stick to it: a signed work authorization, or a crew scheduled and dispatched. “Someone called” is not booked. “They said they’d think about it” is not booked.

The exact definition matters less than using the same one every month. If it changes, you can’t compare one month to the next.

Why Cost Per Lead Misleads Restoration Owners

A lead is anything that makes the phone ring or fills a form. A booked job is something your crew drives to. The gap between the two is where restoration budgets leak.

The calls that inflate lead counts are familiar to anyone who has answered a restoration line:

  • Wrong service, such as plumbing or roofing questions
  • Outside your service area
  • Vendors and job seekers
  • Price checks with no loss behind them
  • Existing customers calling about a job in progress

An agency can also push cost per lead down by widening targeting or accepting lower-intent traffic. The report looks better while your close rate gets worse. Shared lead sources have the same problem, because the same water job is often sold to several crews. We break that down in our guide to buying shared water damage leads.

Weather adds another wrinkle. NOAA reported that the U.S. had 27 weather and climate disasters in 2024 that each caused more than $1 billion in losses, the second-highest annual count on record. Storm-driven demand can lift or sink a single month without any change in your marketing. That is a reason to judge cost per booked job over several months, not one week.

How to Track Cost Per Booked Job, Step by Step

You can do this with a spreadsheet or a CRM. The steps are the same either way.

  1. Write down your definition of “booked.” One event, one owner, same every month.
  2. Give every source its own phone number. Google Business Profile, Local Services Ads, Google Ads, and the organic website each get a tracked line, plus a separate form source for each.
  3. Log every call outcome. Booked, not booked and why, wrong service, out of area, missed. Someone has to own this. If you’re choosing software, our restoration CRM comparison is a starting point.
  4. Tie each booked job back to its source. When a job closes, the job record should say where the call came from. Ask the customer too, and compare their answer with the tracking data.
  5. Divide by channel and by period. Cost for the channel, divided by booked jobs from that channel, over a window long enough to smooth out one-off swings.

If water is your main line, our walkthrough on tracking cost per booked job for water damage leads goes deeper on that side.

Test the tracking before you spend

A dashboard can show tracking that looks set up. A test call tells you whether it works.

On a recent kickoff call for a water damage campaign, our paid-ads manager ran test form submissions and test calls on every landing page, with the client’s team on the line. The forms worked: every submission reached the CRM and the notification emails arrived. The calls didn’t. The first test call hit a “press 1 to connect” prompt, and the line said “no input detected, goodbye” and hung up. A homeowner standing in water would have been dropped the same way.

He switched the prompt off, called again, and it went through. He also noticed the tracking number wasn’t swapping in on the page and flagged the format of the phone link as the likely cause, so the developer could fix it. Only then was the campaign approved to launch.

If the tracking is broken, cost per booked job will be wrong from day one, and you won’t know. Make a test call on every number before you pay for a single click.

Which Numbers Belong Next to Cost Per Booked Job

Cost per booked job is the headline, but it needs supporting numbers so you can see why it moved.

Metric What it tells you Where it misleads
Calls by source Which channels are producing phone activity Includes wrong-service and out-of-area calls
Qualified calls How many calls were real, in-area, right-service jobs Depends on who is judging “qualified”
Booked jobs What the marketing actually turned into work Can lag the call by days on insurance-driven jobs
Cost per booked job What you paid for each job that reached your schedule Swings widely on low volume
Revenue or margin per booked job Whether the cost is worth paying Only as honest as your closed-job data

That last row is where forecasts go wrong. Use job values from your own closed jobs, not the number you wish your average ticket were. When we build forecasts, we cut an optimistic job-value input because it wasn’t the truth. A flattering input produces a flattering cost target, and then you overpay to hit it.

Start with qualified calls, then promote them

In the ad accounts we set up, a “qualified call” goal starts as a secondary goal. We promote it after a month or two of data. A new goal has no history to check against, so it takes real call data to know whether it is counting the right calls. Booked jobs stay the number you judge the program on.

Want your agency report to show booked jobs, not just clicks and leads? Talk to Restoration Inbound about reporting that follows the job.

Report Cost Per Booked Job by Job Type and Channel

One blended number hides the decisions you actually need to make. Split it by job type (water, fire, mold) and by channel (Maps, Local Services Ads, Google Ads, organic search).

The job types behave differently. Water jobs are often urgent and tied to insurance timelines. Mold decisions often hinge on what the homeowner is willing to pay, so they can take longer to book. Reporting them together can make a good mold channel and a weak water channel cancel each other out.

Here is a call we made for a newer restoration company. The owners told us they preferred water jobs. Mold is harder to close, and plenty of homeowners balk at paying out of pocket. The obvious move was to point all their ads at water.

We ran their market through our forecast first. In their area, paid search for mold came out clearly stronger than paid search for water. Mold jobs are also paid directly, not on an insurance company’s timeline. So one of our account strategists suggested splitting by channel instead of picking one service. Pay-per-click ads went to mold, aimed at the part of their territory where homeowners can afford the work. Water went through Local Services Ads and pay-per-lead, where its numbers made more sense. The owners were open to both and agreed the mold ads should focus on the higher-income areas.

The work you would rather do and the work your ad budget should chase aren’t always the same. You only find that out if your reporting is split by job type and channel.

What to Ask Your Agency to Report Every Month

Give your agency this list. A restoration-focused team should be able to hand most of it over without a fight.

  • Spend by channel, including management fees and lead fees
  • Calls and forms by source
  • Qualified calls, and how “qualified” is defined
  • Booked jobs by source, using your definition of booked
  • Cost per booked job by channel and job type
  • Average revenue or margin per booked job, from your own records
  • Access to call recordings and to the tracking accounts, in your name

Also ask what happens when the numbers are bad. A good agency tells you which channel is underperforming and what it plans to change, instead of burying it in a blended average.

There is a stage before booked jobs that deserves honest reporting too. For Pure Air North Carolina, we grew the account from 0 calls to 2–4 qualified calls per day within 90 days of campaign launch. That is a qualified-call result, not a cost-per-booked-job result, and we label it that way on purpose. It shows the step that comes before booked jobs, and it is the kind of number you should expect to see written plainly.

A reviewer identified as GM described working with us this way: “They understood the unique challenges restoration companies face and tailored strategies that delivered real, measurable results.” (GM, Google review, June 2025)

Mistakes That Make the Number Lie

These are the usual ways a cost per booked job report ends up wrong.

  • Leaving costs out of the denominator. Ad spend alone isn’t the cost. Count fees and tools.
  • Counting every booked job as marketing. Repeat customers, referrals, and program work don’t belong in the numerator unless that marketing produced them.
  • Judging after a week. With low call volume, one job moves the number a lot. Wait for enough data.
  • Changing the definition of booked. If it moves, last quarter’s number means nothing.
  • Blaming marketing for intake. If calls go to voicemail after hours or nobody follows up on a quote, cost per booked job rises with no change in ad performance. Fix the phone process first.
  • Skipping the test call. Broken tracking quietly sends jobs to “unknown source.”
  • Ignoring the rest of the plan. Cost per booked job sits inside a bigger budget decision. Our restoration marketing plan guide shows how the channels fit together.

What Is a Good Cost Per Booked Job?

We don’t publish a target number, and you should be wary of anyone who does without knowing your market. A good number depends on your job mix, your close rate, your average gross profit, and how competitive your service area is. Our own pricing depends on scope, too, and is set for each business.

What you can do is work backward from your own margin. Decide how much of the gross profit on an average job you are willing to spend to win it. That is your ceiling. Then compare channels against each other and against that ceiling, month over month. The trend, and the gap between your channels, is more useful than any outside benchmark.

Get a Booked-Job Report From a Restoration-Focused Team

If your current report stops at clicks, calls, and cost per lead, ask for the next layer. We build and report on owned channels for restoration companies: SEO, Google Ads, and Local Services Ads, tracked through to booked jobs. Contact Restoration Inbound and we will walk through how your current numbers connect to your schedule.

What is a good cost per booked job for a restoration company?

There is no single number that fits every company. It depends on your market, your job mix, your close rate, and your margin. Start with the gross profit on an average job and decide what share you will spend to win it. That is your ceiling. Then compare your channels against it and against each other.

How is cost per booked job different from cost per lead?

Cost per lead counts every call and form, including wrong-service, out-of-area, and price-check contacts. Cost per booked job counts only the jobs that reached your schedule. It is the stricter number, and it shows whether marketing spend turned into work for your crews, not just activity on your phone line.

How long should I wait before trusting the number?

Wait for several months of data before making big decisions, and longer if your call volume is low. With few jobs, one booking or one miss moves the number a lot. Weather-driven demand can also swing a single month, so look at a longer window and compare channels, not single weeks.

Can I track booked jobs without a CRM?

Yes. A spreadsheet works if someone logs every call with its source and outcome, and marks the source on each booked job. A CRM makes that easier as volume grows, because it ties the call, the quote, and the job together. The method matters more than the software.

Leave a Comment

Ready to talk?

Pick a time that works for you.

Book an appointment