Why Google Ads, GA4, and your CRM show different lead counts

Nine reasons Google Ads conversions, GA4 key events, and your CRM lead count do not match, and how to spot duplicate tags vs normal reporting lag.

Contents (5 sections)

Open Google Ads, Google Analytics 4 (GA4), and your shop phone log on the same morning. The three numbers almost never match.

Some gaps come from normal platform rules. Other gaps come from broken tags that waste your money on fake leads. You need a fast way to tell which is which.

The short answer

Google Ads, GA4, and your CRM measure different moments under different rules. Google Ads reports by ad click date and includes call-asset calls that never touch your site. GA4 reports by event date on your site. Your CRM logs real people who reached your team. Check for duplicate Primary goals, One vs Every count rules, form triggers, and click-to-lead time lag.

  • Three tools, three different moments.Google Ads reports by ad click date and includes calls that never touch your site, GA4 by event date on your site, and your CRM logs real people who reached your team.
  • One person can trigger several goals.A phone-link tap and a form submit from the same homeowner are two platform events and one real lead.
  • Check four settings for the gap.Duplicate primary goals, One versus Every count rules, form triggers, and the time lag between click and lead.

The 9-point discrepancy table

Use this table to see why two screens show different numbers for the same dates.

The 9-point discrepancy table
What you seeExample countsRoot causeBug or normal?Exact fix
Google Ads is 2x GA4Ads: 40 · GA4: 20 · CRM: 20Google Ads tag AND imported GA4 generate_lead event are both PrimaryBug (Double count)Keep one source Primary and move the other to Secondary
Ads and GA4 are 3x higher than CRMAds: 60 · GA4: 60 · CRM: 18GTM fires on a button click or page view instead of a real form sendBug (Fake leads)Turn on Check Validation in GTM or fire on the real server reply
Ads shows more calls than GA4Ads: 32 calls · GA4: 14 callsGoogle Ads counts calls made right from mobile Call Assets on GoogleNormalList call assets on a separate line from website calls
Ads and GA4 differ by 1-3 leadsAds: 28 · GA4: 30Click date vs. event date: a user clicked on May 31 and sent the form on June 1NormalNote the date rule; Ads puts the lead in May, GA4 puts it in June
One person logs 3 conversionsAds: 3 · CRM: 1Goal Count rule is set to Every instead of OneBug for leadsSwitch lead goals from Every to One in Google Ads
CRM has more leads than GA4GA4: 18 · CRM: 25Ad blockers or cookie banners blocked browser tags for some visitorsSignal lossAdd server-side GTM and Enhanced Conversions
All Conversions is 3x ConversionsAll Conv: 90 · Conv: 30You are reading All conversions, which adds directions and page viewsWrong columnJudge bidding on Conversions (Primary) and check real enquiries
LSA leads are missing from GA4LSA: 42 · GA4: 0Local Services Ads run on Google’s profile, not on your websiteNormalCheck LSA leads from the LSA billing record, not GA4
CRM shows 30 leads, 12 are realAds: 30 · Good: 12Spam bots, job seekers, or out-of-area clicks are sending your formQuality leakAdd spam checks, set location to Presence, and add negative words

Rule 1: Click date (Google Ads) vs. Event date (GA4 and CRM)

This rule is the main reason an honest report shows a small gap at the end of a month.

  • Google Ads logs a lead on the day the user clicked the ad.
  • GA4 and your CRM log the lead on the day the user called or sent the form.

Say a homeowner searches for a garage floor on May 30 and clicks your ad. They think about it over the weekend and send your quote form on June 2:

  • Your June CRM log and GA4 report show +1 lead in June.
  • Your May Google Ads report updates later to show +1 conversion in May.

Rule 2: Separate platform events from real human leads

One homeowner often triggers more than one goal during a single repair request:

  1. They click your ad and tap the phone link in your header (phone_click).
  2. They talk to your office for 90 seconds (call_from_website).
  3. They also send a photo of the broken pipe through your quote form (generate_lead).

If all three goals are marked Primary in Google Ads, the screen reports 3 conversions from 1 click. In your shop, that is 1 customer.

  1. Check your Google Ads Goals screen first

    List every goal marked Primary. Make sure phone taps, page scrolls, and duplicate GA4 imports do not sit in the main Conversions column.

  2. Split calls and forms in the monthly report

    As shown in the [cleaning rebuild record](/work/cleaning-company/), split the count into phone calls (25) and submitted forms (26) so every lead is clear.

  3. Check against your phone and inbox log

    Merge repeat calls or form + call pairs from the same phone number within 7 days when counting unique leads.

  4. Match to booked jobs when CRM data is ready

    Use [Enhanced Conversions and offline imports](/articles/enhanced-conversions-offline-import-guide/) or a monthly CRM check to see which leads became jobs.

Quick 10-minute check for lead gaps

Ten-minute lead gap check

0 of 6

Google Ads settings

Dates and channels

Your one-page monthly report

The numbers and the next step

Money out Google ad spend for the month Taken straight from the Google Ads billing screen.
Measured outcomes Platform conversions (calls and forms split) → Unique verified leads → Matched booked jobs Shown side by side so any gap between Google Ads and your phone log is clear.
Decision Fix broken tags before changing ad bids Never raise a budget just because a double-counted tag made the conversion column look big.

Every tool counts from its own angle. My job is to make sure tags fire once on real calls and forms, and to show where the platform count stops and your job records start.

What to do next

If your Google Ads screen shows leads that never reached your phone or inbox, run the full conversion tracking audit. You can also ask for a free review.

Questions owners ask

Should Google Ads and GA4 show the exact same lead count?

Rarely. Google Ads puts a lead on the day the user clicked the ad. GA4 puts the event on the day the call or form happened. Count rules (One vs Every) and call assets on the search page also create normal gaps.

Why does Google Ads show 40 conversions when I only got 15 calls and forms?

Usually the account is counting page views or phone taps, firing on empty form clicks, counting every repeat action instead of one per click, or counting both Google Ads tags and GA4 imports as Primary.

Which number should I trust for my monthly budget decision?

Use your real phone and CRM log for the business decision. Use platform conversions to guide bidding once the tags are clean. Your monthly report should list both numbers and explain any gap.

Why do Google Local Services Ads (LSA) leads not match GA4?

Local Services Ads calls and messages happen inside Google's own LSA profile and phone line, not on your website. GA4 only sees people who visit your website.

How fast can I find the cause of a tracking gap?

A 20 to 30 minute read-only check of your Google Ads Goals screen, GTM triggers, and GA4 events usually shows whether the gap is a broken tag or normal timing.

Send the numbers you already know.

What did your last ads cost, including fees? Are you getting the right calls and quote requests? Share the numbers you have.

I reply within 12 hours. You hear from me, not an account team.

Rather talk first? Pick a time that suits you.

Book a 30-min call

The form sends your details to me by email. I reply personally.

Optional

No obligation to hire me. Never send passwords or billing access.

Get a free review Book a 30-min call