You did everything right — set up the event, marked it as a key event (conversion), and waited. But GA4 shows zero conversions. Or the numbers are way lower than expected. Or conversions appear in GA4 but not in Google Ads.
Here are the 9 most common reasons this happens, ordered from most to least frequently encountered.
Start Here: The Most Common Causes
1. The Event Isn't Actually Firing
Check first: The most fundamental issue — verify the event fires before blaming the conversion setting.
Before debugging conversion tracking, verify the underlying event actually fires. Open GA4 DebugView or the Realtime report and trigger the conversion action. If you don't see the event, the problem is with your tag or trigger — not the conversion setting. Check GTM for trigger conditions, tag firing order, and consent blocking.
2. "Key Event" Toggle Not Saved Properly
Common gotcha: GA4 is case-sensitive with event names — a mismatch silently breaks the link.
Navigate to Admin → Events and find your event. The toggle in the "Mark as key event" column must be blue/on. If you marked an event as a key event but used a slightly different event name (e.g., Purchase vs purchase — GA4 is case-sensitive), you've marked the wrong event.
3. 24-72 Hour Processing Delay
Frequency: The most common false alarm.
GA4 conversion data can take 24 to 72 hours to fully process and appear in standard reports. The Realtime report shows conversions within minutes, but standard reports and Google Ads imports have processing delays. If you just set up a conversion, wait 72 hours before troubleshooting.
Configuration and Consent Issues
4. Conversion Counting Method
Frequency: Common for e-commerce.
GA4 has two counting methods for key events:
- Once per session: Only the first instance counts. If a user submits a form 3 times, GA4 counts 1 conversion.
- Once per event: Every instance counts. Each of the 3 form submissions counts as a separate conversion.
For lead gen events, "once per session" is usually correct. For purchases, use "once per event" (each transaction is a separate conversion). Check this under Admin → Events → [your event] → Counting method.
5. Consent Mode Blocking Conversion Hits
Increasingly common: More relevant now that Consent Mode v2 is enforced across EU/EEA traffic.
If analytics_storage is denied, GA4 doesn't record the full event — it sends a cookieless ping. The event still fires, but conversion attribution may be limited. If ad_storage is also denied, the conversion won't be usable for Google Ads optimization at all.
Check: Open your browser's Network tab and look for requests to google-analytics.com/g/collect. If you see gcs=G100 in the payload, both analytics and ad storage are denied. gcs=G111 means both are granted.
6. Data Filter Excluding Conversion Traffic
Easy to miss: Active data filters can silently swallow conversions from specific IP ranges.
If you have an active data filter (not just testing mode), it may be excluding the IP addresses or traffic sources where conversions occur. This is especially common when the conversion happens on a staging server or development environment whose IP is filtered.
7. Event Name Mismatch
Common in GTM setups: Tagging inconsistencies create phantom event names that never match the key event toggle.
GA4 event names are case-sensitive. If your GTM tag sends generate_lead but you marked Generate_Lead as a key event, they're treated as different events. Always use snake_case and verify the exact event name in DebugView.
Google Ads Integration Issues
8. Google Ads Link Missing or Misconfigured
Frequency: Causes "conversions show in GA4 but not in Ads".
For conversions to appear in Google Ads:
- GA4 and Google Ads must be linked (Admin → Google Ads Linking)
- The conversion must be imported in Google Ads (Google Ads → Goals → Conversions)
- Auto-tagging must be enabled in Google Ads
- Personalized advertising must be enabled in the link settings
9. E-commerce Value Not Sent
Frequency: Common for purchase events.
If your purchase event fires but shows 0 revenue, the value and currency parameters are likely missing or formatted incorrectly. The value must be a number (not a string like "$99.00"), and currency must be a valid ISO 4217 code (e.g., USD, EUR, SEK).
Conversion Tracking Audit
NiceLookingData checks your key event setup, event naming, counting methods, and Google Ads link configuration as part of every GA4 audit. Run a free audit to see if your conversions are tracking correctly.
Key Takeaways
- Always verify the underlying event fires before troubleshooting the conversion setting.
- Wait 72 hours for conversions to appear in standard reports — use Realtime for immediate checks.
- Event names are case-sensitive.
purchase≠Purchase. - Check consent mode status — denied analytics storage limits conversion tracking.
- For Google Ads, you need: link + import + auto-tagging + personalized advertising.
Frequently Asked Questions
Why are my GA4 conversions not showing up?
The most common reason is the processing delay — GA4 can take 24 to 72 hours to show conversions in standard reports. Check the Realtime report first for immediate confirmation. If conversions appear there but not in standard reports, wait 72 hours before investigating further. If conversions don't appear in Realtime, check that the underlying event is actually firing and that the "Mark as key event" toggle is on for the correct event name.
Why does GA4 show conversions but Google Ads shows 0?
For conversions to appear in Google Ads, four things must be true simultaneously: the GA4 property and Google Ads account must be linked, the specific conversion must be imported inside Google Ads under Goals → Conversions, auto-tagging must be enabled in Google Ads, and personalized advertising must be allowed in the link settings. Missing any one of these is enough to produce a zero in Ads even when GA4 shows conversions correctly.
What is the difference between "once per session" and "once per event" conversion counting?
These are the two key event counting methods in GA4. "Once per session" counts at most one conversion per session, no matter how many times the event fires. "Once per event" counts every firing. For lead forms and contact submissions, "once per session" is usually correct to prevent form retries inflating counts. For purchase events, use "once per event" — each transaction is a separate conversion and should be counted independently.
Why do my GA4 conversions show fewer than my actual sales?
The gap between GA4 conversion counts and actual sales is usually caused by: consent denials (users who deny analytics_storage are tracked with cookieless pings and may not be attributed), ad blockers filtering analytics requests, duplicate purchase prevention logic counting a single order once while the actual order count differs, or the purchase event not firing on all paths (common when payment processors redirect off-domain and cross-domain tracking is incomplete).
How do I check if a key event is configured correctly?
Go to Admin → Events and look for your event in the list. The "Mark as key event" toggle must be blue (on). Then verify the exact event name matches what your tags send — GA4 is case-sensitive, so purchase and Purchase are treated as different events. Use DebugView to see the exact event name as GA4 receives it.
Can consent mode affect conversion tracking?
Yes. When analytics_storage is denied, GA4 records a cookieless ping for the event but cannot link it to a user or session for attribution purposes. When ad_storage is also denied, the conversion is not usable for Google Ads optimization at all. This is by design under GDPR — it's not a bug. You can check the consent state of individual requests by inspecting the gcs parameter in network requests to google-analytics.com (G111 = both granted, G100 = both denied).
What is the GA4 conversion window?
GA4 uses an attribution lookback window, not a conversion window in the traditional sense. The default is 30 days for non-purchase key events and 30 days for purchase events when using data-driven attribution. You can adjust this under Admin → Attribution Settings → Lookback window. A shorter window means conversions that happen more than X days after a click won't be attributed to that click — useful for impulse-purchase businesses, less so for high-consideration purchases with long decision cycles.
Why do GA4 and Universal Analytics conversion numbers differ?
GA4 and Universal Analytics measured conversions differently by design. UA goals counted the first matching hit per session (similar to "once per session"). GA4 key events can count every firing. GA4 uses data-driven attribution by default, while UA defaulted to last non-direct click. These structural differences mean a like-for-like comparison will always show a gap — it's not evidence that tracking is broken. The better comparison is GA4 conversion counts against your backend order system, which has no attribution model at all.
Analytics consultant turned founder. After years running the same GA4 and GTM audits across client engagements, Ludde built the audit into a product — so the pattern-matching takes a minute, not a meeting. More about Ludde →
Run a free GA4 audit.
Connect your Google Analytics 4 property. Our auditor runs 61 checks and gives you an instant health score with a plain-English action plan.
