How to Fix GA4 Conversion Tracking Issues
PaidSync.ai is a platform that connects AI assistants directly to GA4 properties and Google Tag Manager containers. When GA4 conversion tracking breaks, PaidSync reads the conversion event configuration in GA4, compares it against the GTM container that is supposed to be sending those events, and surfaces the mismatch in plain English without requiring manual DebugView sessions or cross-platform tab switching. This guide covers every common failure mode and how to diagnose each one.
Why GA4 Conversion Tracking Breaks
GA4 conversion tracking is a chain with multiple links. A break anywhere in that chain produces the same symptom: zero conversions in the GA4 report. But the cause and fix are completely different depending on where the chain snapped.
The chain looks like this: your site fires a dataLayer event or page view, GTM picks that up via a trigger, GTM fires a GA4 event tag, GA4 receives the event, and the GA4 Events settings marks that event as a conversion. A failure at any link produces missing conversions. The diagnostic challenge is determining which link failed.
The Seven Most Common Failure Modes
Event not marked as a conversion in GA4
The event is reaching GA4 correctly but has not been toggled on in the GA4 Events settings. This is the most common cause for people who set up tracking for the first time. Check Admin, then Events, and verify the toggle is on for the event you want to count as a conversion. The event must have fired at least once in the last 28 days to appear in this list.
Wrong Measurement ID in the GTM tag
The GA4 Configuration tag in GTM has the correct format (G-XXXXXXXXXX) but belongs to a different property, a test property, or an old property from a previous setup. Events fire from your site and land in the wrong GA4 property. Verify the Measurement ID in GTM matches the one shown in GA4 Admin under Data Streams.
GTM tag firing on the wrong page
The trigger is configured for a URL that your confirmation page no longer uses, or it uses "contains" instead of "equals" and is matching unintended pages. Alternatively, the trigger uses "Page Path" but the page URL has query parameters that change between sessions. Use GTM Preview mode on the actual confirmation page to verify the tag fires there and only there.
dataLayer variable returning undefined
The GA4 event tag references a dataLayer variable (for example, transaction_id or purchase_value) that is undefined because the variable name in GTM does not match the key name used in the site's dataLayer push. The tag fires but sends an event with missing parameters. In some cases the event itself is not sent if the variable is required by the tag configuration. Verify in DebugView that event parameters are populated with real values, not blank.
Consent mode blocking analytics storage
If your site implements Consent Mode and a user has not accepted analytics cookies, GA4 tags are blocked from firing. This is correct behavior for consent compliance, but if the consent implementation is broken it may be blocking all GA4 events for all users regardless of consent status. Check whether events appear in DebugView when using a browser with cookies cleared and consent explicitly accepted.
GA4 Configuration tag not firing on conversion page
GA4 event tags require the GA4 Configuration tag to have fired first on the same page. If the Configuration tag only fires on some pages or has a trigger that excludes the conversion page, subsequent event tags cannot send data because there is no active GA4 session. Verify the Configuration tag is set to All Pages and is not blocked by a trigger exception.
Single-page app not resetting GA4 session
On single-page applications (React, Next.js, Vue), page navigations do not trigger browser-level page loads, so the GTM Page View trigger does not fire. If your checkout confirmation is rendered as a client-side route transition, your trigger may never see it. These sites need custom dataLayer pushes on route changes, or a History Change trigger in GTM, to capture conversion events correctly.
PaidSync.ai reads your GA4 conversion event status and compares it against your GTM container configuration. It surfaces mismatches in plain English without manual DebugView sessions.
Start a Free Audit Run a GA4 AuditThe Diagnostic Process
Work through this sequence before changing anything. Changing GTM tags without first identifying the problem layer wastes time and can introduce new issues.
Check GA4 DebugView first
Enable GTM Preview mode, then go to your conversion page. In a second browser tab, open GA4 and go to Admin, then DebugView. If the conversion event appears in DebugView, GA4 is receiving it. The problem is in GA4 settings (not marked as conversion) or in timing (reports are not yet updated). If the event does not appear, the problem is upstream.
Check GTM Preview mode
In GTM Preview mode, navigate to your conversion page and look at the tags panel. Confirm that your GA4 event tag shows "Fired" in the tags list. If it shows "Not Fired," the trigger is not activating. Click the trigger name to see the condition that should have matched and identify why it did not.
Verify the Measurement ID
In your GA4 Configuration tag in GTM, look at the Measurement ID field. Go to GA4 Admin, then Data Streams, and open your web stream. Confirm the Measurement ID shown there matches the one in GTM exactly, including any uppercase/lowercase. G-IDs are case-sensitive.
Check dataLayer variable values in Preview
In GTM Preview, click on the event that should trigger your conversion tag. Go to the Variables tab and find any variables your tag references. Confirm they show actual values and not "undefined" or blank. If they show undefined, the dataLayer push on your site is using a different key name than what GTM expects.
Mark the event as a conversion in GA4
If DebugView shows the event arriving correctly but the Conversions report shows zero, the event is not marked as a conversion. Go to GA4 Admin, Events, find the event in the list, and toggle "Mark as conversion" to on. Allow 24 to 48 hours for the conversion count to populate in standard reports.
GA4 Conversions vs Google Ads Conversions
Many advertisers discover their GA4 conversion tracking is working correctly but their Google Ads reports still show a discrepancy. This is usually not a tracking problem. It is an attribution difference.
GA4 attributes conversions across all traffic sources, while Google Ads only shows conversions attributed to ad clicks. If 100 people convert through organic search and 10 through Google Ads in the same period, GA4 shows 110 conversions and Google Ads shows 10. This is expected.
Where it becomes a genuine problem is when GA4 conversion data is imported into Google Ads for Smart Bidding, and the import is missing events. To verify the import is working, go to Google Ads, then Tools and Settings, then Conversions. Find the conversion action that imports from GA4 and check when it last recorded a conversion. If it shows "No recent conversions" while GA4 shows events, the GA4 to Google Ads link may be broken or the import configuration is pointed at the wrong GA4 event.
How AI Shortens the Diagnostic Window
The manual diagnostic process described above requires switching between four interfaces: GTM Preview, DebugView, GA4 Admin, and Google Ads. Each requires navigation through multiple menus and familiarity with where each piece of information lives. For someone encountering a tracking issue for the first time, this process routinely takes two to four hours.
PaidSync.ai connects to both your GA4 property and your GTM container simultaneously. When asked to diagnose a conversion tracking issue, the AI reads your current GA4 conversion event configuration (which events are marked as conversions, their event names, and whether they have received data in the last 30 days), then reads your GTM container (which tags are configured to send those event names, which triggers are attached to those tags, and whether the tags have been published in the current container version). The comparison surfaces mismatches without requiring manual inspection of each system separately.
For example, if GA4 has an event named "purchase" marked as a conversion but the GTM container has a tag sending an event named "ecommerce_purchase," PaidSync flags this naming mismatch immediately. This specific error is one of the most common causes of GA4 conversion tracking failures after a site migration and is not surfaced by either GTM or GA4 on their own.
Related: the GTM setup guide for 2026 covers correct tag configuration from the start, which prevents most of these issues from appearing.
Frequently Asked Questions
Why are my GA4 conversions not tracking?
The most common reasons are: the event is not marked as a conversion in GA4 Events settings, the GTM tag is firing on the wrong page, a dataLayer variable is returning undefined, the GA4 Configuration tag has the wrong Measurement ID, or consent mode is blocking analytics. Use GTM Preview mode and GA4 DebugView together to identify which layer the problem is in.
How do I mark an event as a conversion in GA4?
Go to GA4 Admin, then Events under the property column. Find the event in the list and toggle "Mark as conversion" to on. The event must have fired at least once in the last 28 days to appear in the list. If it is not listed, the event is not reaching GA4 yet and the problem is in your GTM setup or site code.
How do I use GA4 DebugView to test conversion tracking?
Go to GA4 Admin and then DebugView under the property column. Activate GTM Preview mode on your website. Navigate to the conversion page and trigger the conversion action. DebugView shows each event in real time. If the event appears in DebugView, GA4 is receiving it. If it does not appear, the problem is in GTM or your site code.
Can GA4 conversions import into Google Ads?
Yes. Link your GA4 property to Google Ads in GA4 Admin under Google Ads Links, then import the conversion events in Google Ads under Tools and Settings, Conversions, then import from Google Analytics. The events must already be marked as conversions in GA4. PaidSync can verify whether the linkage is active and whether imports are receiving events.
Why does GA4 show fewer conversions than Google Ads?
GA4 counts conversions across all traffic sources and uses its own attribution model. Google Ads counts conversions attributed to ad clicks. The numbers will always differ. The issue only matters if GA4 shows zero conversions while Google Ads shows conversions from the same period, which indicates a tracking gap rather than an attribution difference.
How long does it take for GA4 conversions to appear?
Real-time events appear in DebugView within seconds. Standard GA4 reports have a 24 to 48 hour processing delay. Do not assume tracking is broken if data is missing within the first 48 hours. Use DebugView for immediate verification rather than waiting for standard reports to update.
Related Guides
Stop switching between four tabs to diagnose one problem. PaidSync reads your GA4 event config and GTM container together and surfaces the mismatch in plain English.
Start a Free Audit Book a Demo