What does double counting mean?
It means one genuine enquiry created more than one GA4 key event, so Local SEO “leads” look stronger than the inbox.
Typical causes: a button click event plus a thank-you page event; gtag and GTM both firing; a reload on the confirmation URL.
Is this the same as tagging GBP links?
No. Campaign parameters on the Business Profile website link are how you recognise listing traffic.
That setup is how to track Google Business Profile traffic and leads in GA4. This page assumes tagging exists and asks whether one visit is counted twice.
Fire
Does more than one tag send the same event? GTM plus gtag, or thank-you plus button, counts twice.Method
Is the key event once per event? Google’s default often counts every trigger in a session.ID
Can you deduplicate with a lead or transaction id? Purchases can use transaction_id. Forms need their own unique id.Yes
Aim for one event per real enquiry Then compare to the CRM, which is a different undercount problem.Next
Spam volume is not this diagnosis Bots inflating forms are a separate check.Is this GA4 lower than the CRM?
No. If the CRM has more rows than GA4, Analytics is missing events, not duplicating them.
Diagnose that on why GA4 reports fewer leads than the CRM.
Is this spam inflating the form?
No. Spam is many fake submissions. Double counting is one real person recorded twice.
Use whether spam form submissions are inflating Local SEO lead numbers.
How does the counting method change the total?
You can count a key event once per event or once per session. Once per event counts every trigger. If someone fires it five times in a session, you get five key events.
Source: Change the counting method of key events. Purchases can also duplicate without a unique transaction id: Minimize duplicate key events with transaction IDs.
Inflation decision table
| What you see | What it usually means | Decision | What not to assume |
|---|---|---|---|
| One test submit; two generate_lead events | Two tags or two triggers | Keep one fire on the thank-you (or one on the click) | That Local SEO doubled overnight |
| Thank-you reload adds another event | Page-view trigger | Fire on a unique submission id, not on every view | That once-per-session is required |
| GA4 higher than CRM; events look unique | Possible spam or extra channels | Check the spam guide, then CRM matching | That this duplicate-tag page still applies |
| GA4 lower than CRM | Undercount | Use the CRM-gap guide | That you should add a second tag to “catch up” |
What should I not do?
Action checklist
- Submit one real test enquiry. Watch DebugView for duplicate events.
- List every tag that sends generate_lead or your equivalent.
- Read the key-event counting method. Note once per event versus once per session.
- Keep one fire per genuine enquiry. Add a unique id if the platform allows.
- If GA4 is still high after that, check spam. If GA4 is low, switch guides.
- Re-baseline the Local SEO lead KPI after the fix. Do not stitch the inflated week.
When professional help makes sense
Help is useful when GTM, a form plugin and a CRM pixel all claim the same submit. It cannot make historic duplicates disappear, and it cannot promise more leads from cleaner counting.
Sources and further reading
- Google Analytics Help: Change the counting method of key events
- Google Analytics Help: Minimize duplicate key events with transaction IDs
GA4 still counting one enquiry more than once?
Otepsphere can trace which tags fire on a real submit so Local SEO lead totals stop including duplicates — without treating a cleaner count as a ranking result.
Contact OtepsphereWho writes this
This page is published by Otepsphere, a specialist Local SEO consultancy. A named founder biography, photograph and professional profiles will be added here only when they have been verified. Until then, treat Otepsphere as the responsible organisation rather than a fictional expert.