Back to Blog

ServiceTitan + Google Ads: The Setup That Tells You Which Campaign Booked the Job

Pipeline Research Team
Blog

Key Takeaways

  • ServiceTitan customers report 40-60% wasted ad spend before Ads Measurement is configured correctly
  • Branded search campaigns average $34 CPL vs $149 for non-branded - the same contractor, 4x the cost difference
  • Heating repair campaigns tracked across 137 accounts returned a 3.69x closed ROAS with a $3,225 average ticket
  • Dynamic Number Insertion is the step most contractors skip - and without it, Google Ads and ServiceTitan cannot connect call data to any campaign

ServiceTitan contractors report an average of 50% wasted Google Ads spend - money gone before a single wrench turns. That waste almost always comes from the same problem: the tracking was never set up right in the first place. Fix the setup, and you stop guessing which campaign booked the job.

Why Does Google Ads Attribution Break for Most Contractors?

Most contractors connect Google Ads to ServiceTitan, see some data, and assume they are done. They are not done.

Connecting the accounts is step one. It does almost nothing on its own.

The attribution chain - from the ad click to the phone call to the booked job - only closes when Dynamic Number Insertion (DNI) is configured on your website. Without DNI, ServiceTitan has no way of knowing which campaign sent the caller. Your CSR has to ask “how did you hear about us?” and trust the answer, which is not a tracking system - that is a coin flip.

A plumbing contractor named Scott posted this exact problem on the ServiceTitan Community forum. He had tried Google Tag Manager and a WordPress plugin. Two support calls later, he was no closer to a solution. His line was simple: “I don’t have a web developer. I got plumbers.” He was hours away from scrapping the whole setup and falling back to CallRail. The DNI step is where the majority of ServiceTitan Google Ads integrations stall out.

What Does Proper ServiceTitan + Google Ads Tracking Actually Look Like?

When it is set up correctly, here is what happens in sequence.

A homeowner searches “furnace repair near me” and clicks your ad. Your website detects the traffic source and displays a unique phone number assigned to that specific campaign. The homeowner calls, ServiceTitan logs the call and ties it to that campaign, and when your CSR books the job, that revenue gets attributed back to the original ad - automatically.

No manual tagging. No guessing. No “how did you hear about us.”

Your ServiceTitan Marketing Pro dashboard then shows you cost per lead, cost per booked job, and revenue generated - by campaign, by ad group, even by keyword if you want to go that deep. That is the version most contractors never reach. Most are still flying blind.

How Much Are You Actually Wasting Without This Setup?

Based on data from ServiceTitan’s own Marketing Pro customers, contractors without proper Ads Measurement in place waste 40-60% of their Google Ads budget - with the average sitting right at 50%.

On a $3,000 per month ad budget, that is $1,500 a month funding clicks that never become jobs - or $18,000 a year, gone. LocaliQ analyzed 3,211 US-based home services search campaigns between April 2024 and March 2025 and found the average cost per lead for home services rose 10.51% year over year - more than double the 5.13% all-industry average.

You are already paying more for every lead. Wasting half the budget on top of that is not a growth strategy. Understanding why your Google Ads are not converting often starts right here - not with the ad creative, not with the landing page, but with broken attribution that hides where the real problems are.

What Does a Realistic Google Ads CPL Look Like by Trade?

Before you can measure waste, you need a benchmark. Here is what real data says.

SearchLight Digital tracked $14.9 million in Google Ads spend across 816 contractors and 8,077 campaigns in January 2026. Their numbers by campaign type:

Campaign TypeAverage CPLBook Rate
Branded Search$3455.3%
Performance Max$72Not broken out
Non-Branded Search$14937.6%
Water Heater Campaigns$343Not broken out
Blended HVAC / Plumbing Average$10441.5%

That $34 branded CPL is not magic - it is people who already know your name searching for you directly. They close at 55.3% because they already trust you. Non-branded is $149 per lead and closes at 37.6% because you are fighting for a stranger’s attention.

The contractors who run these as separate campaigns consistently outperform those who blend them together. SearchLight’s benchmark found that splitting “heating repair,” “plumbing,” and “AC install” into their own campaigns reduces CPL by 15-25% compared to broad combined campaigns. Google matches intent better when you give it a specific signal.

For context on HVAC specifically: HVAC CPCs run $12-$30 per click and roofing can hit $15-$35 per click, according to Digital Sprout’s September 2025 analysis. The average plumbing CPC is $9-$15. ServiceTitan’s Contractor Playbook spells this out directly: your CPL should be 5-10% of the average job revenue for that service.

A $4,000 furnace install means you can afford to spend $200-$400 on that lead and still make money. A $300 drain clean means you probably cannot spend $150 per lead and survive.

How Do You Know If a Lead Became a Paying Job?

This is the question Google Ads alone cannot answer. Google can tell you someone clicked and called. It cannot tell you if they booked, showed up, or paid.

ServiceTitan closes that gap - but only if the integration is built correctly. When DNI is active, the call gets tagged with the campaign source at the moment it comes in. Your CSR does not have to do anything differently. The data flows into ServiceTitan automatically.

From there, you can pull a report that shows campaign name, number of calls, number of booked jobs, total revenue from those jobs, and actual cost per booked job. Not cost per click. Not cost per call. Cost per job that put money in your pocket.

Heating repair campaigns tracked across 137 contractor accounts in SearchLight’s January 2026 benchmark generated a 3.69x closed ROAS with an average ticket of $3,225. That means for every dollar spent on heating repair ads, those contractors collected $3.69 in closed job revenue. That number is only calculable because the jobs were tracked back to the campaigns - exactly what ServiceTitan’s Ads Measurement makes possible.

If you are also thinking about what happens to visitors who do not call right away, tools that handle website visitor identification for contractors can catch the ones who browse and leave without converting.

What About the Leads That Call but Never Book?

This is where most contractors lose money and never know it.

LeadShutter’s 2026 guide for plumbers lays out the real math: plumbing leads from non-branded Google Ads cost $130-$180 each, and about 30-40% of those leads become paying customers. A $150 lead that turns into a $1,800 water heater installation is a good deal - a $150 lead that your office does not answer until the next morning is just $150 gone.

Speed to lead is a conversion problem, not a leads problem. The campaigns can be working perfectly and you can still bleed money if calls go unanswered or callbacks happen four hours later. Check your speed to lead process before you blame the ads.

For context on the unit economics: the median cost per paying plumbing customer from Google Ads in Q1 2026 is $333, with the 75th percentile at $576. If your average plumbing job is $1,500-$2,200, those numbers work. If your close rate is low or your average ticket is low, they do not.

How Much Should You Actually Spend on Google Ads?

ServiceTitan’s Contractor Playbook gives two benchmarks worth keeping on your desk. Spend 1-2% of revenue on PPC to maintain your current business level. Spend 3-6% of revenue to grow.

On $1 million in annual revenue, that is $10,000-$20,000 per year to hold steady, or $30,000-$60,000 per year to add jobs. Monthly, that is roughly $833-$1,667 to stay flat or $2,500-$5,000 to grow.

Those numbers only make sense if you are tracking what you get back. Without the ServiceTitan Ads Measurement setup, you are guessing at ROI. With it, you can see the actual return on every campaign and shift budget toward what is working.

Understanding how to track PPC leads that do not convert is the next layer - because some of your best future customers clicked your ad, saw your site, and left without calling. That traffic has value if you know how to work it. The broader decision of whether to run PPC at all versus investing in SEO is worth understanding too - the SEO vs. PPC breakdown for home service businesses lays out when each one wins.

Fixing the Attribution Gap Before Scaling Budget

Before increasing spend, make sure the foundation is solid. A contractor spending $2,000 per month with clean attribution data will outperform a contractor spending $5,000 per month with none.

The ServiceTitan website integration process covers the technical steps for getting DNI deployed correctly regardless of which website platform you use. Once that is live, every dollar you spend becomes accountable.

Many contractors also discover during this process that their website traffic is not converting at the rate they assumed. Attribution reveals the full picture - not just what Google reports, but what actually ends up as a booked job in ServiceTitan.

Frequently Asked Questions

How does ServiceTitan connect Google Ads to actual booked jobs?

ServiceTitan connects to Google Ads and Google Analytics to pull campaign data, but the connection to actual booked jobs requires Dynamic Call Tracking (DNI) to be active on your website. DNI assigns a unique phone number to each ad channel, so when a customer calls from a specific campaign, ServiceTitan logs the source automatically and ties it to the job record. ServiceTitan customers using Ads Measurement correctly report seeing exactly which campaigns generate revenue and which ones waste budget.

What is Dynamic Number Insertion and why does it matter for ServiceTitan?

Dynamic Number Insertion (DNI) is the piece of code on your website that swaps your phone number based on how a visitor arrived. If they clicked a non-branded Google Ads campaign, they see one number - if they clicked a branded campaign, they see a different one. ServiceTitan’s support documentation describes DNI as “the magic that makes it all work” - without it, simply connecting Google Ads to ServiceTitan accomplishes very little for attribution.

What is a realistic cost per lead for HVAC and plumbing Google Ads in 2026?

SearchLight Digital tracked $14.9 million in spend across 816 contractors in January 2026 and found the blended average CPL for HVAC and plumbing is $104. Branded campaigns average $34 per lead while non-branded search runs $149. Performance Max campaigns come in at $72 per lead on average.

How much Google Ads budget do contractors waste without proper tracking?

Based on data from ServiceTitan’s Marketing Pro customers, contractors without Ads Measurement configured correctly waste an average of 50% of their Google Ads budget - with the range running 40-60%. On a $3,000 monthly budget, that is $1,500 per month in spend that cannot be tied to any booked job or revenue.

Should I run one big HVAC campaign or separate campaigns by service?

Run separate campaigns. SearchLight Digital’s January 2026 benchmark found that splitting campaigns by specific service - “heating repair,” “AC installation,” “plumbing leak” - instead of grouping them under a broad “HVAC” or “plumbing” campaign reduces CPL by 15-25%. Google matches search intent more precisely when the campaign signal is specific, which means lower costs and better-quality leads.


Pull your last 90 days of Google Ads spend out of your account right now and count how many of those clicks you can tie to an actual booked job in ServiceTitan. If the answer is “I don’t know,” the DNI setup is missing and the money has been leaking. Start there today.