That’s a super common and frustrating issue when dealing with iOS and app tracking, especially with the privacy changes over the past few years, which are likely the core cause of the discrepancy you’re seeing.
Since your events are showing up in GA4 but not translating to conversions in Google Ads for iOS, it points to a breakdown in the attribution and conversion import process for the more privacy-restricted iOS environment.
First, check the Firebase and Google Ads configuration details very closely.
Specifically, go to your Firebase project settings, select your iOS app, and make sure the App Store ID is correctly filled in.
This ID is essential for the Firebase/GA4 system to correctly associate your app with the store listing, which is critical for Google Ads app campaigns and SKAdNetwork integration.
Also, confirm that your GA4 events that are defined as conversions don’t exceed the 40-character limit, as this can sometimes prevent them from being properly imported as conversions to Google Ads.
For app installs and common actions, try to use Standard Events like purchase, add_to_cart, or begin_checkout where possible, as they are often more reliably handled by the Firebase SDK and the GA4 to Google Ads link.
The main difference between Android and iOS tracking now is how they handle attribution following Apple’s App Tracking Transparency (ATT) framework.
For iOS, a large percentage of users won’t grant tracking permission, which means the traditional way of linking an ad click (gclid or other identifiers) to a conversion in the app fails.
Google is now heavily reliant on on-device conversion measurement and SKAdNetwork for iOS.
You need to ensure the Google Analytics for Firebase SDK you’re using is the most recent version, as it handles the necessary integration with SKAdNetwork and is designed to improve observable conversions in a privacy-preserving way, especially for first-time app opens and in-app actions.
You might also look into Google’s on-device conversion measurement API if your app has a sign-in experience, as it allows for privacy-safe matching using first-party data like hashed emails or phone numbers.
Using the Ionic API + Firebase SDK + Google Analytics for Firebase + an MMP like AppsFlyer - this is an excellent solution for comprehensive mobile measurement in the current privacy landscape.
The Capacitor or Ionic API is your bridge, giving you access to native SDKs.
The Firebase SDK is the necessary foundation for sending app events to GA4.
By adding an MMP (Mobile Measurement Partner) like AppsFlyer, you introduce a dedicated, robust layer for attribution and aggregation.
For iOS, the MMP is crucial because it centralizes the logic for working with SKAdNetwork, handles all post-install event mapping and conversion value schemas, and often offers more granular reporting on the modeled and non-modeled data across different ad networks, including Google Ads.
Essentially, it normalizes and deduplicates the complex data coming from various sources (GA4, SKAdNetwork, etc.) and provides a more holistic and reliable source of truth for your paid campaigns, which is especially valuable for diagnosing cross-platform discrepancies.