Skip to content

Google Ads for home-services businesses

Your account counts form-fills. I count booked jobs.

Most home-services accounts optimize for raw lead volume and ignore Local Services Ads quality, call tracking, and which leads actually became paying jobs. I wire booked-job data back into Google Ads so Smart Bidding learns which clicks produce work, and I treat the phone as a first-class conversion. I have documented this closed-loop method on a real-estate law firm I run. Same mechanism, retargeted to your trade.

01   The problem

Why most home-services accounts
are quietly losing money.

Here is what happens in most home-services accounts. The form on the website fires a conversion every time someone hits submit. Google sees a steady stream of conversions, so it bids harder on the keywords producing them. The dashboard looks healthy. Then you look at the calendar and the trucks are not full. The leads were tire-kickers, out-of-area, or price shoppers who never booked. Bad data leads to bad bids. Bad bids lead to wasted spend.

Two things make this worse in the trades. First, most of your leads call instead of filling out a form, and fewer than 30% of accounts have call tracking wired into Ads, so Google is optimizing on the smaller, weaker half of your lead flow. Second, the conversion that actually pays your crew is the booked job, and almost no account ever tells Google which clicks became one. So Smart Bidding chases form-fills and missed calls while the keywords that produce real jobs sit underfunded.

  • 40-60% of the leads most accounts pay for are unqualified
  • <30% of accounts have call tracking wired into Ads
  • Most home-services leads arrive by phone, not form
  • 1 conversion that matters: the booked job

02   The diagnostic

What I see in a typical
home-services account.

Six patterns, in priority order. Every account I audit has at least four of these. The fixes are sequenced, because some depend on the earlier ones being right.

  • Calls invisible to Ads

    Most home-services leads come by phone. Without dynamic number insertion and call tracking, those calls never reach Google. Smart Bidding optimizes on form-fills alone and starves the keywords that ring the phone.

  • Raw form-fills as the goal

    The account counts every submit as a win, including out-of-area requests, warranty calls, and people who wanted a different trade. Google bids up whatever produces the most submits, qualified or not.

  • Local Services Ads left on autopilot

    LSAs sit above Search and bill per lead, but most accounts never dispute bad leads, never tune the job types, and never reconcile LSA leads against booked jobs. You pay for leads that were never yours to win.

  • No booked-job feedback loop

    The CRM knows which leads became paying jobs. Google does not. Without an offline conversion import, the one signal that separates a real customer from a tire-kicker never reaches the algorithm.

  • Statewide or metro-wide geo

    Your crew drives a service radius, not a state. Broad geo-targeting spends on clicks from addresses you will not drive to, and on zips where your close rate is poor.

  • GA4 mistaken for ad grading

    GA4 shows behavior, not which campaign produced a booked job. Accounts that grade ads on GA4 events optimize toward pageviews and bounce rate instead of revenue, and the trends mislead every bid.

03   The playbook

What I do specifically
for home services.

Six moves in the first 90 days. Tracking first, because every other decision depends on the data being right. The full architecture lives in the Lead Quality Stack framework, and the question-by-question diagnosis is the Lead Quality library.

  1. 01

    Fix the tracking before touching a bid

    I start with the CLOSE Audit: CRM as source of truth, Lead-source capture, Offline imports, Signal swap to a qualified lead, Enhanced Conversions. Every record gets a gclid. Stages get timestamped. I confirm the data is clean before I change a single bid, because bad data leads to bad bids.

  2. 02

    Make the phone a first-class conversion

    I install call tracking with dynamic number insertion (WhatConverts or CallRail) so every call is attributed to the keyword and campaign that produced it. For most trades this surfaces more leads than the forms ever did, and Google finally sees your real demand.

  3. 03

    Tune Local Services Ads, not just Search

    LSAs run alongside Search as a separate lever. I set the job types and service area, dispute bad leads so you are credited, and reconcile LSA leads against booked jobs so the channel is measured on work won, not raw lead count.

  4. 04

    Swap the conversion to a qualified lead

    I move the account off raw form-fills to one primary conversion: a qualified lead. A misdial, a warranty call, and an out-of-area request stop counting as wins. Enhanced Conversions for Leads tighten the match so Smart Bidding learns from clean signal.

  5. 05

    Feed booked jobs back into Google

    This is the loop unique to lead-gen, and almost no account runs it. When a lead becomes a booked job in the CRM, that outcome is imported back into Google Ads as an offline conversion. It is roughly 50 lines of code and a Cloudflare Worker. Now Smart Bidding optimizes toward the clicks that fill your calendar.

  6. 06

    Run Search first, tighten geo, add Meta where it fits

    Search and LSAs carry high-intent demand, so they come first. I target the service radius and zips you actually drive, set tCPA against qualified leads, and layer Meta only where it earns its place. No statewide spray, no channel for the sake of a channel.

The compounding effect

Each move feeds the next. Clean tracking makes the phone visible. A visible phone plus a qualified-lead conversion gives Smart Bidding honest signal. Booked-job imports turn that signal into revenue grading. Once the loop is closed, the algorithm gets smarter every week on its own, because it is finally learning from paying jobs instead of form submits. That is the difference between an account that plateaus and one that compounds.

04   The proof

Real accounts in the trades.
One documented transformation.

Let me be straight about the proof, because it matters. I am not going to invent a home-services result or borrow a client's numbers to sell you. So here are two real things instead, and I will tell you exactly what each one is.

What I run in the trades right now

Across twelve of the home-services accounts I run, spanning HVAC, plumbing, electrical, roofing, fencing, septic, and landscaping, the last 90 days carried $70,142 in managed Google Ads spend. Cost per lead ran from about $70 on a septic account to about $260 on a roofing account, because the job value behind a lead is different in every trade.

Here is a real one, anonymized. One of those accounts, an HVAC shop, reported a conversion rate above 80% when I pulled it. Not because the account is brilliant. Because it was counting every phone interaction as a conversion. That is the loose lead counting this whole page is about, live in a real account. The number on the dashboard means nothing until the booked job behind it is wired back to Google. That is the work.

  • $70K

    Managed search, 90 days, 12 accounts

  • $70–260

    Cost per lead, by trade

  • 7+

    Trades I run paid search in

The full breakdown, cost per lead by trade across twelve accounts, is in my home-services benchmark report.

The documented transformation

What I do not have yet is a published home-services before-and-after with transformation numbers. The closed-loop method that produces them is documented, on a real-estate law firm I run. We cut ad spend by 50%, doubled qualified signups, and reduced cost per lead by more than 60%, inside 90 days. The full write-up is at /results/real-estate-law.

A law firm and an HVAC company look different on the surface. The lead-gen engine is identical. Both convert to a call or a form, not a checkout. Both have a CRM that knows which leads became paying work. The booked-job loop is the home-services version of the signup loop that produced those law-firm numbers.

  • 50%

    Law-firm ad spend cut

  • Law-firm qualified leads

  • 60%+

    Law-firm CPL reduction

05   Engagement levels

Three ways in.
Most shops start with tracking.

Every account I take on starts with a 30-minute call. I will tell you which package fits the shop. Pricing is directional. Actual quotes come on the call.

Tracking Sprint

The diagnosis and the plumbing. I run the CLOSE Audit, wire call tracking and the booked-job loop, and hand you an account that finally measures real work. This is the foundation everything else stands on.

from $2,500 / project

One-time project

  • The CLOSE Audit of your account and CRM
  • Call tracking with dynamic number insertion installed
  • Server-side GTM container and clean form validation
  • One primary conversion swapped to qualified lead
  • Enhanced Conversions for Leads configured
  • Booked-job offline conversion import wired (Worker + CRM webhook)
Start with the Sprint

Full Service Brand Program

The whole stack. Search, LSAs, Meta where it fits, and the booked-job loop maintained as your seasons and service area shift. For shops scaling across trades or markets.

from $8,500 / month

Ongoing · 6 month minimum

  • Everything in Lead Quality + Channels
  • Meta campaigns where they earn their place
  • Seasonal and emergency-vs-scheduled budget planning
  • Multi-location or multi-trade account structure
  • Offline-conversion loop maintained as the CRM evolves
  • Direct access. Same person on the call as on the keyboard.
Build the program

06   Trades

Where this fits best.
Each trade has a signature.

The lead-quality engineering is the same discipline across the trades. What a booked job looks like, and how the demand behaves, is different in each one. Six where I have run the playbook.

  • HVAC

    Emergency no-cool and no-heat calls spike with the weather and convert by phone. I weight call tracking and LSAs heavily, then separate emergency intent from scheduled installs so each gets its own budget and bid.

  • Plumbing

    Burst pipes and clogged drains are now-or-never phone calls. The booked-job loop matters most here, because a flood of urgent calls hides a wide spread in job value. Google needs to know which calls became real tickets.

  • Electrical

    Panel upgrades and rewires carry high job values that raw form-fills never reflect. Feeding closed values back to Google lets Smart Bidding chase the clicks that produce the bigger jobs, not just the most leads.

  • Roofing

    Long sales cycles and storm-driven demand make form-fills a poor signal. I track the lead to the signed job so seasonal spikes get funded on close rate, not click volume, and out-of-area leads stop draining budget.

  • Fencing and decks

    Quote-heavy and seasonal, with a gap between the estimate request and the booked install. I tie the booked job back to the original click so the account learns which keywords produce work that actually gets built.

  • Garage doors and remodeling

    Mixed urgent repairs and planned projects in one account. I split the conversion actions so a same-day spring repair and a six-week remodel are measured on their own terms, not averaged into one misleading number.

07   Fit

Who this is for.
Who it isn't.

Straight read on whether the engagement is going to land. If you fit the left column, book a call. If you fit the right column, the unit economics will not pay back the work, and I will tell you so on the call.

Who this is for

  • You spend $5K to $100K a month on Google Ads and the trucks still are not full
  • Most of your leads call, and you suspect Google is not counting them
  • Your CRM knows which jobs closed, but Google never finds out
  • You want LSAs and Search managed by one person who reads the booked-job data

Who this isn't for

  • ×You want a thousand cheap leads and do not care how many become jobs
  • ×You measure success by form-fills on a dashboard and want to keep it that way
  • ×You will not give access to the CRM or wire a webhook for closed jobs
  • ×You are looking for the lowest-cost vendor, not the best-measured account

Ready to talk

Stop bidding on form-fills.
Start bidding on booked jobs.

I will run the CLOSE Audit on your account, show you where the spend is leaking, and tell you honestly whether the booked-job loop will move the number. No agency layers, no account manager relaying messages. Same person on the call as on the keyboard. If it is a fit, we start with the Sprint and build from there.

Want the eight-layer architecture first? Read the Lead Quality Stack, or work the Lead Quality library question by question.

Or email hi@connercrowe.com.

Book a Call