You set up conversions two ways: imported from GA4 goals and via a direct Google Ads conversion tag. They should show the same numbers. They don’t — sometimes by 20–40%. This isn’t a bug; it’s by design. The two methods count conversions differently, attribute them differently, and feed Smart Bidding differently. Understanding the gap lets you choose the right method.

How Tag-Based Google Ads Conversions Work

The Google Ads conversion tag fires directly on the conversion page. It sends a hit to Google’s servers the moment the event occurs using the gclid stored in a browser cookie. Counting is near-real-time. Attribution uses Google Ads’ last-click model by default.

How GA4-Imported Conversions Work

GA4 imported conversions go through a different pipeline. GA4 collects the event, attributes it via GA4’s attribution model, then exports to Google Ads. Key differences:

  • Attribution model: GA4 import uses GA4’s model; tag-based uses Google Ads’ model
  • Cross-device: GA4 import benefits from cross-device stitching if User-ID is set; tag-based is single-device
  • Delay: GA4 imports update with up to 72-hour lag; tag-based is near-real-time
  • Consent Mode: GA4 models conversions for non-consenting users; tag-based drops them entirely

Which Method to Use for Smart Bidding

Google recommends GA4-imported conversions for Smart Bidding. Cross-device signals improve tROAS and tCPA optimization. Modeled conversions from Consent Mode give Smart Bidding more signal. Enhanced Conversions in GA4 improve match rates for logged-in users. However, ensure your GA4 and Google Ads attribution models are aligned — both should use data-driven if you have sufficient volume.

Google Ads Conversion Tracking: Why GA4 Import Differs from Tag-Based Conversions

Enhanced Conversions: The Bridge

// Enhanced Conversions via GTM dataLayer
dataLayer.push({
  'event': 'purchase',
  'enhanced_conversion_data': {
    'email': sha256(userEmail),   // hash required
    'phone_number': sha256(userPhone)
  },
  'value': orderTotal,
  'transaction_id': orderId
});

Reconciling the Numbers

  • Add 3-day lag to GA4 imported numbers before comparing
  • Ensure both use the same date window (conversion date vs click date)
  • Check Google Ads columns — “All conversions” includes view-through; “Conversions” doesn’t
  • Verify GA4 event is marked as conversion in Admin → Events

Recommendation: Use Both, Trust One

Run both methods but mark only one as primary for bidding. Use GA4 import as primary (better Smart Bidding signal) and tag-based as secondary “all conversions” for cross-checking. This avoids confusing the bidding algorithm with duplicate signals.

Related: Google Ads Smart Bidding Migration, GA4 Cross-Device Tracking.

Guide

Leave a Comment