Why does Google report more LSA leads than my CRM shows?
Because the two systems count different events at different moments. Google counts every billable contact, including repeat callers, second contacts from the same person, and leads your team never entered anywhere. Your CRM counts records someone created. Duplicates, disputed-but-still-listed leads, existing customers, and after-hours calls that died in voicemail all live in the gap. Reconcile by phone number over a wide window before assuming a tracking problem.
Rank the causes before you go hunting
In practice the gap is almost always some mix of these five, roughly in this order of size.
- Leads nobody entered. The single biggest cause. A call taken on a cell phone in the field, or one that turned into a “call us back in spring,” never becomes a record.
- Existing customers. A repeat customer who calls the LSA number is a new billable lead to Google and not a new anything to your CRM.
- Same person, multiple contacts. A message followed by a call is two Google leads and one human.
- Credited leads still visible. A disputed lead may still appear in the lead list even after the credit lands.
- Timing. Google stamps the contact; your CRM stamps the record creation, which can be the next morning or the next week.
Reconcile on the customer, not on the count
Export the lead list with phone numbers and timestamps. Match against customer and job records over a window of at least sixty days. Classify each Google lead as matched to an existing customer, matched to a new customer, or unmatched. The unmatched pile is your actual problem, and it is usually smaller and more specific than the raw gap suggested.
Then look at what the unmatched leads have in common. If they cluster after hours, it is a coverage problem. If they cluster with one CSR, it is an intake discipline problem. If they cluster in particular ZIPs, it is out-of-area traffic you should be disputing and excluding.
Fix intake at the source, not with a reconciliation report
A monthly reconciliation that finds thirty missing leads is thirty leads you already lost. The durable fix is automatic creation of a lead record when Google reports the lead, before anyone has a chance to forget — the LSA lead identifier written onto the record so the join stops being a guessing game later.
That is straightforward API integration work into ServiceTitan, Jobber or whatever holds your jobs, and it pays for itself in recovered follow-up long before it pays for itself in cleaner reporting.
The number to publish
Once reconciled, publish match rate alongside every LSA revenue figure. “Sixty-one leads, forty-eight matched, revenue reflects the matched set” is a sentence that survives a hard question. A revenue number with no match rate attached does not.
Topics: reconciliation · lead counts · CRM · data quality
Have a version of this question about your own business?
The useful answer usually depends on which systems you run and how they're connected. That's a conversation, not a blog post.