Skip to content
← Back to Blog

UTM, Call Tracking & Conversion QA for GBP/LSA (2025 Field Playbook)

Google Business Profile
UTM, Call Tracking & Conversion QA for GBP/LSA (2025 Field Playbook)

TL;DR: Add consistent UTMs to every GBP link, deploy dynamic call tracking with a clearly defined call flow, and run a weekly QA ritual. For LSA, capture Google’s proxy calls + form leads, mirror them into your CRM, and reconcile against booked jobs. If you can’t trace lead → booking → revenue, you’re guessing.

Quick Answer

  • GBP: Tag Website/Appointment URLs and every Post button with utm_source=google and utm_medium=gbp (or gbp-post). Always send clicks to the closest-intent page (Service + City or an Answer page).
  • Calls: Use one “main tracked number” on the site with DNI pools (dynamic number insertion) to attribute calls to pages, sources, and campaigns, while keeping NAP consistent on citations/GBP itself.
  • LSA: Google uses a forwarding number; export those call recordings/lead forms, assign outcomes in the LSA dashboard, and push to your CRM with revenue outcomes.
  • QA: Every week, audit UTMs, test numbers, spot-check recordings, and reconcile booked revenue to traffic sources.

Architecture Overview (Follow This Order)

  1. Plan identifiers: UTMs, number labels, source names.
  2. Wire numbers: Main line, tracking pool(s), after-hours, specialty lines.
  3. Install tracking: DNI script on site; click-to-call events; GBP link tagging.
  4. Route & record: IVR or hunt groups; recording disclaimers where required.
  5. Integrate: LSA → CRM; call tracking → CRM; form → CRM; calendar → CRM.
  6. QA: Weekly test calls, UTM link checks, outcome tagging, pipeline reconciliation.

UTM Template (Copy Exactly and Reuse)

FieldValueNotes
utm_sourcegoogleKeep lowercase, consistent
utm_mediumgbp (profile buttons) / gbp-post (posts)Distinguish posts from profile
utm_campaignyyyy-mm-[service]-[city] or yyyy-mm-[theme]e.g., 2025-10-water-damage-encinitas
utm_content[button] or [neighborhood]e.g., call, book, leucadia

Examples

  • /water-damage-restoration-encinitas/?utm_source=google&utm_medium=gbp&utm_campaign=2025-10-water-damage-encinitas&utm_content=call
  • /answers/how-long-to-dry-ceiling-encinitas/?utm_source=google&utm_medium=gbp-post&utm_campaign=2025-10-urgent-tips&utm_content=leucadia

Rule: The landing page must match the intent. For emergency queries, send to the Service + City page with a top-of-page CTA and phone. For education, send to an Answer page with next steps.


Number Strategy (NAP Safety + Measurability)

Do

  • Keep your official NAP number on GBP, citations, and printed materials.
  • Use dynamic numbers on your website only (via script) to attribute calls to source/page/campaign.
  • Set one “Site Main Tracked Number” (visible default when no DNI session applies) that forwards to your real line.
  • Label numbers clearly in your call platform (e.g., Site Main, GBR-Pest-Promo-Post, AfterHours Emergency).

Don’t

  • Replace the GBP phone with a vendor number that isn’t your real line (unless you set two numbers in GBP: primary = tracking number, secondary = real number—and you accept the maintenance/consistency risk). When in doubt, keep GBP’s primary as your canonical number.

Call Flow Blueprint (Reduce Missed Calls)

Inbound sources → Tracking layer → Routing → Outcomes → CRM

  • Sources: GBP Call button, GBP Posts, Website click-to-call, LSA phone, LSA messages, Organic pages, Ads.
  • Tracking layer: DNI pool (site), Google LSA proxy, dedicated numbers for specific campaigns if needed.
  • Routing:
    • Business hours: ring group (CSR → Dispatcher → Overflow).
    • After hours: live answer (vendor) or voicemail → urgent text alert to on-call.
    • IVR (optional): Service A / Service B / Emergency.
  • Outcomes: New booking, estimate set, voicemail, hang-up, spam/solicitations, repeat customer.
  • CRM: Create/attach contact, source, campaign, page, call recording link, quoted value, won value, job ID.

Installation Checklist (Website + GBP + LSA)

  • DNI script installed site-wide (staging + prod), pool sized to traffic (4–8 numbers/location to start).
  • Click-to-call events (tel:) tracked in GA/Tag Manager with source/page parameters.
  • All GBP URLs (Website, Appointment, Posts) include UTMs.
  • Post scheduler SOP includes a UTM field + landing URL field (reject drafts missing either).
  • LSA dashboard: team tags outcomes (booked, spam, bad lead) daily.
  • CRM mappings: source = google_gbp or google_lsa; campaign/content from UTMs; call recording URL stored.

30-Minute Weekly QA Ritual (Non-Negotiable)

  • Test two calls per line (business + after-hours); verify ring groups and recording.
  • Click two live GBP links (Website + latest Post); confirm UTMs and correct landing page.
  • Spot-check 5 recordings for script adherence (name, service, city, booking ask).
  • Reconcile LSA: tag outcomes for last week; export new leads to CRM.
  • Revenue tie-back: pull last week’s won jobs → confirm source, campaign, page.
  • Data hygiene: merge duplicates; fix missing UTMs or numbers.

Script Blocks (CSR Prompts That Raise Conversion)

Greeting (business hours)
“Thanks for calling [Brand], this is [Name]. Are you calling about [Service] in [City] today?”

Booking close
“We have [time window] today/tomorrow. I can get you booked now. What’s the best contact number and address?”

After-hours live answer
“We can dispatch first thing [tomorrow at time]. I’ll text a short prep list; may I confirm your address?”

Voicemail (short)
“You’ve reached [Brand]. Leave your city, service, and a callback number. We return urgent calls at [time].”


Lost Call Recovery SOP (Saves 10–20% of leads)

  • Missed call alert to Slack/Email with caller ID + page/UTM.
  • Call back within 5–10 minutes; if no answer, SMS:
    “This is [Brand]—sorry we missed you. We can help with [service] in [city]. Reply here or call [number].”
  • If no response in 1 hour, call again; if still no answer, leave voicemail and email if available.

LSA (Local Services Ads) Practicalities

What LSA gives you

  • A Google forwarding number, call recordings (region-dependent), and lead forms/messages.
  • A pipeline to dispute spam/invalid leads.
  • Optional booking integrations.

How to make LSA data useful

  • Daily tagging: booked / unqualified / spam with notes.
  • Export & push: connector or weekly export into CRM with source google_lsa and lead_id for reconciliation.
  • Revenue attach: when jobs close, update won value; report cost per booked job and ROAS.

Caveats

  • LSA number ≠ your NAP. That’s fine; it’s Google’s proxy. Your site and GBP keep your canonical/tracking numbers per the strategy above.
  • Running LSA + GBP Posts + Organic means multi-touch. Prefer position-based/data-driven attribution vs. last-click.

Example Routing Table (Small Multi-Service Shop)

SourceNumber shownRoute (hours)Route (after hours)Recording?CRM Source
GBP Call buttonCanonical NAPCSR → DispatcherOn-call vendor → VM + SMSYesgoogle_gbp
GBP Post button → pageDNI poolCSR → DispatcherOn-call vendorYesgoogle_gbp
LSA phoneGoogle proxyCSR → DispatcherOn-call vendorYes (if region)google_lsa
Website (organic)DNI poolCSRVM + SMSYesgoogle_organic
Ads (search)DNI pool (ad label)CSRVM + SMSYesgoogle_ads

Manager’s Dashboard (What to Watch Weekly)

KPITargetWhy it mattersAction if low
Answer rate (business hours)≥ 90%Leads convert when answered liveAdd seat; tighten ring group
Answer rate (after-hours)≥ 70%Emergencies need coverageAdd on-call vendor/live answer
Booked-from-GBPRising MoMProves profile & posts liftTune landing pages/posts
Booked-from-LSA≥ 20–40%LSA quality & scriptingTag outcomes; refine categories
Call-to-book rate≥ 55–70%CSR performanceCoaching via recordings
Spam/invalid rate< 20%Wasted time/costTighten categories/negatives
Revenue by sourceClear attributionBudget with confidenceShift to best ROAS

Troubleshooting (Symptoms → Root Cause → Fix)

  • Many GBP clicks, few calls → Landing page generic → Point to Service + City page; add phone at top; tighten copy.
  • High calls, low bookings → Scripting/scheduling friction → Train CSRs; offer next-available slots; shorten intake.
  • Call spikes, missing recordings → Misrouted lines/recording off → Audit routing; re-enable recording (comply with laws).
  • UTMs missing → Posts published without template → Lock a publishing checklist; reject drafts lacking UTMs.
  • LSA leads not in CRM → Connector failed/no owner → Assign daily owner; re-run export; backfill IDs.
  • DNI showing wrong number → Pool exhaustion/script conflict → Add numbers; load script earlier; whitelist in Tag Manager.

Privacy & Compliance Notes

  • Announce recording where required; add a line to your greeting.
  • Store recordings only as long as needed (QA/disputes).
  • Redact PII in shared transcripts.
  • Respect SMS opt-out; log consent in CRM.

One-Week Implementation Sprint

  • Create UTM template and enforce in posting SOP.
  • Provision DNI pools per location (start 4–8 numbers).
  • Tag all GBP links (Website, Appointment, Posts).
  • Map routing: hours ring group + after-hours backup.
  • Turn on recordings + disclaimers; train CSRs on scripts.
  • Connect LSA → CRM; set daily owner for tagging.
  • Build a manager dashboard (answer rate, bookings, source revenue).
  • Run the weekly QA ritual (calendar invites + checklist).

FAQs

Will dynamic numbers hurt my local SEO?
Not when used only on your website via script, while keeping your canonical number on GBP and citations.

Should I use a tracking number on GBP itself?
You can put a tracking number as primary with your real number as secondary, but it adds maintenance. Many keep GBP’s primary as the real number and rely on DNI for web attribution.

How do I track LSA form leads?
Export weekly (or use a connector) and push to CRM with google_lsa source, then attach revenue when jobs close.

What pool size do I need for DNI?
Start 4–8 numbers/location; add more if you see “number reuse” collisions.

What if multiple channels touch the same customer?
Use position-based/data-driven attribution; avoid last-click budgeting.


  • /blog/gbp-post-formats-that-drive-calls-2025/
  • /blog/local-landing-page-blueprints-2025/
  • /blog/map-pack-diagnostics-2025/
  • /blog/review-velocity-topical-coverage-2025/
  • /services
Book a Call
# (paste the full file above)