analytics package

The Firebase Analytics Web SDK. This SDK does not work in a Node.js environment.

Functions

Function Description
function(app, ...)
getAnalytics(app) Returns an Analytics instance for the given app.
initializeAnalytics(app, options) Returns an Analytics instance for the given app.
function(analyticsInstance, ...)
getGoogleAnalyticsClientId(analyticsInstance) Retrieves a unique Google Analytics identifier for the web client. See client_id.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.See Track Screenviews.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.See Measure exceptions.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.List of recommended event parameters can be found in the GA4 reference documentation.
logEvent(analyticsInstance, eventName, eventParams, options) Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.See Page views.
setAnalyticsCollectionEnabled(analyticsInstance, enabled) Sets whether Google Analytics collection is enabled for this app on this device. Sets global window['ga-disable-analyticsId'] = true;
setCurrentScreen(analyticsInstance, screenName, options) Use gtag config command to set screen_name.
setUserId(analyticsInstance, id, options) Use gtag config command to set user_id.
setUserProperties(analyticsInstance, properties, options) Use gtag config command to set all params specified.
function()
isSupported() This is a public static method provided to users that wraps four different checks:1. Check if it's not a browser extension environment. 2. Check if cookies are enabled in current browser. 3. Check if IndexedDB is supported by the browser environment. 4. Check if the current browser context is valid for using IndexedDB.open().
function(consentSettings, ...)
setConsent(consentSettings) Sets the applicable end user consent state for this web app across all gtag references once Firebase Analytics is initialized.Use the ConsentSettings to specify individual consent type values. By default consent types are set to "granted".
function(customParams, ...)
setDefaultEventParameters(customParams) Adds data that will be set on every event logged from the SDK, including automatic ones. With gtag's "set" command, the values passed persist on the current page and are passed with all subsequent events.
function(options, ...)
settings(options) Configures Firebase Analytics to use custom gtag or dataLayer names. Intended to be used if gtag.js script has been installed on this page independently of Firebase Analytics, and is using non-default names for either the gtag function or for dataLayer. Must be called before calling getAnalytics() or it won't have any effect.

Interfaces

Interface Description
Analytics An instance of Firebase Analytics.
AnalyticsCallOptions Additional options that can be passed to Analytics method calls such as logEvent, etc.
AnalyticsSettings Analytics instance initialization options.
ConsentSettings Consent status settings for each consent type. For more information, see the GA4 reference documentation for consent state and consent types.
ControlParams Standard gtag.js control parameters. For more information, see the GA4 reference documentation.
CustomParams Any custom params the user may pass to gtag.
EventParams Standard gtag.js event parameters. For more information, see the GA4 reference documentation.
GtagConfigParams A set of common Google Analytics config settings recognized by gtag.js.
Item Standard Google Analytics Item type.
Promotion Field previously used by some Google Analytics events.
SettingsOptions Specifies custom options for your Firebase Analytics instance. You must set these before initializing firebase.analytics().

Type Aliases

Type Alias Description
ConsentStatusString Whether a particular consent type has been granted or denied.
Currency Standard Google Analytics currency type.
CustomEventName Any custom event name string not in the standard list of recommended event names.
EventNameString Type for standard Google Analytics event names. logEvent also accepts any custom string and interprets it as a custom event name.

function(app, ...)

getAnalytics(app)

Returns an Analytics instance for the given app.

Signature:

export declare function getAnalytics(app?: FirebaseApp): Analytics;

Parameters

Parameter Type Description
app FirebaseApp The FirebaseApp to use.

Returns:

Analytics

initializeAnalytics(app, options)

Returns an Analytics instance for the given app.

Signature:

export declare function initializeAnalytics(app: FirebaseApp, options?: AnalyticsSettings): Analytics;

Parameters

Parameter Type Description
app FirebaseApp The FirebaseApp to use.
options AnalyticsSettings

Returns:

Analytics

function(analyticsInstance, ...)

getGoogleAnalyticsClientId(analyticsInstance)

Retrieves a unique Google Analytics identifier for the web client. See client_id.

Signature:

export declare function getGoogleAnalyticsClientId(analyticsInstance: Analytics): Promise<string>;

Parameters

Parameter Type Description
analyticsInstance Analytics

Returns:

Promise<string>

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'add_payment_info', eventParams?: {
    coupon?: EventParams['coupon'];
    currency?: EventParams['currency'];
    items?: EventParams['items'];
    payment_type?: EventParams['payment_type'];
    value?: EventParams['value'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'add_payment_info'
eventParams { coupon?: EventParams['coupon']; currency?: EventParams['currency']; items?: EventParams['items']; payment_type?: EventParams['payment_type']; value?: EventParams['value']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'purchase' | 'refund', eventParams?: {
    value?: EventParams['value'];
    currency?: EventParams['currency'];
    transaction_id: EventParams['transaction_id'];
    tax?: EventParams['tax'];
    shipping?: EventParams['shipping'];
    items?: EventParams['items'];
    coupon?: EventParams['coupon'];
    affiliation?: EventParams['affiliation'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'purchase' | 'refund'
eventParams { value?: EventParams['value']; currency?: EventParams['currency']; transaction_id: EventParams['transaction_id']; tax?: EventParams['tax']; shipping?: EventParams['shipping']; items?: EventParams['items']; coupon?: EventParams['coupon']; affiliation?: EventParams['affiliation']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

See Track Screenviews.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'screen_view', eventParams?: {
    firebase_screen: EventParams['firebase_screen'];
    firebase_screen_class: EventParams['firebase_screen_class'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'screen_view'
eventParams { firebase_screen: EventParams['firebase_screen']; firebase_screen_class: EventParams['firebase_screen_class']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'search' | 'view_search_results', eventParams?: {
    search_term?: EventParams['search_term'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'search' | 'view_search_results'
eventParams { search_term?: EventParams['search_term']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'select_content', eventParams?: {
    content_type?: EventParams['content_type'];
    item_id?: EventParams['item_id'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'select_content'
eventParams { content_type?: EventParams['content_type']; item_id?: EventParams['item_id']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'select_item', eventParams?: {
    items?: EventParams['items'];
    item_list_name?: EventParams['item_list_name'];
    item_list_id?: EventParams['item_list_id'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'select_item'
eventParams { items?: EventParams['items']; item_list_name?: EventParams['item_list_name']; item_list_id?: EventParams['item_list_id']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'select_promotion' | 'view_promotion', eventParams?: {
    items?: EventParams['items'];
    promotion_id?: EventParams['promotion_id'];
    promotion_name?: EventParams['promotion_name'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'select_promotion' | 'view_promotion'
eventParams { items?: EventParams['items']; promotion_id?: EventParams['promotion_id']; promotion_name?: EventParams['promotion_name']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'set_checkout_option', eventParams?: {
    checkout_step?: EventParams['checkout_step'];
    checkout_option?: EventParams['checkout_option'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'set_checkout_option'
eventParams { checkout_step?: EventParams['checkout_step']; checkout_option?: EventParams['checkout_option']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'share', eventParams?: {
    method?: EventParams['method'];
    content_type?: EventParams['content_type'];
    item_id?: EventParams['item_id'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'share'
eventParams { method?: EventParams['method']; content_type?: EventParams['content_type']; item_id?: EventParams['item_id']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'sign_up', eventParams?: {
    method?: EventParams['method'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'sign_up'
eventParams { method?: EventParams['method']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'timing_complete', eventParams?: {
    name: string;
    value: number;
    event_category?: string;
    event_label?: string;
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'timing_complete'
eventParams { name: string; value: number; event_category?: string; event_label?: string; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'add_shipping_info', eventParams?: {
    coupon?: EventParams['coupon'];
    currency?: EventParams['currency'];
    items?: EventParams['items'];
    shipping_tier?: EventParams['shipping_tier'];
    value?: EventParams['value'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'add_shipping_info'
eventParams { coupon?: EventParams['coupon']; currency?: EventParams['currency']; items?: EventParams['items']; shipping_tier?: EventParams['shipping_tier']; value?: EventParams['value']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'view_cart' | 'view_item', eventParams?: {
    currency?: EventParams['currency'];
    items?: EventParams['items'];
    value?: EventParams['value'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'view_cart' | 'view_item'
eventParams { currency?: EventParams['currency']; items?: EventParams['items']; value?: EventParams['value']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'view_item_list', eventParams?: {
    items?: EventParams['items'];
    item_list_name?: EventParams['item_list_name'];
    item_list_id?: EventParams['item_list_id'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'view_item_list'
eventParams { items?: EventParams['items']; item_list_name?: EventParams['item_list_name']; item_list_id?: EventParams['item_list_id']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent<T extends string>(analyticsInstance: Analytics, eventName: CustomEventName<T>, eventParams?: {
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName CustomEventName<T>
eventParams { [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'add_to_cart' | 'add_to_wishlist' | 'remove_from_cart', eventParams?: {
    currency?: EventParams['currency'];
    value?: EventParams['value'];
    items?: EventParams['items'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'add_to_cart' | 'add_to_wishlist' | 'remove_from_cart'
eventParams { currency?: EventParams['currency']; value?: EventParams['value']; items?: EventParams['items']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'begin_checkout', eventParams?: {
    currency?: EventParams['currency'];
    coupon?: EventParams['coupon'];
    value?: EventParams['value'];
    items?: EventParams['items'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'begin_checkout'
eventParams { currency?: EventParams['currency']; coupon?: EventParams['coupon']; value?: EventParams['value']; items?: EventParams['items']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'checkout_progress', eventParams?: {
    currency?: EventParams['currency'];
    coupon?: EventParams['coupon'];
    value?: EventParams['value'];
    items?: EventParams['items'];
    checkout_step?: EventParams['checkout_step'];
    checkout_option?: EventParams['checkout_option'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'checkout_progress'
eventParams { currency?: EventParams['currency']; coupon?: EventParams['coupon']; value?: EventParams['value']; items?: EventParams['items']; checkout_step?: EventParams['checkout_step']; checkout_option?: EventParams['checkout_option']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

See Measure exceptions.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'exception', eventParams?: {
    description?: EventParams['description'];
    fatal?: EventParams['fatal'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'exception'
eventParams { description?: EventParams['description']; fatal?: EventParams['fatal']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'generate_lead', eventParams?: {
    value?: EventParams['value'];
    currency?: EventParams['currency'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'generate_lead'
eventParams { value?: EventParams['value']; currency?: EventParams['currency']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

List of recommended event parameters can be found in the GA4 reference documentation.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'login', eventParams?: {
    method?: EventParams['method'];
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'login'
eventParams { method?: EventParams['method']; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

logEvent(analyticsInstance, eventName, eventParams, options)

Sends a Google Analytics event with given eventParams. This method automatically associates this logged event with this Firebase web app instance on this device.

See Page views.

Signature:

export declare function logEvent(analyticsInstance: Analytics, eventName: 'page_view', eventParams?: {
    page_title?: string;
    page_location?: string;
    page_path?: string;
    [key: string]: any;
}, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
eventName 'page_view'
eventParams { page_title?: string; page_location?: string; page_path?: string; [key: string]: any; }
options AnalyticsCallOptions

Returns:

void

setAnalyticsCollectionEnabled(analyticsInstance, enabled)

Sets whether Google Analytics collection is enabled for this app on this device. Sets global window['ga-disable-analyticsId'] = true;

Signature:

export declare function setAnalyticsCollectionEnabled(analyticsInstance: Analytics, enabled: boolean): void;

Parameters

Parameter Type Description
analyticsInstance Analytics The Analytics instance.
enabled boolean If true, enables collection, if false, disables it.

Returns:

void

setCurrentScreen(analyticsInstance, screenName, options)

Use with eventName as 'screen_view' and add relevant eventParams. See Track Screenviews.

Use gtag config command to set screen_name.

Signature:

export declare function setCurrentScreen(analyticsInstance: Analytics, screenName: string, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics The Analytics instance.
screenName string Screen name to set.
options AnalyticsCallOptions

Returns:

void

setUserId(analyticsInstance, id, options)

Use gtag config command to set user_id.

Signature:

export declare function setUserId(analyticsInstance: Analytics, id: string | null, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics The Analytics instance.
id string | null User ID to set.
options AnalyticsCallOptions

Returns:

void

setUserProperties(analyticsInstance, properties, options)

Use gtag config command to set all params specified.

Signature:

export declare function setUserProperties(analyticsInstance: Analytics, properties: CustomParams, options?: AnalyticsCallOptions): void;

Parameters

Parameter Type Description
analyticsInstance Analytics
properties CustomParams
options AnalyticsCallOptions

Returns:

void

function()

isSupported()

This is a public static method provided to users that wraps four different checks:

  1. Check if it's not a browser extension environment. 2. Check if cookies are enabled in current browser. 3. Check if IndexedDB is supported by the browser environment. 4. Check if the current browser context is valid for using IndexedDB.open().

Signature:

export declare function isSupported(): Promise<boolean>;

Returns:

Promise<boolean>

function(consentSettings, ...)

setConsent(consentSettings)

Sets the applicable end user consent state for this web app across all gtag references once Firebase Analytics is initialized.

Use the ConsentSettings to specify individual consent type values. By default consent types are set to "granted".

Signature:

export declare function setConsent(consentSettings: ConsentSettings): void;

Parameters

Parameter Type Description
consentSettings ConsentSettings Maps the applicable end user consent state for gtag.js.

Returns:

void

function(customParams, ...)

setDefaultEventParameters(customParams)

Adds data that will be set on every event logged from the SDK, including automatic ones. With gtag's "set" command, the values passed persist on the current page and are passed with all subsequent events.

Signature:

export declare function setDefaultEventParameters(customParams: CustomParams): void;

Parameters

Parameter Type Description
customParams CustomParams Any custom params the user may pass to gtag.js.

Returns:

void

function(options, ...)

settings(options)

Configures Firebase Analytics to use custom gtag or dataLayer names. Intended to be used if gtag.js script has been installed on this page independently of Firebase Analytics, and is using non-default names for either the gtag function or for dataLayer. Must be called before calling getAnalytics() or it won't have any effect.

Signature:

export declare function settings(options: SettingsOptions): void;

Parameters

Parameter Type Description
options SettingsOptions Custom gtag and dataLayer names.

Returns:

void

ConsentStatusString

Whether a particular consent type has been granted or denied.

Signature:

export declare type ConsentStatusString = 'granted' | 'denied';

Currency

Standard Google Analytics currency type.

Signature:

export declare type Currency = string | number;

CustomEventName

Any custom event name string not in the standard list of recommended event names.

Signature:

export declare type CustomEventName<T> = T extends EventNameString ? never : T;

EventNameString

Type for standard Google Analytics event names. logEvent also accepts any custom string and interprets it as a custom event name.

Signature:

export declare type EventNameString = 'add_payment_info' | 'add_shipping_info' | 'add_to_cart' | 'add_to_wishlist' | 'begin_checkout' | 'checkout_progress' | 'exception' | 'generate_lead' | 'login' | 'page_view' | 'purchase' | 'refund' | 'remove_from_cart' | 'screen_view' | 'search' | 'select_content' | 'select_item' | 'select_promotion' | 'set_checkout_option' | 'share' | 'sign_up' | 'timing_complete' | 'view_cart' | 'view_item' | 'view_item_list' | 'view_promotion' | 'view_search_results';