Why Your Ads Are Generating Leads But Not Booked Jobs

Here is the conversation we have with contractors more than any other.

The ads are running. The lead count looks fine. The dashboard is green. And then the owner says the thing that actually matters: "But we are not busier than we were six months ago."

That gap between leads and booked jobs is where most marketing budgets quietly disappear. It almost never gets fixed by spending more, because spending more just widens the gap. You end up paying for a bigger pile of the same problem.

Here is where the breakdown usually lives, in roughly the order we find it.

1. The leads are real, but they are the wrong kind of real

A lead is not a customer. It is a person who raised their hand. Whether that hand belongs to someone with a budget, a timeline, and a project inside your service area is a completely separate question.

Broad match keywords are the usual culprit. You bid on "roof repair" and you get people looking for a DIY patch job, people three states away, and people who wanted a roofing job rather than a roofer. The same thing happens with lead form ads on Meta, where filling out a form takes almost no effort and produces almost no intent.

What to do: pull your search terms report and read the actual queries people typed before they clicked. Not the keywords you chose. The queries. Most contractors find at least a quarter of their spend going to searches they would never willingly pay for. Add negative keywords, tighten match types, and cut the geography down to where your crews actually go.

If you want a second set of eyes on the account, that is exactly what our paid advertising work starts with.

2. Nobody called them back fast enough

This is the biggest one, and it has almost nothing to do with marketing.

Inbound leads go cold in minutes, not days. A homeowner who fills out a form at 2pm has usually contacted two or three other companies by 2:15. If your response window is "whenever someone gets back from the job site," you are paying to generate leads for your competitors.

The research on this is old and still brutal. Harvard Business Review's study of 2,241 companies found that 24 percent took longer than 24 hours to respond to a web generated lead, and 23 percent never responded at all. Among companies that did respond within 30 days, the average response time was 42 hours. The follow up analysis of 1.25 million leads found that firms attempting contact within an hour were roughly seven times more likely to qualify the lead than those who waited just one hour longer, and more than 60 times more likely than firms that waited a full day. You can read the full piece at Harvard Business Review.

What to do: someone owns the phone. Every new lead gets a call attempt inside five minutes, then a text, then a second call the same day. Not an email. A call. If nobody in the office can own that, an answering service or a simple routing rule beats a voicemail box every single time.

Speed to lead is a sales problem that looks exactly like a marketing problem on the dashboard, which is why it goes unfixed for so long.

3. The landing page promised something the sales call did not

If the ad says free estimate and the call opens with a $99 trip charge, you will lose the lead and you will have paid for it twice.

The same mismatch shows up with timeline, scope, and price range. When the ad copy, the landing page, and the sales conversation are not saying the same thing, the lead does not convert. They feel misled, which is worse than never clicking at all.

What to do: read your ad copy and landing page out loud, then sit in on three sales calls. If the two experiences do not match, you found your leak. This is usually a website fix, not an ad fix.

4. You are optimizing toward the wrong outcome

Most accounts count a form fill as a conversion and stop there. Google then optimizes toward form fills, because that is what you told it to value. It gets very good at finding people who fill out forms and very bad at finding people who sign contracts.

Feed booked jobs back into the platform instead. Google supports this directly through offline conversion imports and enhanced conversions for leads, which let you push closed deals from your CRM back into the account so bidding learns what a good lead actually looks like. Worth noting for anyone already running this: starting June 15, 2026, these uploads migrate to the Data Manager API and are blocked in the Google Ads API, so if your setup predates that, it needs attention.

Pair it with call tracking that records call outcome and not just call length. Without that feedback loop you are asking the algorithm to optimize blind.

5. Your follow up stops after one attempt

Plenty of good leads are not ready in week one. They are collecting three quotes, waiting on a spouse, waiting on insurance, waiting on spring.

If you call once, do not reach them, and move on, you wrote off a job that was probably still available six weeks later. A simple nurture sequence, a few emails and a check in text across the following month, recovers a meaningful share of leads you already paid for.

This is the cheapest revenue in your entire marketing budget and most contractors skip it entirely. It is also the easiest thing to automate, which is why email marketing tends to be the highest return line item we add to an account.

6. Nothing on the page makes you the obvious choice

When a homeowner collects three quotes, they choose on trust as much as price. If your landing page has no reviews, no photos of real completed work, no license information, and no explanation of what happens after they call, you are asking a stranger to take a risk on you.

Proof is not decoration. It is the thing that makes a lead answer the phone when you call back. Reviews, project photos, named service areas, and a plain description of your process all belong above the fold or close to it. You can see how we handle that across client builds in our portfolio.

7. You are winning the clicks but losing the ranking game underneath

Paid traffic converts better when the brand behind it looks established. Someone who clicks your ad, then searches your company name, then finds a thin Google Business Profile and no organic presence, hesitates. Paid and organic are not separate contests. Strong SEO makes every paid dollar work harder, because the second impression backs up the first one.

How to find your own leak

Work backwards through the numbers instead of guessing.

Take last month. How many leads came in? How many did you actually reach? How many turned into estimates? How many estimates closed?

Wherever the number falls off a cliff, that is your problem.

  • 40 leads and you only reached 12: the ads are doing their job and the phone is not.
  • Reached 30 and only 4 wanted an estimate: targeting or messaging is pulling in the wrong people.
  • Gave 20 estimates and closed 2: look hard at pricing, at how fast you deliver quotes, and at what your competitors are quoting.

Cost per lead tells you almost nothing on its own. Cost per booked job tells you whether the channel is working. A $40 lead that never closes is more expensive than a $200 lead that becomes a $14,000 project.

The uncomfortable part

Sometimes the ads really are fine. The targeting is tight, the copy is honest, the page converts, and the actual problem is that leads sit in an inbox until Thursday.

That is not a fun thing to hear from an agency, but it is the truth more often than not. Marketing fills the top of the funnel. What happens in the next fifteen minutes decides whether any of it was worth paying for.

If you want someone to trace where your leads are dying, from the search term all the way to the signed contract, get in touch. We will tell you straight, even when the answer is not something we can bill you for.

Ready to build a smarter
growth system?

Let's build a plan that fits your market, your goals, and your next stage of growth.

Let's Talk Growth