2026-07-13

Google Changed LSA Lead Scoring. Your Intake Flow Didn't

Google tightened Local Services Ads lead quality rules in late June 2026, and most HVAC contractors are now paying for leads they used to dispute successfully.

Google Changed LSA Lead Scoring. Your Intake Flow Didn't

Google rolled out stricter lead quality scoring and auto-disqualification logic for Local Services Ads in late June 2026. Contractors who relied on the old dispute process are now seeing rejection rates climb 30-50% and bleeding margin on leads that never convert.

The change is mechanical. Google now auto-disqualifies certain dispute types before human review, applies tighter definitions to "out of service area" and "not a real job," and penalizes accounts with high dispute-to-lead ratios. If your intake workflow was built around disputing bad leads after the fact, you're now paying for them.

This is not a platform problem. It's an infrastructure problem.

What Actually Changed

Google's update targets three areas:

Auto-disqualification triggers. Disputes flagged as "customer unresponsive" or "couldn't reach customer" are now rejected automatically unless you have call recordings that prove three contact attempts within 24 hours. Before, you could dispute these manually with lighter documentation.

Service area tightening. If a lead falls within your LSA service radius—even if you don't actually service that zip code operationally—Google counts it as valid. The old latitude for "we don't go there" disputes is gone. Your LSA radius and your actual service map must match exactly.

Dispute frequency penalties. Accounts that dispute more than 15% of leads in a 30-day rolling window now face higher scrutiny. Repeated disputes of the same type trigger manual audits. If your average dispute rate is above 20%, you risk temporary ad suspension.

The intent is clear: Google wants to reduce dispute volume by forcing operators to filter at intake, not after the charge posts.

Why Most Intake Flows Break

Most contractors built their intake process around speed, not documentation.

A typical flow looks like this:

  1. LSA lead comes in via call or message
  2. CSR answers, qualifies loosely, books or declines
  3. If it's junk, someone disputes it later in the LSA dashboard
  4. Repeat

This worked when Google's dispute review was lenient and human-led. It doesn't work now.

The new rules flip the burden of proof. You need contemporaneous documentation at the moment of intake to prove a lead was unqualified. That means call recordings tagged by outcome, CRM notes with structured data, timestamps on contact attempts, and service area validation before the booking is confirmed.

Most operators don't have that infrastructure. They have a phone line and a spreadsheet.

What to Build Now

The fix is not a better dispute script. The fix is a lead intake system that qualifies, documents, and routes in real time—so you never pay for a lead you can't defend.

Structured Qualification Script

Your CSRs need a checklist that captures the six data points Google uses to validate disputes:

  • Customer name and callback number (verified, not just captured)
  • Service address with zip code confirmation
  • Service type and scope (specific enough to match your LSA categories)
  • Requested appointment window (if they say "just browsing," that's auto-disqualified)
  • Confirmation that address is within your service area (checked against your internal routing logic, not just LSA radius)
  • Customer responsiveness (did they answer callback, did they confirm details)

This isn't a sales script. It's a data collection script that doubles as qualification. Every question maps to a dispute criterion.

If the lead fails any of these, the CSR flags it in the CRM with the specific failure reason before ending the call. That flag becomes your dispute evidence.

Call Recording and Tagging

You need recordings of every LSA lead call, tagged with outcome and reason codes.

Google's auto-disqualification logic now requires proof of contact attempts for unresponsive leads. If you claim you called three times and got no answer, you need three recordings with timestamps. If you don't have them, the dispute is rejected and you pay.

This means your phone system must:

  • Record all inbound LSA calls automatically
  • Log outbound callback attempts with recordings
  • Tag each recording with lead ID, outcome, and disposition code
  • Store recordings for at least 90 days (Google's dispute window)

Most operators use a generic VoIP provider that doesn't integrate with their CRM. That creates a manual tagging process that no one does consistently. The infrastructure needs to be automatic.

Service Area Validation

Google now treats your LSA service radius as your commitment. If you set a 30-mile radius but only service 15 of those zip codes, every lead outside your real coverage area is a chargeable lead you can't dispute.

You need two things:

A zip code whitelist in your CRM. When a lead comes in, the system checks the service address against your whitelist in real time. If it's outside, the CSR knows immediately and can decline (or quote a trip fee that disqualifies the lead as "price shopping").

LSA radius alignment. Audit your LSA service area settings monthly. If you stop servicing a region, shrink the radius. If you expand, update both LSA and your CRM whitelist. Misalignment costs you 10-20% of your LSA spend in uncharged but invalid leads.

Dispute Workflow in CRM

Disputing leads manually in the LSA dashboard is too slow and too disconnected from your intake data.

Build a workflow in your CRM that:

  1. Auto-flags leads that meet dispute criteria based on intake tagging
  2. Pulls the required evidence (call recording link, service address, contact attempt log)
  3. Generates a dispute submission with pre-filled reason codes and timestamps
  4. Tracks dispute status and rejection reasons for pattern analysis

This turns dispute management from a reactive admin task into a structured feedback loop. If you see a pattern of rejected disputes for "out of service area," you know your LSA radius is misaligned. If "customer unresponsive" disputes fail, you know your callback process isn't logging attempts correctly.

The CRM becomes the single source of truth for lead qualification, not the LSA dashboard.

The Margin Math

A bad lead costs you more than the LSA charge.

Assume:

  • Average LSA lead cost: $45
  • CSR time per lead (including callbacks): 15 minutes
  • Blended CSR cost: $25/hour
  • Dispatch/admin time to dispute: 10 minutes

A junk lead that you can't dispute successfully costs you $45 + $6.25 + $4.17 = $55.42.

If your dispute rejection rate went from 10% to 40% after the June update, and you generate 200 LSA leads per month, you're now eating an extra $3,325/month in unrecoverable costs.

Over 12 months, that's $39,900.

The infrastructure to fix this—structured intake scripts, call recording with tagging, CRM-based dispute workflow—costs a fraction of that to build and pays for itself in 60 days.

The Compounding Benefit

Most operators see this as a compliance problem. It's actually a conversion problem.

When you build intake infrastructure that captures clean, structured data at first contact, you don't just reduce bad lead costs. You improve conversion on good leads.

Here's why:

Faster qualification means shorter time-to-book. Leads that get scheduled in the first call convert at 3-4x the rate of leads that require callbacks.

Better data means better routing. When your CRM knows the exact service type, location, and urgency, dispatch can assign the right technician with the right inventory. That reduces reschedules and no-shows.

Documented contact attempts mean you can re-engage leads that went cold without wondering if you already called them twice. That turns 10-15% of "unresponsive" leads into bookings.

The same system that protects you from Google's dispute rejection also increases your lead-to-job conversion rate by 8-12%.

That's the infrastructure thesis. You're not building a dispute tool. You're building a lead-to-revenue system that happens to make disputes defensible as a byproduct.

What This Means for Operators

Google's LSA update is a forcing function. It penalizes operators who treat leads as a black box and rewards operators who instrument the entire intake-to-booking flow.

The contractors who adjust fast will see two outcomes:

  1. Lower cost-per-acquired-job (because they stop paying for junk)
  2. Higher conversion on valid leads (because the intake process captures better data)

The contractors who don't adjust will see margin compression, higher dispute rejection rates, and eventually, ad account penalties that force them off the platform.

This is not a temporary policy change. Google is moving toward algorithmic lead qualification across all its local ad products. The operators who build infrastructure now will compound the advantage for years.

The question is not whether to adjust your intake workflow. The question is whether you adjust it this month or after you've bled another $40k in unrecoverable lead costs.

lead qualitygoogle lsaintake workflow