Use more features of Google Analytics and Firebase with AdMob apps


After completing the basic AdMob setup, you can also add the Firebase SDK for Google Analytics to take advantage of other features from Google Analytics and Firebase. Learn how to get started with Google Analytics later on this page.

These increasing levels of configuration support features that can help you optimize your app's user experience and your ad revenue. Check out the following table of features and its links to learn more!

Feature
Add Mobile Ads SDK +
enable user metrics
Add Mobile Ads SDK +
enable user metrics and
Link AdMob to Firebase
Add Mobile Ads SDK +
enable user metrics and
Link AdMob to Firebase and
Add Firebase SDK for Analytics
View user metrics in your AdMob account
Automatically collect analytics events and user properties from your app
Explore and work with your analytics data via Firebase
Access more customization features for your analytics data
Use other Firebase products
(like Remote Config and A/B Testing )

Get started with Google Analytics

Google Analytics is Firebase's analytics engine that gives you access to powerful insights into your data. Start using Google Analytics in your app by adding the Firebase SDK for Google Analytics .

Why add the Firebase SDK for Google Analytics ?

With the basic AdMob setup , you can view aggregated statistics from automatically collected events and user properties in the Analytics dashboard of the Firebase console without adding any additional code to your app.

However, if you want to collect additional custom event data or user properties, you'll need to use the Firebase SDK for Google Analytics . With this SDK, you can log up to 500 different analytics event types, and there's no limit on the total volume of events your app logs. An example use case for logging custom events is to include data in your revenue calculation from a custom event called ecommerce_purchase to help you better represent ARPU and ARPPU metrics .

By adding the Firebase SDK for Google Analytics , you can also add custom conversions for ad campaigns and enable the use of other Firebase products .

The following steps describe how to start using the Firebase SDK for Google Analytics in your app. After initializing the SDK, visit the Analytics documentation to learn how to start logging events in your app.

Step 1:Add a configuration file to your app

If you registered your app with Firebase before creating an AdMob link, then you already added a Firebase configuration file to your app. Check for a GoogleService-Info.plist file in the root of your Xcode project. Also make sure that the config file is added to all targets.

If you don't have this config file in your app, expand this section to learn how to add this file.

  1. In the Your apps card of your > Project settings , select the bundle ID of the app for which you need a config file.

  2. Click Download GoogleService-Info.plistto obtain your Firebase iOS config file ( GoogleService-Info.plist ).

    • You can download your Firebase iOS config file again at any time from your > Project settings .

    • Make sure the config file name isn't appended with additional characters, like (2) .

  3. Move your config file into the root of your Xcode project. If prompted, select to add the config file to all targets.

If you have multiple bundle IDs in your project, you must associate each bundle ID with a registered app in the Firebase console so that each app can have its own GoogleService-Info.plist file.

Step 2:Add the Firebase SDK for Analytics to your app

  1. Add the dependency for the Firebase SDK for Google Analytics to your Podfile:

     pod 'FirebaseAnalytics' 
    
  2. Run pod install , then open the created .xcworkspace file.

  3. Import the FirebaseCore module in your UIApplicationDelegate , as well as any other Firebase modules your app delegate uses. For example, to use Cloud Firestore and Authentication :

    SwiftUI

     import 
      
     SwiftUI 
     import 
      
     FirebaseCore 
     import 
      
     FirebaseFirestore 
     import 
      
     FirebaseAuth 
     // ... 
      
    

    Swift

     import 
      
     FirebaseCore 
     import 
      
     FirebaseFirestore 
     import 
      
     FirebaseAuth 
     // ... 
      
    

    Objective-C

     @import 
      
     FirebaseCore 
     ; 
     @import 
      
     FirebaseFirestore 
     ; 
     @import 
      
     FirebaseAuth 
     ; 
     // ... 
      
    
  4. Configure a FirebaseApp shared instance in your app delegate's application(_:didFinishLaunchingWithOptions:) method:

    SwiftUI

     // Use Firebase library to configure APIs 
     FirebaseApp 
     . 
     configure 
     () 
    

    Swift

     // Use Firebase library to configure APIs 
     FirebaseApp 
     . 
     configure 
     () 
    

    Objective-C

     // Use Firebase library to configure APIs 
     [ 
     FIRApp 
      
     configure 
     ]; 
    
  5. If you're using SwiftUI, you must create an application delegate and attach it to your App struct via UIApplicationDelegateAdaptor or NSApplicationDelegateAdaptor . You must also disable app delegate swizzling. For more information, see the SwiftUI instructions .

    SwiftUI

     @ 
     main 
     struct 
      
     YourApp 
     : 
      
     App 
      
     { 
      
     // register app delegate for Firebase setup 
      
     @ 
     UIApplicationDelegateAdaptor 
     ( 
     AppDelegate 
     . 
     self 
     ) 
      
     var 
      
     delegate 
      
     var 
      
     body 
     : 
      
     some 
      
     Scene 
      
     { 
      
     WindowGroup 
      
     { 
      
     NavigationView 
      
     { 
      
     ContentView 
     () 
      
     } 
      
     } 
      
     } 
     } 
      
    

Implement custom event logging

This section shows an example of how to implement custom event logging in your app. This specific example is for the custom event ecommerce_purchase which is a helpful event to log for AdMob -linked apps, especially for calculating ARPU and ARPPU .

Why is ecommerce_purchase important for ARPU and ARPPU?

A key metric for your app is revenue by user , which can be further segmented into ARPU and ARPPU . These two metrics display in the User metrics card of your AdMob account and in the Analytics dashboard of the Firebase console. Revenue, though, isn't directly measured; instead, it's the sum of your estimated AdMob earnings and the following two analytics event values:

  • in_app_purchase : when a user completes an in-app purchase that is processed by the App Store on iTunes, like an initial subscription, unlocking premium services, or buying in-game items
  • ecommerce_purchase : when a user completes a purchase, like online shopping, buying coupons or discount items, or buying movie tickets

Without any additional code in your app, the Mobile Ads SDK automatically collects analytics data for in_app_purchase events. However, if you want to also include ecommerce_purchase event data in the revenue calculation, you'll need to implement custom logging via the Firebase SDK for Google Analytics .

Here's how to implement custom event logging in your app:

  1. Make sure that you've completed the Get started with Google Analytics section of this page, which includes configuring your app to use Firebase, adding the Firebase SDK for Google Analytics , and initializing the SDK.

  2. Log an ecommerce_purchase event ( Swift | Obj-C ). Here's an example:

    Swift

     Analytics 
     . 
     logEvent 
     ( 
     AnalyticsEventPurchase 
     , 
      
     parameters 
     : 
      
     [ 
      
     AnalyticsParameterCoupon 
     : 
      
     "SummerPromo" 
     , 
      
     AnalyticsParameterCurrency 
     : 
      
     "JPY" 
     , 
      
     AnalyticsParameterValue 
     : 
      
     10000 
     , 
      
     AnalyticsParameterShipping 
     : 
      
     500 
     , 
      
     AnalyticsParameterTransactionID 
     : 
      
     "192803301" 
     , 
     ]) 
    

    Objective-C

     [ 
     FIRAnalytics 
      
     logEventWithName 
     : 
     kFIREventPurchase 
      
     parameters 
     : 
     @{ 
      
     kFIRParameterCoupon 
     : 
      
     @"SummerPromo" 
     , 
      
     kFIRParameterCurrency 
     : 
      
     @"JPY" 
     , 
      
     kFIRParameterValue 
     : 
      
     @10000 
     , 
      
     kFIRParameterShipping 
     : 
      
     @500 
     , 
      
     kFIRParameterTransactionID 
     : 
      
     @"192803301" 
     , 
     } 
     ]; 
    

To learn more about logging custom events in your app, visit the Analytics documentation .

Use other Firebase products in your app

After you add the Firebase SDK for Google Analytics , you can also start using other Firebase products, like Firebase Remote Config and Firebase A/B Testing .

  • Remote Config enables you to change the behavior and appearance of your app without publishing an app update, at no cost, for unlimited daily active users.

  • A/B Testing gives you the power to test changes to your app’s UI, features, or engagement campaigns to learn if they make an impact on your key metrics (like revenue and retention) before rolling the changes out widely.

Optimize ad monetization for your app

Try out different ad formats or configurations with a small subset of users, and then make data driven decisions about implementing the ad for all your users. To learn more, check out the following tutorials:

Create a Mobile Website
View Site in Mobile | Classic
Share by: