FirebaseAnalytics Framework Reference Stay organized with collections Save and categorize content based on your preferences.
Constants
The following constants are available globally.
Enables storage (such as device identifiers) related to advertising.
Declaration
Swift
staticletadStorage:ConsentTypeEnables storage (such as app identifiers) related to analytics, e.g. visit duration.
Declaration
Swift
staticletanalyticsStorage:ConsentTypeSets consent for sending user data to Google for advertising purposes.
Declaration
Swift
staticletadUserData:ConsentTypeSets consent for personalized advertising.
Declaration
Swift
staticletadPersonalization:ConsentTypeConsent status indicating consent is denied. For an overview of which data is sent when consentis denied, seeSDK behavior with consentmode.
Declaration
Swift
staticletdenied:ConsentStatusConsent status indicating consent is granted.
Declaration
Swift
staticletgranted:ConsentStatusAd Impression event. This event signifies when a user sees an ad impression. Note: If you supplythe
AnalyticsParameterValueparameter, you must also supply theAnalyticsParameterCurrencyparameter 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)
Declaration
Swift
letAnalyticsEventAdImpression:StringAdd Payment Info event. This event signifies that a user has submitted their paymentinformation. Note: If you supply the
AnalyticsParameterValueparameter, you must also supplytheAnalyticsParameterCurrencyparameter 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)
Declaration
Swift
letAnalyticsEventAddPaymentInfo:StringAdd Shipping Info event. This event signifies that a user has submitted their shippinginformation. Note: If you supply the
AnalyticsParameterValueparameter, you must also supplytheAnalyticsParameterCurrencyparameter 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)
Declaration
Swift
letAnalyticsEventAddShippingInfo:StringE-Commerce Add To Cart event. This event signifies that an item(s) was added to a cart forpurchase. Add this event to a funnel with
AnalyticsEventPurchaseto gauge the effectivenessof your checkout process. Note: If you supply theAnalyticsParameterValueparameter, you mustalso supply theAnalyticsParameterCurrencyparameter so that revenue metrics can be computedaccurately. Params:AnalyticsParameterCurrency(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterValue(Double) (optional)
Declaration
Swift
letAnalyticsEventAddToCart:StringE-Commerce Add To Wishlist event. This event signifies that an item was added to a wishlist. Usethis event to identify popular gift items. Note: If you supply the
AnalyticsParameterValueparameter, you must also supply theAnalyticsParameterCurrencyparameter so that revenuemetrics can be computed accurately. Params:AnalyticsParameterCurrency(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterValue(Double) (optional)
Declaration
Swift
letAnalyticsEventAddToWishlist:StringApp Open event. By logging this event when an App becomes active, developers can understand howoften users leave and return during the course of a Session. Although Sessions are automaticallyreported, this event can provide further clarification around the continuous engagement ofapp-users.
Declaration
Swift
letAnalyticsEventAppOpen:StringE-Commerce Begin Checkout event. This event signifies that a user has begun the process ofchecking out. Add this event to a funnel with your
AnalyticsEventPurchaseevent to gauge theeffectiveness of your checkout process. Note: If you supply theAnalyticsParameterValueparameter, you must also supply theAnalyticsParameterCurrencyparameter so that revenuemetrics can be computed accurately. Params:AnalyticsParameterCoupon(String) (optional)AnalyticsParameterCurrency(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterValue(Double) (optional)
Declaration
Swift
letAnalyticsEventBeginCheckout:StringCampaign Detail event. Log this event to supply the referral details of a re-engagementcampaign. Note: you must supply at least one of the required parametersAnalyticsParameterSource, 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)
Declaration
Swift
letAnalyticsEventCampaignDetails:StringEarn Virtual Currency event. This event tracks the awarding of virtual currency in your app. Logthis along with
AnalyticsEventSpendVirtualCurrencyto better understand your virtual economy.Params:AnalyticsParameterVirtualCurrencyName(String)AnalyticsParameterValue(Int or Double)
Declaration
Swift
letAnalyticsEventEarnVirtualCurrency:StringGenerate Lead event. Log this event when a lead has been generated in the app to understand theefficacy of your install and re-engagement campaigns. Note: If you supply the
AnalyticsParameterValueparameter, you must also supply theAnalyticsParameterCurrencyparameter so that revenue metrics can be computed accurately. Params:AnalyticsParameterCurrency(String) (optional)AnalyticsParameterValue(Double) (optional)
Declaration
Swift
letAnalyticsEventGenerateLead:StringIn-App Purchase event. This event signifies that extra content or a subscription was purchasedby a user inside an app. Note: This is different from the ecommerce purchase event. Note: If yousupply the
AnalyticsParameterValueparameter, you must also supply theAnalyticsParameterCurrencyparameter 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)
Declaration
Swift
letAnalyticsEventInAppPurchase:StringJoin Group event. Log this event when a user joins a group such as a guild, team or family. Usethis event to analyze how popular certain groups or social features are in your app. Params:
AnalyticsParameterGroupID(String)
Declaration
Swift
letAnalyticsEventJoinGroup:StringLevel End event. Log this event when the user finishes a level. Params:
AnalyticsParameterLevelName(String)AnalyticsParameterSuccess(String)
Declaration
Swift
letAnalyticsEventLevelEnd:StringLevel Start event. Log this event when the user starts a new level. Params:
AnalyticsParameterLevelName(String)
Declaration
Swift
letAnalyticsEventLevelStart:StringLevel Up event. This event signifies that a player has leveled up in your gaming app. It canhelp you gauge the level distribution of your userbase and help you identify certain levels thatare difficult to pass. Params:
AnalyticsParameterLevel(Int)AnalyticsParameterCharacter(String) (optional)
Declaration
Swift
letAnalyticsEventLevelUp:StringLogin event. Apps with a login feature can report this event to signify that a user has loggedin.
Declaration
Swift
letAnalyticsEventLogin:StringPost Score event. Log this event when the user posts a score in your gaming app. This event canhelp you understand how users are actually performing in your game and it can help you correlatehigh scores with certain audiences or behaviors. Params:
AnalyticsParameterScore(Int)AnalyticsParameterLevel(Int) (optional)AnalyticsParameterCharacter(String) (optional)
Declaration
Swift
letAnalyticsEventPostScore:StringE-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 for AppStore-based apps. Note: If you supply the
AnalyticsParameterValueparameter, you must alsosupply theAnalyticsParameterCurrencyparameter so that revenue metrics can be computedaccurately. 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)
Declaration
Swift
letAnalyticsEventPurchase:StringE-Commerce Refund event. This event signifies that a refund was issued. Note: If you supply the
AnalyticsParameterValueparameter, you must also supply theAnalyticsParameterCurrencyparameter 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)
Declaration
Swift
letAnalyticsEventRefund:StringE-Commerce Remove from Cart event. This event signifies that an item(s) was removed from a cart.Note: If you supply the
AnalyticsParameterValueparameter, you must also supply theAnalyticsParameterCurrencyparameter so that revenue metrics can be computed accurately. Params:AnalyticsParameterCurrency(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterValue(Double) (optional)
Declaration
Swift
letAnalyticsEventRemoveFromCart:StringScreen 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)
Declaration
Swift
letAnalyticsEventScreenView:StringSearch event. Apps that support search features can use this event to contextualize searchoperations by supplying the appropriate, corresponding parameters. This event can help youidentify 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
Declaration
Swift
letAnalyticsEventSearch:StringSelect Content event. This general purpose event signifies that a user has selected some contentof a certain type in an app. The content can be any object in your app. This event can help youidentify popular content and categories of content in your app. Params:
AnalyticsParameterContentType(String)AnalyticsParameterItemID(String)
Declaration
Swift
letAnalyticsEventSelectContent:StringSelect Item event. This event signifies that an item was selected by a user from a list. Use theappropriate parameters to contextualize the event. Use this event to discover the most popularitems selected. Params:
AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterItemListID(String) (optional)AnalyticsParameterItemListName(String) (optional)
Declaration
Swift
letAnalyticsEventSelectItem:StringSelect promotion event. This event signifies that a user has selected a promotion offer. Use theappropriate parameters to contextualize the event, such as the item(s) for which the promotionapplies. Params:
AnalyticsParameterCreativeName(String) (optional)AnalyticsParameterCreativeSlot(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterLocationID(String) (optional)AnalyticsParameterPromotionID(String) (optional)AnalyticsParameterPromotionName(String) (optional)
Declaration
Swift
letAnalyticsEventSelectPromotion:StringShare event. Apps with social features can log the Share event to identify the most viralcontent. Params:
AnalyticsParameterContentType(String)AnalyticsParameterItemID(String)
Declaration
Swift
letAnalyticsEventShare:StringSign Up event. This event indicates that a user has signed up for an account in your app. Theparameter signifies the method by which the user signed up. Use this event to understand thedifferent behaviors between logged in and logged out users. Params:
AnalyticsParameterMethod(String)
Declaration
Swift
letAnalyticsEventSignUp:StringSpend Virtual Currency event. This event tracks the sale of virtual goods in your app and canhelp you identify which virtual goods are the most popular objects of purchase. Params:
AnalyticsParameterItemName(String)AnalyticsParameterVirtualCurrencyName(String)AnalyticsParameterValue(Int or Double)
Declaration
Swift
letAnalyticsEventSpendVirtualCurrency:StringTutorial Begin event. This event signifies the start of the on-boarding process in your app. Usethis in a funnel with
AnalyticsEventTutorialCompleteto understand how many users completethis process and move on to the full app experience.Declaration
Swift
letAnalyticsEventTutorialBegin:StringTutorial End event. Use this event to signify the user’s completion of your app’s on-boardingprocess. Add this to a funnel with
AnalyticsEventTutorialBeginto gauge the completion rateof your on-boarding process.Declaration
Swift
letAnalyticsEventTutorialComplete:StringUnlock Achievement event. Log this event when the user has unlocked an achievement in yourgame. Since achievements generally represent the breadth of a gaming experience, this event canhelp you understand how many users are experiencing all that your game has to offer. Params:
AnalyticsParameterAchievementID(String)
Declaration
Swift
letAnalyticsEventUnlockAchievement:StringE-commerce View Cart event. This event signifies that a user has viewed their cart. Use this toanalyze your purchase funnel. Note: If you supply the
AnalyticsParameterValueparameter, youmust also supply theAnalyticsParameterCurrencyparameter so that revenue metrics can becomputed accurately. Params:AnalyticsParameterCurrency(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterValue(Double) (optional)
Declaration
Swift
letAnalyticsEventViewCart:StringView Item event. This event signifies that a user has viewed an item. Use the appropriateparameters to contextualize the event. Use this event to discover the most popular items viewedin your app. Note: If you supply the
AnalyticsParameterValueparameter, you must also supplytheAnalyticsParameterCurrencyparameter so that revenue metrics can be computed accurately.Params:AnalyticsParameterCurrency(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterValue(Double) (optional)
Declaration
Swift
letAnalyticsEventViewItem:StringView 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)
Declaration
Swift
letAnalyticsEventViewItemList:StringView Promotion event. This event signifies that a promotion was shown to a user. Add this eventto a funnel with the
AnalyticsEventAddToCartandAnalyticsEventPurchaseto gauge yourconversion process. Params:AnalyticsParameterCreativeName(String) (optional)AnalyticsParameterCreativeSlot(String) (optional)AnalyticsParameterItems([[String: Any]]) (optional)AnalyticsParameterLocationID(String) (optional)AnalyticsParameterPromotionID(String) (optional)AnalyticsParameterPromotionName(String) (optional)
Declaration
Swift
letAnalyticsEventViewPromotion:StringView Search Results event. Log this event when the user has been presented with the results of asearch. Params:
AnalyticsParameterSearchTerm(String)
Declaration
Swift
letAnalyticsEventViewSearchResults:StringGame achievement ID (String).
let params = [ AnalyticsParameterAchievementID : "10_matches_won", // ... ]
Declaration
Swift
letAnalyticsParameterAchievementID:StringThe ad format (e.g. Banner, Interstitial, Rewarded, Native, Rewarded Interstitial, Instream).(String).
let params = [ AnalyticsParameterAdFormat : "Banner", // ... ]
Declaration
Swift
letAnalyticsParameterAdFormat:StringAd Network Click ID (String). Used for network-specific click IDs which vary in format.
let params = [ AnalyticsParameterAdNetworkClickID : "1234567", // ... ]
Declaration
Swift
letAnalyticsParameterAdNetworkClickID:StringThe ad platform (e.g. MoPub, IronSource) (String).
let params = [ AnalyticsParameterAdPlatform : "MoPub", // ... ]
Declaration
Swift
letAnalyticsParameterAdPlatform:StringThe ad source (e.g. AdColony) (String).
let params = [ AnalyticsParameterAdSource : "AdColony", // ... ]
Declaration
Swift
letAnalyticsParameterAdSource:StringThe ad unit name (e.g. Banner_03) (String).
let params = [ AnalyticsParameterAdUnitName : "Banner_03", // ... ]
Declaration
Swift
letAnalyticsParameterAdUnitName:StringA product affiliation to designate a supplying company or brick and mortar store location(String).
let params = [ AnalyticsParameterAffiliation : "Google Store", // ... ]
Declaration
Swift
letAnalyticsParameterAffiliation:StringCampaign custom parameter (String). Used as a method of capturing custom data in a campaign.Use varies by network.
let params = [ AnalyticsParameterCP1 : "custom_data", // ... ]
Declaration
Swift
letAnalyticsParameterCP1:StringThe individual campaign name, slogan, promo code, etc. Some networks have pre-defined macro tocapture campaign information, otherwise can be populated by developer. Highly Recommended(String).
let params = [ AnalyticsParameterCampaign : "winter_promotion", // ... ]
Declaration
Swift
letAnalyticsParameterCampaign:StringCampaign ID (String). Used for keyword analysis to identify a specific product promotion orstrategic campaign. This is a required key for GA4 data import.
let params = [ AnalyticsParameterCampaignID : "7877652710", // ... ]
Declaration
Swift
letAnalyticsParameterCampaignID:StringCharacter used in game (String).
let params = [ AnalyticsParameterCharacter : "beat_boss", // ... ]
Declaration
Swift
letAnalyticsParameterCharacter:StringCampaign content (String).
Declaration
Swift
letAnalyticsParameterContent:StringType of content selected (String).
let params = [ AnalyticsParameterContentType : "news article", // ... ]
Declaration
Swift
letAnalyticsParameterContentType:StringCoupon code used for a purchase (String).
let params = [ AnalyticsParameterCoupon : "SUMMER_FUN", // ... ]
Declaration
Swift
letAnalyticsParameterCoupon:StringCreative Format (String). Used to identify the high-level classification of the type of adserved by a specific campaign.
let params = [ AnalyticsParameterCreativeFormat : "display", // ... ]
Declaration
Swift
letAnalyticsParameterCreativeFormat:StringThe name of a creative used in a promotional spot (String).
let params = [ AnalyticsParameterCreativeName : "Summer Sale", // ... ]
Declaration
Swift
letAnalyticsParameterCreativeName:StringThe name of a creative slot (String).
let params = [ AnalyticsParameterCreativeSlot : "summer_banner2", // ... ]
Declaration
Swift
letAnalyticsParameterCreativeSlot:StringCurrency of the purchase or items associated with the event, in 3-letter ISO_4217 format (String).
let params = [ AnalyticsParameterCurrency : "USD", // ... ]
Declaration
Swift
letAnalyticsParameterCurrency:StringFlight or Travel destination (String).
let params = [ AnalyticsParameterDestination : "Mountain View, CA", // ... ]
Declaration
Swift
letAnalyticsParameterDestination:StringMonetary value of discount associated with a purchase (Double).
let params = [ AnalyticsParameterDiscount : 2.0, AnalyticsParameterCurrency : "USD", // e.g. $2.00 USD // ... ]
Declaration
Swift
letAnalyticsParameterDiscount:StringThe arrival date, check-out date or rental end date for the item. This should be inYYYY-MM-DD format (String).
let params = [ AnalyticsParameterEndDate : "2015-09-14", // ... ]
Declaration
Swift
letAnalyticsParameterEndDate:StringIndicates that the associated event should either extend the current session or start a newsession if no session was active when the event was logged. Specify 1 to extend the currentsession or to start a new session; any other value will not extend or start a session.
let params = [ AnalyticsParameterExtendSession : 1, // ... ]
Declaration
Swift
letAnalyticsParameterExtendSession:StringFlight number for travel events (String).
let params = [ AnalyticsParameterFlightNumber : "ZZ800", // ... ]
Declaration
Swift
letAnalyticsParameterFlightNumber:StringIndicates if the user is on a free trial of a subscription. Specify 1 to indicate true and 0 toindicate false (Int).
let params = [ AnalyticsParameterFreeTrial : 1, // ... ]
Declaration
Swift
letAnalyticsParameterFreeTrial:StringGroup/clan/guild ID (String).
let params = [ AnalyticsParameterGroupID : "g1", // ... ]
Declaration
Swift
letAnalyticsParameterGroupID:StringThe index of the item in a list (Int).
let params = [ AnalyticsParameterIndex : 5, // ... ]
Declaration
Swift
letAnalyticsParameterIndex:StringItem brand (String).
let params = [ AnalyticsParameterItemBrand : "Google", // ... ]
Declaration
Swift
letAnalyticsParameterItemBrand:StringItem category (context-specific) (String).
let params = [ AnalyticsParameterItemCategory : "pants", // ... ]
Declaration
Swift
letAnalyticsParameterItemCategory:StringItem Category (context-specific) (String).
let params = [ AnalyticsParameterItemCategory2 : "pants", // ... ]
Declaration
Swift
letAnalyticsParameterItemCategory2:StringItem Category (context-specific) (String).
let params = [ AnalyticsParameterItemCategory3 : "pants", // ... ]
Declaration
Swift
letAnalyticsParameterItemCategory3:StringItem Category (context-specific) (String).
let params = [ AnalyticsParameterItemCategory4 : "pants", // ... ]
Declaration
Swift
letAnalyticsParameterItemCategory4:StringItem Category (context-specific) (String).
let params = [ AnalyticsParameterItemCategory5 : "pants", // ... ]
Declaration
Swift
letAnalyticsParameterItemCategory5:StringItem ID (context-specific) (String).
let params = [ AnalyticsParameterItemID : "SKU_12345", // ... ]
Declaration
Swift
letAnalyticsParameterItemID:StringThe ID of the list in which the item was presented to the user (String).
let params = [ AnalyticsParameterItemListID : "ABC123", // ... ]
Declaration
Swift
letAnalyticsParameterItemListID:StringThe name of the list in which the item was presented to the user (String).
let params = [ AnalyticsParameterItemListName : "Related products", // ... ]
Declaration
Swift
letAnalyticsParameterItemListName:StringItem Name (context-specific) (String).
let params = [ AnalyticsParameterItemName : "jeggings", // ... ]
Declaration
Swift
letAnalyticsParameterItemName:StringItem variant (String).
let params = [ AnalyticsParameterItemVariant : "Black", // ... ]
Declaration
Swift
letAnalyticsParameterItemVariant:StringThe list of items involved in the transaction expressed as
[[String: Any]].let params = [ AnalyticsParameterItems : [ [AnalyticsParameterItemName : "jeggings", AnalyticsParameterItemCategory : "pants"], [AnalyticsParameterItemName : "boots", AnalyticsParameterItemCategory : "shoes"], ], ]
Declaration
Swift
letAnalyticsParameterItems:StringLevel in game (Int).
let params = [ AnalyticsParameterLevel : 42, // ... ]
Declaration
Swift
letAnalyticsParameterLevel:StringThe name of a level in a game (String).
let params = [ AnalyticsParameterLevelName : "room_1", // ... ]
Declaration
Swift
letAnalyticsParameterLevelName:StringLocation (String). The GooglePlace ID that corresponds to the associated event. Alternatively, you can supply your own customLocation ID.
let params = [ AnalyticsParameterLocation : "ChIJiyj437sx3YAR9kUWC8QkLzQ", // ... ]
Declaration
Swift
letAnalyticsParameterLocation:StringThe location associated with the event. Preferred to be the GooglePlace ID that corresponds to theassociated item but could be overridden to a custom location ID string.(String).
let params = [ AnalyticsParameterLocationID : "ChIJiyj437sx3YAR9kUWC8QkLzQ", // ... ]
Declaration
Swift
letAnalyticsParameterLocationID:StringMarketing Tactic (String). Used to identify the targeting criteria applied to a specificcampaign.
let params = [ AnalyticsParameterMarketingTactic : "Remarketing", // ... ]
Declaration
Swift
letAnalyticsParameterMarketingTactic:StringThe advertising or marketing medium, for example: cpc, banner, email, push. Highly recommended(String).
let params = [ AnalyticsParameterMedium : "email", // ... ]
Declaration
Swift
letAnalyticsParameterMedium:StringA particular approach used in an operation; for example, “facebook” or “email” in the contextof a sign_up or login event. (String).
let params = [ AnalyticsParameterMethod : "google", // ... ]
Declaration
Swift
letAnalyticsParameterMethod:StringNumber of nights staying at hotel (Int).
let params = [ AnalyticsParameterNumberOfNights : 3, // ... ]
Declaration
Swift
letAnalyticsParameterNumberOfNights:StringNumber of passengers traveling (Int).
let params = [ AnalyticsParameterNumberOfPassengers : 11, // ... ]
Declaration
Swift
letAnalyticsParameterNumberOfPassengers:StringNumber of rooms for travel events (Int).
let params = [ AnalyticsParameterNumberOfRooms : 2, // ... ]
Declaration
Swift
letAnalyticsParameterNumberOfRooms:StringFlight or Travel origin (String).
let params = [ AnalyticsParameterOrigin : "Mountain View, CA", // ... ]
Declaration
Swift
letAnalyticsParameterOrigin:StringThe chosen method of payment (String).
let params = [ AnalyticsParameterPaymentType : "Visa", // ... ]
Declaration
Swift
letAnalyticsParameterPaymentType:StringPurchase price (Double).
let params = [ AnalyticsParameterPrice : 1.0, AnalyticsParameterCurrency : "USD", // e.g. $1.00 USD // ... ]
Declaration
Swift
letAnalyticsParameterPrice:StringIndicates if an item’s price is discounted. Specify 1 to indicate true and 0 to indicate false(Int).
let params = [ AnalyticsParameterPriceIsDiscounted : 1, // ... ]
Declaration
Swift
letAnalyticsParameterPriceIsDiscounted:StringThe ID of a product (String).
let params = [ AnalyticsParameterProductID : "PROD_12345", // ... ]
Declaration
Swift
letAnalyticsParameterProductID:StringThe name of a product (String).
let params = [ AnalyticsParameterProductName : "My Awesome Product", // ... ]
Declaration
Swift
letAnalyticsParameterProductName:StringThe ID of a product promotion (String).
let params = [ AnalyticsParameterPromotionID : "ABC123", // ... ]
Declaration
Swift
letAnalyticsParameterPromotionID:StringThe name of a product promotion (String).
let params = [ AnalyticsParameterPromotionName : "Summer Sale", // ... ]
Declaration
Swift
letAnalyticsParameterPromotionName:StringPurchase quantity (Int).
let params = [ AnalyticsParameterQuantity : 1, // ... ]
Declaration
Swift
letAnalyticsParameterQuantity:StringScore in game (Int).
let params = [ AnalyticsParameterScore : 4200, // ... ]
Declaration
Swift
letAnalyticsParameterScore:StringCurrent screen class, such as the class name of the UIViewController, logged with screen_viewevent and added to every event (String).
let params = [ AnalyticsParameterScreenClass : "LoginViewController", // ... ]
Declaration
Swift
letAnalyticsParameterScreenClass:StringCurrent screen name, such as the name of the UIViewController, logged with screen_view event andadded to every event (String).
let params = [ AnalyticsParameterScreenName : "LoginView", // ... ]
Declaration
Swift
letAnalyticsParameterScreenName:StringThe search string/keywords used (String).
let params = [ AnalyticsParameterSearchTerm : "periodic table", // ... ]
Declaration
Swift
letAnalyticsParameterSearchTerm:StringShipping cost associated with a transaction (Double).
let params = [ AnalyticsParameterShipping : 5.99, AnalyticsParameterCurrency : "USD", // e.g. $5.99 USD // ... ]
Declaration
Swift
letAnalyticsParameterShipping:StringThe shipping tier (e.g. Ground, Air, Next-day) selected for delivery of the purchased item(String).
let params = [ AnalyticsParameterShippingTier : "Ground", // ... ]
Declaration
Swift
letAnalyticsParameterShippingTier:StringThe origin of your traffic, such as an Ad network (for example, google) or partner (urbanairship). Identify the advertiser, site, publication, etc. that is sending traffic to yourproperty. Highly recommended (String).
let params = [ AnalyticsParameterSource : "InMobi", // ... ]
Declaration
Swift
letAnalyticsParameterSource:StringSource Platform (String). Used to identify the platform responsible for directing traffic to agiven Analytics property (e.g., a buying platform where budgets, targeting criteria, etc. areset, a platform for managing organic traffic data, etc.).
let params = [ AnalyticsParameterSourcePlatform : "sa360", // ... ]
Declaration
Swift
letAnalyticsParameterSourcePlatform:StringThe departure date, check-in date or rental start date for the item. This should be inYYYY-MM-DD format (String).
let params = [ AnalyticsParameterStartDate : "2015-09-14", // ... ]
Declaration
Swift
letAnalyticsParameterStartDate:StringIndicates if the purchase is a subscription. Specify 1 to indicate true and 0 to indicate false(Int).
let params = [ AnalyticsParameterSubscription : 1, // ... ]
Declaration
Swift
letAnalyticsParameterSubscription:StringThe result of an operation. Specify 1 to indicate success and 0 to indicate failure (Int).
let params = [ AnalyticsParameterSuccess : 1, // ... ]
Declaration
Swift
letAnalyticsParameterSuccess:StringTax cost associated with a transaction (Double).
let params = [ AnalyticsParameterTax : 2.43, AnalyticsParameterCurrency : "USD", // e.g. $2.43 USD // ... ]
Declaration
Swift
letAnalyticsParameterTax:StringIf you’re manually tagging keyword campaigns, you should use utm_term to specify the keyword(String).
let params = [ AnalyticsParameterTerm : "game", // ... ]
Declaration
Swift
letAnalyticsParameterTerm:StringThe unique identifier of a transaction (String).
let params = [ AnalyticsParameterTransactionID : "T12345", // ... ]
Declaration
Swift
letAnalyticsParameterTransactionID:StringTravel class (String).
let params = [ AnalyticsParameterTravelClass : "business", // ... ]
Declaration
Swift
letAnalyticsParameterTravelClass:StringA context-specific numeric value which is accumulated automatically for each event type. This isa general purpose parameter that is useful for accumulating a key metric that pertains to anevent. Examples include revenue, distance, time and points. Value should be specified as Int orDouble.Notes: Values for pre-defined currency-related events (such as
AnalyticsEventAddToCart)should be supplied using Double and must be accompanied by aAnalyticsParameterCurrencyparameter. The valid range of accumulated values is[-9,223,372,036,854.77, 9,223,372,036,854.77]. Supplying a non-numeric value, omitting thecorrespondingAnalyticsParameterCurrencyparameter, or supplying an invalidcurrency code for conversion events will cause thatconversion to be omitted from reporting.let params = [ AnalyticsParameterValue : 3.99, AnalyticsParameterCurrency : "USD", // e.g. $3.99 USD // ... ]
Declaration
Swift
letAnalyticsParameterValue:StringName of virtual currency type (String).
let params = [ AnalyticsParameterVirtualCurrencyName : "virtual_currency_name", // ... ]
Declaration
Swift
letAnalyticsParameterVirtualCurrencyName:StringIndicates whether events logged by Google Analytics can be used to personalize ads for the user.Set to “YES” to enable, or “NO” to disable. Default is enabled. See thedocumentation formore details and information about related settings.
Analytics.setUserProperty("NO", forName: AnalyticsUserPropertyAllowAdPersonalizationSignals)Declaration
Swift
letAnalyticsUserPropertyAllowAdPersonalizationSignals:StringThe method used to sign in. For example, “google”, “facebook” or “twitter”.
Declaration
Swift
letAnalyticsUserPropertySignUpMethod: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-10-28 UTC.