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 *constAd Impression event. |
kEventAddPaymentInfo = "add_payment_info" | const char *constAdd Payment Info event. |
kEventAddShippingInfo = "add_shipping_info" | const char *constAdd Shipping Info event. |
kEventAddToCart = "add_to_cart" | const char *constE-Commerce Add To Cart event. |
kEventAddToWishlist = "add_to_wishlist" | const char *constE-Commerce Add To Wishlist event. |
kEventAppOpen = "app_open" | const char *constApp Open event. |
kEventBeginCheckout = "begin_checkout" | const char *constE-Commerce Begin Checkout event. |
kEventCampaignDetails = "campaign_details" | const char *constCampaign Detail event. |
kEventEarnVirtualCurrency = "earn_virtual_currency" | const char *constEarn Virtual Currency event. |
kEventGenerateLead = "generate_lead" | const char *constGenerate Lead event. |
kEventInAppPurchase = "in_app_purchase" | const char *constIn-App Purchase event. |
kEventJoinGroup = "join_group" | const char *constJoin Group event. |
kEventLevelEnd = "level_end" | const char *constLevel End event. |
kEventLevelStart = "level_start" | const char *constLevel Start event. |
kEventLevelUp = "level_up" | const char *constLevel Up event. |
kEventLogin = "login" | const char *constLogin event. |
kEventPostScore = "post_score" | const char *constPost Score event. |
kEventPurchase = "purchase" | const char *constE-Commerce Purchase event. |
kEventRefund = "refund" | const char *constE-Commerce Refund event. |
kEventRemoveFromCart = "remove_from_cart" | const char *constE-Commerce Remove from Cart event. |
kEventScreenView = "screen_view" | const char *constScreen View event. |
kEventSearch = "search" | const char *constSearch event. |
kEventSelectContent = "select_content" | const char *constSelect Content event. |
kEventSelectItem = "select_item" | const char *constSelect Item event. |
kEventSelectPromotion = "select_promotion" | const char *constSelect promotion event. |
kEventShare = "share" | const char *constShare event. |
kEventSignUp = "sign_up" | const char *constSign Up event. |
kEventSpendVirtualCurrency = "spend_virtual_currency" | const char *constSpend Virtual Currency event. |
kEventTutorialBegin = "tutorial_begin" | const char *constTutorial Begin event. |
kEventTutorialComplete = "tutorial_complete" | const char *constTutorial End event. |
kEventUnlockAchievement = "unlock_achievement" | const char *constUnlock Achievement event. |
kEventViewCart = "view_cart" | const char *constE-commerce View Cart event. |
kEventViewItem = "view_item" | const char *constView Item event. |
kEventViewItemList = "view_item_list" | const char *constView Item List event. |
kEventViewPromotion = "view_promotion" | const char *constView Promotion event. |
kEventViewSearchResults = "view_search_results" | const char *constView 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"
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 bookingsAnalyticsParameterNumberOfRooms(Int) (optional) for hotel bookingsAnalyticsParameterNumberOfPassengers(Int) (optional) for travel bookingsAnalyticsParameterOrigin(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.