Setting Up Tracking for Home Service Lead Gen

Track calls, forms, and ROI by channel for plumbers, HVAC, and roofers. Call tracking, GA4 events, UTM rules, and CRM fields that make optimization honest.

If you cannot say which channel booked last month’s jobs, you cannot scale what works. Tracking does not need enterprise software — it needs discipline at the first phone ring.

This is the measurement backbone of the Lead-to-Close System — Nef installs tracking + CRM stages live within 14 days on Booked Job Machine engagements.

At a Glance

  • Track: Source, lead time, first response time, quoted, booked, revenue
  • Minimum tools: Tracking phone + CRM or Google Sheet + GA4 on website
  • Review: Every Sunday — Metrics dashboard or your sheet
  • Goal metric: Cost per booked job by source, not vanity clicks
  • Pair with: ROI calculator for spend scenarios
  • CRM: Seven stages from Lead-to-Close hub

What to Track on Every Lead

FieldWhy
Date/time receivedSpeed-to-lead analysis
SourceLSA, GBP, Google Ads, Meta, referral, yard sign
Service requestedQuote accuracy
ZIP / cityService area fit
First contact time + first_contact_methodHuman, SMS, or AI callback — for four KPIs
CRM stageNew lead → Contacted → Booked → Quote sent → Follow-up active → Won → Lost
Quoted amountPipeline value
Booked Y/NTrue conversion — booked job = calendar + address + source
Revenue (if booked)ROI by channel

Train whoever answers the phone to ask: “How did you find us?” and log it before hanging up.

CRM Stage Map (Minimum Pipeline)

Match the Lead-to-Close hub — no mystery rows:

  1. New lead — alert fired, not yet contacted
  2. Contacted — human or trusted auto-touch logged with timestamp
  3. Booked — appointment on calendar (date, time, address, source tag)
  4. Quote sent — estimate delivered; next follow-up date required
  5. Follow-up active — cadence running (days 2, 5, 10, 14)
  6. Won — job sold or completed
  7. Lost — reason required (price, timing, competitor, no response)

Field overlay: On visit complete, log on-site outcome — booked on truck, follow-up scheduled, or lost reason — before end of day. See On-Site Close.

Call Tracking Setup

Option A — Simple (free / low cost)

  • Google Voice or secondary line for GBP + ads only
  • Main office line for repeat customers
  • Weekly: compare call volume on tracking line vs CRM new leads

Option B — Scalable (paid)

  • CallRail, CallTrackingMetrics, or ServiceTitan/Jobber native tracking
  • Dynamic number insertion on website by traffic source
  • Record calls ≥60 seconds for coaching (Scripts)

Placement rules:

  • GBP → dedicated tracking number (shown on profile)
  • LSA → use Google’s provided number; do not swap arbitrarily
  • Google Ads call extensions → tracking number with conversion action
  • Website header → same number as GBP or DNI pool

Website & Form Tracking

  1. Install GA4 via Google Tag Manager or the gtag snippet on your own domain.
  2. Mark conversions:
    • Form submit (thank-you page or event)
    • Click-to-call on mobile (tel: link clicks)
    • Optional: booked job event from CRM webhook later
  3. Add UTMs to every non-Google link you control:
https://yoursite.com/ac-repair?utm_source=facebook&utm_medium=paid_social&utm_campaign=summer_tuneup

Keep a one-page UTM cheat sheet in your marketing folder.

Channel-Specific Notes

ChannelWhat to verify
LSALead export + dispute log; match to CRM
Google AdsConversion actions for calls (60s+) and forms
MetaPixel or CAPI + lead form CRM sync
GBPSeparate tracking number; profile insights vs CRM
Organic / referralAsk on every call; use “Other” sparingly
Structured How-To (great for SEO & AI answers)
  1. Create a Google Sheet or CRM pipeline with the fields table above.
  2. Provision one tracking phone number for GBP and website.
  3. Put that number on GBP, site header, and printed materials — keep ads platform numbers per their rules.
  4. Add GA4 to your site; confirm realtime shows your visit.
  5. Create one UTM link for your next email or social post as a test.
  6. Log every lead for 7 days without exception — including “walk-in” and referrals.
  7. Sunday: calculate CPL and cost per booked job per source in Metrics.

Weekly Review Template

Align with Monday huddle and four KPIs:

Week of [date]
—— Acquisition ——
Spend: LSA $___ | Google Ads $___ | Meta $___
Leads: LSA ___ | Ads ___ | GBP ___ | Other ___
Booked: LSA ___ | Ads ___ | GBP ___ | Other ___
Cost per booked: [channel] = spend ÷ booked
—— Lead-to-Close KPIs ——
Median response time (paid): ___ min (target <5)
Quote-to-book rate: ___% (booked ÷ quotes sent)
Written-quote % (in-person): ___%
New Google reviews: ___
—— Action ——
One fix this week: _______________
Scale / hold / cut [channel]: _______________

Common Mistakes

  • Different phone numbers on GBP, website, and truck — splits SEO and confuses customers
  • Counting “leads” without booked jobs — optimizes the wrong thing
  • No lead source field in CRM — defaults to “phone” for everything
  • Ignoring LSA disputes — inflates reported CPL

Quick Win

Add a required “How did you hear about us?” dropdown in your website form and CRM today. Five options max: Google search, Google LSA, Facebook/Instagram, Referral, Other.

How This Fits Lead-to-Close

Tracking and CRM stages power every step in the Lead-to-Close System. Without source tags and stage discipline, cost per booked job lies — even when CPL looks fine.

DIY vs done-for-you: Work with Nef Tracking Live guarantee — stages + attribution live within 14 days of kickoff.

Next Steps

Was this helpful?