Analytics Events

Predefined event names.

Summary

An Event is an important occurrence in your app that you want to measure. You can report up to 500 different types of Events per app and you can associate up to 25 unique parameters with each Event type. Some common events are suggested below, but you may also choose to specify custom Event types that are associated with your specific app. Each event type is identified by a unique name. Event names can be up to 40 characters long, may only contain alphanumeric characters and underscores ("_"), and must start with an alphabetic character. The "firebase_", "google_", and "ga_" prefixes are reserved and should not be used.

Variables

kEventAdImpression = "ad_impression"
const char *const
Ad Impression event.
kEventAddPaymentInfo = "add_payment_info"
const char *const
Add Payment Info event.
kEventAddShippingInfo = "add_shipping_info"
const char *const
Add Shipping Info event.
kEventAddToCart = "add_to_cart"
const char *const
E-Commerce Add To Cart event.
kEventAddToWishlist = "add_to_wishlist"
const char *const
E-Commerce Add To Wishlist event.
kEventAppOpen = "app_open"
const char *const
App Open event.
kEventBeginCheckout = "begin_checkout"
const char *const
E-Commerce Begin Checkout event.
kEventCampaignDetails = "campaign_details"
const char *const
Campaign Detail event.
kEventEarnVirtualCurrency = "earn_virtual_currency"
const char *const
Earn Virtual Currency event.
kEventGenerateLead = "generate_lead"
const char *const
Generate Lead event.
kEventInAppPurchase = "in_app_purchase"
const char *const
In-App Purchase event.
kEventJoinGroup = "join_group"
const char *const
Join Group event.
kEventLevelEnd = "level_end"
const char *const
Level End event.
kEventLevelStart = "level_start"
const char *const
Level Start event.
kEventLevelUp = "level_up"
const char *const
Level Up event.
kEventLogin = "login"
const char *const
Login event.
kEventPostScore = "post_score"
const char *const
Post Score event.
kEventPurchase = "purchase"
const char *const
E-Commerce Purchase event.
kEventRefund = "refund"
const char *const
E-Commerce Refund event.
kEventRemoveFromCart = "remove_from_cart"
const char *const
E-Commerce Remove from Cart event.
kEventScreenView = "screen_view"
const char *const
Screen View event.
kEventSearch = "search"
const char *const
Search event.
kEventSelectContent = "select_content"
const char *const
Select Content event.
kEventSelectItem = "select_item"
const char *const
Select Item event.
kEventSelectPromotion = "select_promotion"
const char *const
Select promotion event.
kEventShare = "share"
const char *const
Share event.
kEventSignUp = "sign_up"
const char *const
Sign Up event.
kEventSpendVirtualCurrency = "spend_virtual_currency"
const char *const
Spend Virtual Currency event.
kEventTutorialBegin = "tutorial_begin"
const char *const
Tutorial Begin event.
kEventTutorialComplete = "tutorial_complete"
const char *const
Tutorial End event.
kEventUnlockAchievement = "unlock_achievement"
const char *const
Unlock Achievement event.
kEventViewCart = "view_cart"
const char *const
E-commerce View Cart event.
kEventViewItem = "view_item"
const char *const
View Item event.
kEventViewItemList = "view_item_list"
const char *const
View Item List event.
kEventViewPromotion = "view_promotion"
const char *const
View Promotion event.
kEventViewSearchResults = "view_search_results"
const char *const
View Search Results event.

Variables

kEventAdImpression

constchar*constkEventAdImpression="ad_impression"

Ad Impression event.

This event signifies when a user sees an ad impression. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterAdPlatform (String) (optional)
  • AnalyticsParameterAdFormat (String) (optional)
  • AnalyticsParameterAdSource (String) (optional)
  • AnalyticsParameterAdUnitName (String) (optional)
  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventAddPaymentInfo

constchar*constkEventAddPaymentInfo="add_payment_info"

Add Payment Info event.

This event signifies that a user has submitted their payment information. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCoupon (String) (optional)
  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterPaymentType (String) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventAddShippingInfo

constchar*constkEventAddShippingInfo="add_shipping_info"

Add Shipping Info event.

This event signifies that a user has submitted their shipping information. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCoupon (String) (optional)
  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterShippingTier (String) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventAddToCart

constchar*constkEventAddToCart="add_to_cart"

E-Commerce Add To Cart event.

This event signifies that an item(s) was added to a cart for purchase. Add this event to a funnel withAnalyticsEventPurchase to gauge the effectiveness of your checParameter(kout, If you supply theAnalyticsParameterValue parameter), you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventAddToWishlist

constchar*constkEventAddToWishlist="add_to_wishlist"

E-Commerce Add To Wishlist event.

This event signifies that an item was added to a wishlist. Use this event to identify popular gift items. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventAppOpen

constchar*constkEventAppOpen="app_open"

App Open event.

By logging this event when anApp becomes active, developers can understand how often users leave and return during the course of a Session. Although Sessions are automatically reported, this event can provide further clarification around the continuous engagement of app-users.

kEventBeginCheckout

constchar*constkEventBeginCheckout="begin_checkout"

E-Commerce Begin Checkout event.

This event signifies that a user has begun the process of checking out. Add this event to a funnel with yourAnalyticsEventPurchase event to gauge the effectiveness of your checkout process. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCoupon (String) (optional)
  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventCampaignDetails

constchar*constkEventCampaignDetails="campaign_details"

Campaign Detail event.

Log this event to supply the referral details of a re-engagement campaign. Note: you must supply at least one of the required parameters AnalyticsParameterSource, AnalyticsParameterMedium or AnalyticsParameterCampaign. Params:

  • AnalyticsParameterSource (String)
  • AnalyticsParameterMedium (String)
  • AnalyticsParameterCampaign (String)
  • AnalyticsParameterTerm (String) (optional)
  • AnalyticsParameterContent (String) (optional)
  • AnalyticsParameterAdNetworkClickID (String) (optional)
  • AnalyticsParameterCP1 (String) (optional)
  • AnalyticsParameterCampaignID (String) (optional)
  • AnalyticsParameterCreativeFormat (String) (optional)
  • AnalyticsParameterMarketingTactic (String) (optional)
  • AnalyticsParameterSourcePlatform (String) (optional)

kEventEarnVirtualCurrency

constchar*constkEventEarnVirtualCurrency="earn_virtual_currency"

Earn Virtual Currency event.

This event tracks the awarding of virtual currency in your app. Log this along withAnalyticsEventSpendVirtualCurrency to better understand your virtual economy. Params:

  • AnalyticsParameterVirtualCurrencyName (String)
  • AnalyticsParameterValue (Int or Double)

kEventGenerateLead

constchar*constkEventGenerateLead="generate_lead"

Generate Lead event.

Log this event when a lead has been generated in the app to understand the efficacy of your install and re-engagement campaigns. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventInAppPurchase

constchar*constkEventInAppPurchase="in_app_purchase"

In-App Purchase event.

This event signifies that extra content or a subscription was purchased by a user inside an app. Note: This is different from the ecommerce purchase event. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCurrency (String)
  • AnalyticsParameterFreeTrial (Int) (optional)
  • AnalyticsParameterPrice (Double) (optional)
  • AnalyticsParameterPriceIsDiscounted (Int) (optional)
  • AnalyticsParameterProductID (String) (optional)
  • AnalyticsParameterProductName (String) (optional)
  • AnalyticsParameterQuantity (Int) (optional)
  • AnalyticsParameterSubscription (Int) (optional)
  • AnalyticsParameterValue (Double)

kEventJoinGroup

constchar*constkEventJoinGroup="join_group"

Join Group event.

Log this event when a user joins a group such as a guild, team or family. Use this event to analyze how popular certain groups or social features are in your app. Params:

  • AnalyticsParameterGroupID (String)

kEventLevelEnd

constchar*constkEventLevelEnd="level_end"

Level End event.

Log this event when the user finishes a level. Params:

  • AnalyticsParameterLevelName (String)
  • AnalyticsParameterSuccess (String)

kEventLevelStart

constchar*constkEventLevelStart="level_start"

Level Start event.

Log this event when the user starts a new level. Params:

  • AnalyticsParameterLevelName (String)

kEventLevelUp

constchar*constkEventLevelUp="level_up"

Level Up event.

This event signifies that a player has leveled up in your gaming app. It can help you gauge the level distribution of your userbase and help you identify certain levels that are difficult to pass. Params:

  • AnalyticsParameterLevel (Int)
  • AnalyticsParameterCharacter (String) (optional)

kEventLogin

constchar*constkEventLogin="login"

Login event.

Apps with a login feature can report this event to signify that a user has logged in.

kEventPostScore

constchar*constkEventPostScore="post_score"

Post Score event.

Log this event when the user posts a score in your gaming app. This event can help you understand how users are actually performing in your game and it can help you correlate high scores with certain audiences or behaviors. Params:

  • AnalyticsParameterScore (Int)
  • AnalyticsParameterLevel (Int) (optional)
  • AnalyticsParameterCharacter (String) (optional)

kEventPurchase

constchar*constkEventPurchase="purchase"

E-Commerce Purchase event.

This event signifies that an item(s) was purchased by a user. Note: This is different from the in-app purchase event, which is reported automatically forApp Store-based apps. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterAffiliation (String) (optional)
  • AnalyticsParameterCoupon (String) (optional)
  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterEndDate (String) (optional)
  • AnalyticsParameterItemID (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterShipping (Double) (optional)
  • AnalyticsParameterStartDate (String) (optional)
  • AnalyticsParameterTax (Double) (optional)
  • AnalyticsParameterTransactionID (String) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventRefund

constchar*constkEventRefund="refund"

E-Commerce Refund event.

This event signifies that a refund was issued. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterAffiliation (String) (optional)
  • AnalyticsParameterCoupon (String) (optional)
  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterShipping (Double) (optional)
  • AnalyticsParameterTax (Double) (optional)
  • AnalyticsParameterTransactionID (String) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventRemoveFromCart

constchar*constkEventRemoveFromCart="remove_from_cart"

E-Commerce Remove from Cart event.

This event signifies that an item(s) was removed from a cart. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventScreenView

constchar*constkEventScreenView="screen_view"

Screen View event.

This event signifies a screen view. Use this when a screen transition occurs. This event can be logged irrespective of whether automatic screen tracking is enabled. Params:

  • AnalyticsParameterScreenClass (String) (optional)
  • AnalyticsParameterScreenName (String) (optional)

kEventSearch

constchar*constkEventSearch="search"

Search event.

Apps that support search features can use this event to contextualize search operations by supplying the appropriate, corresponding parameters. This event can help you identify the most popular content in your app. Params:

  • AnalyticsParameterSearchTerm (String)
  • AnalyticsParameterStartDate (String) (optional)
  • AnalyticsParameterEndDate (String) (optional)
  • AnalyticsParameterNumberOfNights (Int) (optional) for hotel bookings
  • AnalyticsParameterNumberOfRooms (Int) (optional) for hotel bookings
  • AnalyticsParameterNumberOfPassengers (Int) (optional) for travel bookings
  • AnalyticsParameterOrigin (String) (optional)
  • AnalyticsParameterDestination (String) (optional)
  • AnalyticsParameterTravelClass (String) (optional) for travel bookings

kEventSelectContent

constchar*constkEventSelectContent="select_content"

Select Content event.

This general purpose event signifies that a user has selected some content of a certain type in an app. The content can be any object in your app. This event can help you identify popular content and categories of content in your app. Params:

  • AnalyticsParameterContentType (String)
  • AnalyticsParameterItemID (String)

kEventSelectItem

constchar*constkEventSelectItem="select_item"

Select Item event.

This event signifies that an item was selected by a user from a list. Use the appropriate parameters to contextualize the event. Use this event to discover the most popular items selected. Params:

  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterItemListID (String) (optional)
  • AnalyticsParameterItemListName (String) (optional)

kEventSelectPromotion

constchar*constkEventSelectPromotion="select_promotion"

Select promotion event.

This event signifies that a user has selected a promotion offer. Use the appropriate parameters to contextualize the event, such as the item(s) for which the promotion applies. Params:

  • AnalyticsParameterCreativeName (String) (optional)
  • AnalyticsParameterCreativeSlot (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterLocationID (String) (optional)
  • AnalyticsParameterPromotionID (String) (optional)
  • AnalyticsParameterPromotionName (String) (optional)

kEventShare

constchar*constkEventShare="share"

Share event.

Apps with social features can log the Share event to identify the most viral content. Params:

  • AnalyticsParameterContentType (String)
  • AnalyticsParameterItemID (String)

kEventSignUp

constchar*constkEventSignUp="sign_up"

Sign Up event.

This event indicates that a user has signed up for an account in your app. The parameter signifies the method by which the user signed up. Use this event to understand the different behaviors between logged in and logged out users. Params:

  • AnalyticsParameterMethod (String)

kEventSpendVirtualCurrency

constchar*constkEventSpendVirtualCurrency="spend_virtual_currency"

Spend Virtual Currency event.

This event tracks the sale of virtual goods in your app and can help you identify which virtual goods are the most popular objects of purchase. Params:

  • AnalyticsParameterItemName (String)
  • AnalyticsParameterVirtualCurrencyName (String)
  • AnalyticsParameterValue (Int or Double)

kEventTutorialBegin

constchar*constkEventTutorialBegin="tutorial_begin"

Tutorial Begin event.

This event signifies the start of the on-boarding process in your app. Use this in a funnel withAnalyticsEventTutorialComplete to understand how many users complete this process and move on to the full app experience.

kEventTutorialComplete

constchar*constkEventTutorialComplete="tutorial_complete"

Tutorial End event.

Use this event to signify the user's completion of your app's on-boarding process. Add this to a funnel withAnalyticsEventTutorialBegin to gauge the completion rate of your on-boarding process.

kEventUnlockAchievement

constchar*constkEventUnlockAchievement="unlock_achievement"

Unlock Achievement event.

Log this event when the user has unlocked an achievement in your game. Since achievements generally represent the breadth of a gaming experience, this event can help you understand how many users are experiencing all that your game has to offer. Params:

  • AnalyticsParameterAchievementID (String)

kEventViewCart

constchar*constkEventViewCart="view_cart"

E-commerce View Cart event.

This event signifies that a user has viewed their cart. Use this to analyze your purchase funnel. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventViewItem

constchar*constkEventViewItem="view_item"

View Item event.

This event signifies that a user has viewed an item. Use the appropriate parameters to contextualize the event. Use this event to discover the most popular items viewed in your app. Note: If you supply theAnalyticsParameterValue parameter, you must also supply theAnalyticsParameterCurrency parameter so that revenue metrics can be computed accurately. Params:

  • AnalyticsParameterCurrency (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterValue (Double) (optional)

kEventViewItemList

constchar*constkEventViewItemList="view_item_list"

View Item List event.

Log this event when a user sees a list of items or offerings. Params:

  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterItemListID (String) (optional)
  • AnalyticsParameterItemListName (String) (optional)

kEventViewPromotion

constchar*constkEventViewPromotion="view_promotion"

View Promotion event.

This event signifies that a promotion was shown to a user. Add this event to a funnel with theAnalyticsEventAddToCart andAnalyticsEventPurchase to gauge your conversion process. Params:

  • AnalyticsParameterCreativeName (String) (optional)
  • AnalyticsParameterCreativeSlot (String) (optional)
  • AnalyticsParameterItems ([[String: Any]]) (optional)
  • AnalyticsParameterLocationID (String) (optional)
  • AnalyticsParameterPromotionID (String) (optional)
  • AnalyticsParameterPromotionName (String) (optional)

kEventViewSearchResults

constchar*constkEventViewSearchResults="view_search_results"

View Search Results event.

Log this event when the user has been presented with the results of a search. Params:

  • AnalyticsParameterSearchTerm (String)

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-11-18 UTC.