Table of contents
In plumbing, the conversion is a ringing phone. About 78% of home service bookings still start with a call, rising to 85%–90% in emergency trades. That single fact is why plumbing attribution fails more often than ecommerce attribution: the money moves in a conversation nobody is measuring. Here are the 2026 numbers that decide where a plumbing budget should actually go.
Key Takeaways
- Only 52% of inbound home services calls are answered by a person; 38% of answered digital-marketing calls are real leads and 45% of those convert on the call.
- Advertisers under-report paid conversions by an average of 38.4%, but local services show the smallest gap at -22%.
- Full server-side tracking recovers 71% of the lost signal; standard client-side GA4 recovers 8%.
- Last-click overstates paid search for contractors by 40%–60% against a journey of 7–12 touchpoints.
- Home services missed-call rates run 20%–30%, and 85% of callers who do not reach a person never call back.
- A $55 Local Services Ads lead at a 65% booking rate is an $85 cost per booked job; a $30 shared marketplace lead at 25% costs $120.
Plumbing attribution benchmarks at a glance
These are the six numbers we check before touching a plumbing account. Every one of them sits between ad spend and revenue, and every one of them is invisible inside a standard ad-platform dashboard.
| Metric | 2026 benchmark | What it is counting | Source |
|---|---|---|---|
| Bookings starting as a phone call | 78% (85%–90% emergency trades) | All US home service trades | CallJolt / industry aggregate |
| Calls answered by a person | 52% (73% on calls over 30s) | Inbound home services calls | Invoca 2026 benchmarks |
| Answered calls that are leads | 38% | Calls from digital marketing | Invoca 2026 benchmarks |
| Leads converting on the call | 45% (48% paid search) | Qualified phone leads | Invoca 2026 benchmarks |
| Missed-call rate | 20%–30% (40%–50% in peaks) | Total inbound volume | CallRail / Invoca aggregates |
| Reported vs actual conversions | -22% local services (-38.4% all sectors) | $18M of audited paid spend | Visionary Marketing 2026 |

The funnel that decides your ROAS happens on the phone
Run the Invoca benchmarks end to end and the arithmetic is brutal. Start with 100 marketing-driven calls: 52 reach a human, 38% of those are genuine leads (about 20), and 45% of the leads book on the call — roughly 9 jobs per 100 calls. The ad platform counted 100 conversions. The business counted nine.
The leak is not evenly distributed. Answer rates across home services sub-industries range from 32% to 74%, and 25%–40% of inbound calls arrive outside 8am–5pm, heaviest between 17:00 and 22:00 and on Saturday mornings. Plumbing carries the highest same-day demand share of the trades at 30%–45% of calls, so the after-hours window is exactly where the expensive jobs sit. And 85% of home service callers who do not reach a live person do not call back — they call the next result.
Two operational numbers turn this into money. Blended revenue per booked plumbing call runs $350–$750, and average CSR book rates sit at 65%–75%. At those figures each missed call carries an expected value of roughly $230–$490, which is why a shop missing 20 calls a week is losing a six-figure annual number before a single ad is optimised. Invoca estimates that lifting answer rate, lead rate and call conversion by five points each produces about 38% more conversions from identical call volume.
What is missing from your reports, and why local services get off lightly
The 2026 cookieless-tracking audit cross-validated $18 million of measured spend against revenue-platform data and found reported conversions in Google Ads and Meta Ads down 38.4% between April 2025 and March 2026 with no change in customer behaviour. Local services posted the smallest gap of any sector — short journeys, phone-based conversions and a 73% cookie-consent rate all help. That is the good news. The bad news is that 47% of surveyed marketers cut paid budgets because of declines that were partly reporting artefacts.
| Sector / setup | Reporting gap or recovery | What it means for a plumbing shop |
|---|---|---|
| Local services | -22% reported gap (smallest) | Your data is better than ecommerce; the gap is still a fifth of your conversions |
| DTC ecommerce | -47% reported gap (largest) | Do not import ecommerce panic into a local account |
| Full server-side tracking | 71% of lost signal recovered | Adoption is only 19% of brands — a real local edge |
| Partial server-side (CAPI only) | 41% recovered | Cheap first step for Meta-heavy accounts |
| Consent Mode v2 alone | 18% recovered | Compliance move, not a measurement fix |
| Standard client-side GA4 | 8% recovered | Where most contractor accounts still sit |
Feeding accurate conversion data back into the platforms is not only a reporting exercise: the same study measured 8%–18% lower CPCs on Google Ads and 31%–47% lower effective CAC for brands on validated server-side setups, because bidding algorithms optimise against real outcomes. Practitioner guidance on server-side setups puts client-side signal recovery at 65%–70% in high-consent markets versus roughly 90% with server-side tagging, at hosting costs from about $20/month.
Last-click is the most expensive default setting in the trades
Last-click gives 100% of credit to the final touch, which in plumbing is almost always search — the homeowner types "plumber near me" after weeks of passive exposure. Home services analysis puts the resulting overstatement of Google Ads at 40%–60%, while the average homeowner touches 7 to 12 brand moments before booking: a wrapped truck at a neighbour's house, a yard sign, a Google Business Profile with hundreds of reviews, a social post, then the click. One documented case had a contractor's "worst" channel acting as the first touch for 35% of its highest-value jobs.
| Model | How credit is split | Fit for a plumbing shop |
|---|---|---|
| Last click | 100% to final touch | Default everywhere; overstates search 40%–60% |
| First click | 100% to first touch | Useful sanity check on demand creation only |
| Linear | Equal share to all touches | Simple, honest starting point at low data volume |
| Position-based | 40% first, 40% last, 20% middle | Best default once call tracking is clean |
| Data-driven (GA4) | Modelled from observed paths | Needs volume most shops under $3M lack |
| Lead-source dropdown | One answer per customer | A 5-option dropdown cannot describe 7 touches |
The practical fix is not a model, it is a spine of first-party data. Capture the GCLID and lead form data at click, attach them to the CRM record, mark the record when the job is booked and again when it is paid, then push those outcomes back into the ad platform. Break the chain at step two and every downstream report is decoration.
Cost per lead ranks channels in the wrong order
Channel comparison in the trades collapses the moment booking rate enters the calculation. Local Services Ads leads cost more than shared marketplace leads and are worth multiples more, because they are exclusive and arrive with intent.
| Channel | Typical CPL | Booking rate | Cost per booked job |
|---|---|---|---|
| Local Services Ads (plumbing) | $53–$69 | 65%–80% | $79–$85 |
| Meta Ads (residential) | ~$45 | 25%–40% | $110–$180 |
| Performance Max | ~$82 | 40%–55% | $150–$205 |
| Shared marketplace leads | $30–$85 | 20%–30% | $120–$340 |
| Non-branded search | $183 | ~41.5% to booked job | ~$441 |
Reported non-branded plumbing search CPL of $183 looks catastrophic next to a $53 LSA lead until you note the $2,208 average ticket and 2.72x closed ROAS attached to it. Meanwhile LSA ROI modelling shows a $55 lead booking a $150 drain clean at about 1.7x gross revenue ROAS and the same lead booking a $6,500 tankless install at 118x. Any attribution setup that reports leads instead of revenue by job type will mis-rank every campaign in the account.

The five-step data chain that actually has to work
- Click identity captured. GCLID, wbraid/gbraid and UTMs stored on the lead record, not just in the analytics tool.
- Every source has its own tracked number. Dynamic number insertion on the website, distinct numbers on LSA, vehicle wraps, mailers and the Google Business Profile.
- Call outcome classified. Answered / missed, lead / not a lead, booked / not booked — this is where 84% of contractors lose the ability to state cost per lead by source.
- Job value written back. Booked value at scheduling, paid value at invoice, both keyed to the original click identity.
- Outcomes exported to the platforms. Offline conversion import and enhanced conversions for leads, so Smart Bidding optimises for booked jobs rather than raw calls.
Reported failure modes are mundane and expensive: platforms crediting eight calls where call tracking recorded two, forms that never reach the CRM, and duplicate conversions counted twice. Cross-checking reported conversions against revenue actuals at least quarterly is the cheapest control any shop above $1M in revenue can implement, and it is the same discipline our data intelligence work starts with.
Attribution windows and seasonality in plumbing
Emergency plumbing converts inside minutes; replacement work does not. A burst-pipe search becomes a call in under an hour, while water heater, repipe and sewer-line decisions run for days or weeks and get compared across three or four contractors. Running one attribution window across both makes emergency campaigns look efficient and replacement campaigns look broken.
| Job type | Decision window | Right conversion action | Reporting note |
|---|---|---|---|
| Emergency (leak, no hot water) | Minutes to hours | Answered call over 30s | Judge on answer rate, not CTR |
| Drain / minor repair | Same day | Booked job in CRM | Watch ticket mix, not lead count |
| Water heater replacement | 2–14 days | Booked estimate then paid job | Needs 30-day+ lookback |
| Repipe / sewer line | 2–8 weeks | Paid job value | Last click will under-credit demand creation |
| Maintenance plan | Ongoing | Recurring revenue flag | Report LTV, not first-job ROAS |
Seasonality compounds it. Northern-market emergency demand spikes in January, and missed-call rates climb to 40%–50% during those peaks — so the month with the best ad performance is also the month with the worst measured conversion rate. Anyone comparing month-over-month CPL without call answer data is reading staffing, not marketing. The same discipline applies to organic demand; our plumbing SEO benchmarks cover that side of the funnel.
What to report every week, and what to ignore
- Report: booked jobs by source, cost per booked job, revenue and gross profit per source, answer rate, missed calls by hour, average ticket by campaign.
- Report monthly: paid-job value by source with a 30–60 day lookback, maintenance-plan signups, review velocity, share of jobs from repeat customers.
- Ignore weekly: impressions, platform-reported conversion counts in isolation, CTR without call outcomes, and any dashboard that cannot name a source for a booked job.
Benchmarks for context: 69% of home services businesses saw CPL rise year over year (average 10.51%) and 75% saw CPC rise, so a flat cost per booked job in 2026 is a win, not stagnation. Comparable HVAC measurement patterns are covered in our HVAC attribution benchmarks, and the paid-side levers sit with our Google Ads team.
A 90-day attribution fix for a plumbing shop
- Days 1–15: tracked numbers on every source, dynamic number insertion live, UTM convention documented, baseline answer and missed-call rates measured by hour.
- Days 16–30: CRM fields for click identity, lead status, booked value and paid value; stop using a lead-source dropdown as the system of record.
- Days 31–50: offline conversion import into Google Ads plus enhanced conversions for leads; switch Smart Bidding targets to booked-job values.
- Days 51–70: after-hours coverage — staffing, overflow answering or an AI voice agent — aimed at the 25%–40% of calls landing outside business hours.
- Days 71–90: one weekly report keyed to booked jobs and gross profit; quarterly reconciliation of platform conversions against invoiced revenue; server-side tagging if paid spend exceeds roughly $13,000 a month.
None of this requires a new platform. It requires the phone, the CRM and the ad account to agree on what a job is worth — which is the whole job of attribution, and something our growth team sets up before touching bids.
Frequently Asked Questions
Why does plumbing marketing attribution break so often?
Because the conversion is a phone call, not a form. Roughly 78% of home service bookings still start with a call, and in emergency trades like plumbing that rises to 85% to 90%. Only 52% of inbound home services calls are answered by a person, 38% of answered calls from digital marketing are genuine leads, and 45% of those convert on the call. Every one of those steps happens outside the ad platform, so unless call data is pushed back into it, the platform reports call volume rather than revenue.
How much marketing data is actually missing in 2026?
A 2026 audit of $18 million of measured spend found advertisers under-reporting paid conversions by an average of 38.4%. Local services fared best at -22%, the smallest gap of any sector, because the journeys are short and consent rates are higher (73%). Brands with full server-side tracking recovered 71% of the gap; brands on standard client-side GA4 recovered 8%.
Should a plumbing company measure cost per lead or cost per booked job?
Cost per booked job, then gross profit per lead. A $55 lead at a 65% booking rate is an $85 cost per booked job; the same $55 lead at a 25% booking rate — typical of shared marketplace leads — costs $220. Cost per lead alone ranks channels in the wrong order because it ignores booking rate and ticket mix.
What does last-click attribution get wrong for contractors?
It hands 100% of credit to the final touch, which is usually branded or non-branded search. Published home services analysis puts the resulting overstatement of Google Ads at 40% to 60%, while the average homeowner passes through 7 to 12 touchpoints before booking. The channels that create demand — trucks, yard signs, radio, social, review pages — get credited at close to zero.
What is the minimum attribution stack for a $1M to $5M plumbing shop?
Call tracking with dynamic number insertion on every source, UTM discipline on every paid link, GCLID and wbraid capture stored on the CRM record, offline conversion import so booked and paid jobs flow back into Google Ads, and one weekly report keyed to booked jobs and revenue per source. Server-side tagging is the next upgrade, not the first one.
Sources
Invoca — Home Services Lead Conversion Benchmarks 2026
CallJolt — home service phone statistics
Visionary Marketing — cookieless tracking statistics 2026
PipelineOn — multi-touch attribution for home services
PipelineOn — contractor attribution statistics
PipelineOn — data source attribution techniques
Ainora — home service call statistics 2026
SearchLight — plumbing Google Ads cost per lead
BlueGrid Media — plumbing LSA ROI benchmarks
Praxxii Global — server-side tracking field guide
Cometly — missing sales data in Google Analytics


