90 KiB
Metrics
This document enumerates the metrics collected by this project using the Glean SDK. This project may depend on other projects which also collect metrics. This means you might have to go searching through the dependency tree to get a full picture of everything collected by this project.
Pings
activation
This ping is intended to provide a measure of the activation of mobile products. It's generated when Fenix starts, right after Glean is initialized. It doesn't include the client_id, since it might be reporting an hashed version of the Google Advertising ID.
Data reviews for this ping:
Bugs related to this ping:
- 1538011
- 1501822
The following metrics are added to the ping:
Name | Type | Description | Data reviews | Extras | Expiration | Data Sensitivity |
---|---|---|---|---|---|---|
activation.activation_id | uuid | An alternate identifier, not correlated with the client_id, generated once and only sent with the activation ping. | 1, 2 | 2021-04-01 | 4 | |
activation.identifier | string | A hashed and salted version of the Google Advertising ID from the device. This will never be sent in a ping that also contains the client_id. | 1, 2 | 2021-04-01 | 4 |
events
This is a built-in ping that is assembled out of the box by the Glean SDK.
See the Glean SDK documentation for the events
ping.
The following metrics are added to the ping:
Name | Type | Description | Data reviews | Extras | Expiration | Data Sensitivity |
---|---|---|---|---|---|---|
about_page.privacy_notice_tapped | event | A user tapped on "Privacy notice" item from About page | 1, 2 | 2021-04-01 | 2 | |
about_page.support_tapped | event | A user tapped on "Support" item from About page | 1, 2 | 2021-04-01 | 2 | |
addons.open_addon_in_toolbar_menu | event | A user interacted with an installed add-on in the toolbar menu | 1, 2 |
|
2021-04-01 | 2 |
addons.open_addons_in_settings | event | A user accessed "Add-ons" from the Settings | 1, 2 | 2021-04-01 | 2 | |
app_theme.dark_theme_selected | event | A user selected Dark Theme | 1, 2 |
|
2021-04-01 | 2 |
autoplay.setting_changed | event | A user changed their autoplay setting to either block_cellular, block_audio, or block_all. | 1 |
|
2021-02-01 | 2 |
autoplay.visited_setting | event | A user visited the autoplay settings screen | 1 | 2021-02-01 | 2 | |
bookmarks_management.copied | event | A user copied a bookmark. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.edited | event | A user edited the title and/or URL of an existing bookmark. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.folder_add | event | A user added a new bookmark folder. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.folder_remove | event | A user removed a bookmark folder. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.moved | event | A user moved an existing bookmark or folder to another folder. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.multi_removed | event | A user removed multiple bookmarks at once. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.open_in_new_tab | event | A user opened a bookmark in a new tab. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.open_in_new_tabs | event | A user opened multiple bookmarks at once in new tabs. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.open_in_private_tab | event | A user opened a bookmark in a new private tab. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.open_in_private_tabs | event | A user opened multiple bookmarks at once in new private tabs. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.removed | event | A user removed a bookmark item. | 1, 2 | 2021-04-01 | 2 | |
bookmarks_management.shared | event | A user shared a bookmark. | 1, 2 | 2021-04-01 | 2 | |
collections.add_tab_button | event | A user tapped the "add tab" button in the three dot menu of collections | 1, 2 | 2021-04-01 | 2 | |
collections.all_tabs_restored | event | A user tapped "open tabs" from collection menu | 1, 2 | 2021-04-01 | 1, 2 | |
collections.long_press | event | A user long pressed on a tab, triggering the collection creation screen | 1, 2 | 2021-04-01 | 2 | |
collections.removed | event | A user tapped delete collection from collection menu | 1, 2 | 2021-04-01 | 1, 2 | |
collections.rename_button | event | A user pressed the "rename collection" button in the three dot menu | 1, 2 | 2021-04-01 | 2 | |
collections.renamed | event | A user renamed a collection | 1, 2 | 2021-04-01 | 1, 2 | |
collections.save_button | event | A user pressed the "save to collection" button on either the home or browser screen, triggering the collection creation screen to open (tab_select_opened) | 1, 2 |
|
2021-04-01 | 2 |
collections.saved | event | A user saved a list of tabs to a new collection | 1, 2 |
|
2021-04-01 | 1, 2 |
collections.shared | event | A user tapped share collection | 1, 2 | 2021-04-01 | 1, 2 | |
collections.tab_removed | event | A user tapped remove tab from collection tab list | 1, 2 | 2021-04-01 | 1, 2 | |
collections.tab_restored | event | A user restored a tab from collection tab list | 1, 2 | 2021-04-01 | 1, 2 | |
collections.tab_select_opened | event | A user opened the select tabs screen (the first step of the collection creation flow) | 1, 2 | 2021-04-01 | 1, 2 | |
collections.tabs_added | event | A user saved a list of tabs to an existing collection | 1, 2 |
|
2021-04-01 | 1, 2 |
context_menu.item_tapped | event | A user tapped an item in the browsers context menu | 1, 2, 3 |
|
2021-04-01 | 2 |
contextual_hint.tracking_protection.dismiss | event | The enhanced tracking protection contextual hint was dismissed by pressing the close button | 1, 2 | 2021-04-01 | 2 | |
contextual_hint.tracking_protection.display | event | The enhanced tracking protection contextual hint was displayed. | 1, 2 | 2021-04-01 | 2 | |
contextual_hint.tracking_protection.inside_tap | event | The user tapped inside of the etp contextual hint (which brings up the etp panel for this site). | 1, 2 | 2021-04-01 | 2 | |
contextual_hint.tracking_protection.outside_tap | event | The user tapped outside of the etp contextual hint (which has no effect). | 1, 2 | 2021-04-01 | 2 | |
crash_reporter.closed | event | The crash reporter was closed | 1, 2 |
|
2021-04-01 | 2 |
crash_reporter.opened | event | The crash reporter was displayed | 1, 2 | 2021-04-01 | 2 | |
custom_tab.action_button | event | A user pressed the action button provided by the launching app | 1, 2 | 2021-04-01 | 2 | |
custom_tab.closed | event | A user closed the custom tab | 1, 2 | 2021-04-01 | 2 | |
custom_tab.menu | event | A user opened the custom tabs menu | 1, 2 | 2021-04-01 | 2 | |
download_notification.cancel | event | A user cancelled a download in the download notification | 1, 2 | 2021-04-01 | 2 | |
download_notification.in_app_open | event | A user opened a downloaded file in the in-app notification link | 1, 2 | 2021-04-01 | 2 | |
download_notification.in_app_try_again | event | A user tapped on try again when a download fails in the in-app notification link | 1, 2 | 2021-04-01 | 2 | |
download_notification.open | event | A user opened a downloaded file in the download notification | 1, 2 | 2021-04-01 | 2 | |
download_notification.pause | event | A user paused a download in the download notification | 1, 2 | 2021-04-01 | 2 | |
download_notification.resume | event | A user resumed a download in the download notification | 1, 2 | 2021-04-01 | 2 | |
download_notification.try_again | event | A user tapped on try again when a download fails in the download notification | 1, 2 | 2021-04-01 | 2 | |
error_page.visited_error | event | A user encountered an error page | 1, 2 |
|
2021-04-01 | 2 |
events.app_opened | event | A user opened the app (from cold start, to the homescreen or browser) | 1, 2 |
|
2021-04-01 | 2 |
events.app_opened_all_startup | event | A user opened the app to the HomeActivity. The HomeActivity encompasses the home screen, browser screen, settings screen, collections and other screens in the nav_graph. This differs from the app_opened probe because it measures all startups, not just cold startup. Note: There is a short gap between the time application goes into background and the time android reports the application going into the background. Note: This metric does not record souce when app opened from task switcher: open application -> press home button -> open recent tasks -> choose fenix. In this case will report [source = unknown, type = hot, has_saved_instance_state = false]. | 1, 2, 3, 4 |
|
2021-06-01 | 2 |
events.app_received_intent | event | The system received an Intent for the HomeActivity. An intent is received an external entity wants to the app to display content. Intents can be received when the app is closed – at which point the app will be opened – or when the app is already opened – at which point the already open app will make changes such as loading a url. This can be used loosely as a heuristic for when the user requested to open the app. The HomeActivity encompasses the home screen and browser screen but may include other screens. This differs from the app_opened probe because it measures all startups, not just cold startup. | 1, 2 |
|
2021-06-01 | |
events.browser_menu_action | event | A browser menu item was tapped | 1, 2, 3, 4 |
|
2021-04-01 | 2 |
events.entered_url | event | A user entered a url | 1, 2 |
|
2021-04-01 | 2 |
events.opened_link | event | A user opened a link with Fenix | 1, 2 |
|
2021-04-01 | 2 |
events.performed_search | event | A user performed a search | 1, 2, 3 |
|
2021-04-01 | 2 |
events.preference_toggled | event | A user toggled a boolean preference in settings | 1, 2, 3, 4, 5, 6, 7, 8 |
|
2021-06-01 | 1, 2 |
events.search_bar_tapped | event | A user tapped the search bar | 1, 2 |
|
2021-04-01 | 2 |
events.tab_counter_menu_action | event | A tab counter menu item was tapped | 1, 2 |
|
2021-04-01 | 2 |
events.whats_new_tapped | event | A user opened the "what's new" page button | 1, 2 | 2021-04-01 | 2 | |
find_in_page.closed | event | A user closed the find in page UI | 1, 2 | 2021-08-01 | 2 | |
find_in_page.opened | event | A user opened the find in page UI | 1, 2 | 2021-08-01 | 2 | |
find_in_page.searched_page | event | A user searched the page | 1, 2 | 2021-08-01 | 2 | |
history.opened | event | A user opened the history screen | 1, 2 | 2021-08-01 | 2 | |
history.opened_item | event | A user opened a history item | 1, 2 | 2021-08-01 | 2 | |
history.removed | event | A user removed a history item | 1, 2 | 2021-08-01 | 2 | |
history.removed_all | event | A user removed all history items | 1, 2 | 2021-08-01 | 2 | |
history.shared | event | A user shared a history item | 1, 2 | 2021-08-01 | 2 | |
login_dialog.cancelled | event | The login dialog prompt was cancelled | 1 | 2021-02-01 | 2 | |
login_dialog.displayed | event | The login dialog prompt was displayed | 1 | 2021-02-01 | 2 | |
login_dialog.never_save | event | The login dialog prompt "never save" button was pressed | 1 | 2021-02-01 | 2 | |
login_dialog.saved | event | The login dialog prompt "save" button was pressed | 1 | 2021-02-01 | 2 | |
logins.copy_login | event | A user copied a piece of a login in saved logins | 1, 2 | 2021-08-01 | 2 | |
logins.delete_saved_login | event | A user confirms delete of a saved login | 1, 2 | 2021-08-01 | 2 | |
logins.open_individual_login | event | A user accessed an individual login in saved logins | 1, 2 | 2021-08-01 | 2 | |
logins.open_login_editor | event | A user entered the edit screen for an individual saved login | 1, 2 | 2021-08-01 | 2 | |
logins.open_logins | event | A user accessed Logins in Settings | 1, 2 | 2021-08-01 | 2 | |
logins.save_edited_login | event | A user saves changes made to an individual login | 1, 2 | 2021-08-01 | 2 | |
logins.save_logins_setting_changed | event | A user changed their setting for asking to save logins | 1, 2 |
|
2021-08-01 | 2 |
logins.view_password_login | event | A user viewed a password in an individual saved login | 1, 2 | 2021-08-01 | 2 | |
master_password.displayed | event | The master password migration dialog was displayed | 1 | 2021-03-01 | 2 | |
master_password.migration | event | Logins were successfully migrated using a master password. | 1 | 2021-03-01 | 2 | |
media_notification.pause | event | A user pressed the pause icon on the media notification | 1, 2 | 2021-08-01 | 2 | |
media_notification.play | event | A user pressed the play icon on the media notification | 1, 2 | 2021-08-01 | 2 | |
media_state.pause | event | Media playback was paused. | 1, 2 | 2021-08-01 | 2 | |
media_state.play | event | Media started playing. | 1, 2 | 2021-08-01 | 2 | |
media_state.stop | event | Media playback has ended. | 1, 2 | 2021-08-01 | 2 | |
onboarding.finish | event | The user taps starts browsing and ends the onboarding experience. | 1, 2 | 2021-08-01 | 2 | |
onboarding.fxa_auto_signin | event | The onboarding automatic sign in card was tapped. | 1, 2 | 2021-08-01 | 2 | |
onboarding.fxa_manual_signin | event | The onboarding manual sign in card was tapped. | 1, 2 | 2021-08-01 | 2 | |
onboarding.pref_toggled_private_browsing | event | The private browsing preference was selected from the onboarding card. | 1, 2 | 2021-08-01 | 2 | |
onboarding.pref_toggled_theme_picker | event | The device theme was chosen using the theme picker onboarding card. | 1, 2 |
|
2021-08-01 | 2 |
onboarding.pref_toggled_toolbar_position | event | The toolbar position preference was chosen from the onboarding card. | 1, 2 |
|
2021-08-01 | 2 |
onboarding.pref_toggled_tracking_prot | event | The tracking protection preference was chosen from the onboarding card. | 1, 2 |
|
2021-08-01 | 2 |
onboarding.privacy_notice | event | The onboarding privacy notice card was tapped. | 1, 2 | 2021-08-01 | 2 | |
pocket.pocket_top_site_clicked | event | A user clicked on the trending Pocket top site | 1, 2 | 2021-08-01 | 2 | |
pocket.pocket_top_site_removed | event | A user removed the trending Pocket top site | 1, 2 | 2021-08-01 | 2 | |
private_browsing_mode.notification_tapped | event | A user pressed the private browsing mode notification itself. | 1, 2 | 2021-08-01 | 2 | |
private_browsing_mode.snackbar_undo | event | A user pressed the "undo" button in the snackbar that is shown when the garbage icon is tapped. | 1, 2 | 2021-08-01 | 2 | |
private_browsing_shortcut.cfr_add_shortcut | event | A user pressed the "Add shortcut" button when the contextual feature recommender appeared. | 1, 2 | 2021-08-01 | 2 | |
private_browsing_shortcut.cfr_cancel | event | A user pressed the "No thanks" button when the contextual feature recommender appeared. | 1, 2 | 2021-08-01 | 2 | |
private_browsing_shortcut.create_shortcut | event | A user pressed the "Add private browsing shortcut" button in settings. | 1, 2 | 2021-08-01 | 2 | |
private_browsing_shortcut.pinned_shortcut_priv | event | A user pressed the pinned private shortcut in Android home screen, opening up a new private search. | 1, 2 | 2021-08-01 | 2 | |
private_browsing_shortcut.static_shortcut_priv | event | A user pressed the long-press shortcut "Open new private tab", opening up a new private search. | 1, 2 | 2021-08-01 | 2 | |
private_browsing_shortcut.static_shortcut_tab | event | A user pressed the long-press shortcut "Open new tab", opening up a new search. | 1, 2 | 2021-08-01 | 2 | |
progressive_web_app.background | event | A user puts the PWA into the background. | 1 |
|
2021-03-01 | 2 |
progressive_web_app.foreground | event | A user brings the PWA into the foreground. | 1 |
|
2021-03-01 | 2 |
progressive_web_app.homescreen_tap | event | A user taps on PWA homescreen icon | 1 | 2021-03-01 | 2 | |
progressive_web_app.install_tap | event | A user installs a PWA. Could be a shortcut or added to homescreen. | 1 | 2021-03-01 | 2 | |
reader_mode.appearance | event | A user tapped the appearance button | 1, 2 | 2021-08-01 | 2 | |
reader_mode.available | event | Reader mode is available for the current page | 1, 2 | 2021-08-01 | 2 | |
reader_mode.closed | event | A user closed reader mode | 1, 2 | 2021-08-01 | 2 | |
reader_mode.opened | event | A user opened reader mode | 1, 2 | 2021-08-01 | 2 | |
search_shortcuts.selected | event | A user selected a search shortcut engine to use | 1, 2 |
|
2021-08-01 | |
search_suggestions.enable_in_private | event | A user enabled receiving search suggestions in private sessions | 1, 2 | 2021-08-01 | 1, 2 | |
search_widget.new_tab_button | event | A user pressed anywhere from the Firefox logo until the start of the microphone icon, opening a new tab search screen. | 1, 2 | 2021-08-01 | 2 | |
search_widget.voice_button | event | A user pressed the microphone icon, opening a new voice search screen. | 1, 2 | 2021-08-01 | 2 | |
sync_account.opened | event | A user opened the sync account page | 1, 2 | 2021-08-01 | 2 | |
sync_account.send_tab | event | A user sent the current tab to another FxA device | 1, 2 | 2021-08-01 | 2 | |
sync_account.sign_in_to_send_tab | event | A user pressed the "sign in to send tab" button inside the share tab menu | 1, 2 | 2021-08-01 | 2 | |
sync_account.sync_now | event | A user pressed the sync now button on the sync account page | 1, 2 | 2021-08-01 | 2 | |
sync_auth.closed | event | A user closed the sync page | 1, 2 | 2021-08-01 | 2 | |
sync_auth.opened | event | A user opened the sync authentication page | 1, 2 | 2021-08-01 | 2 | |
sync_auth.other_external | event | User authenticated via FxA using an unknown mechanism. "Known" mechanisms are currently sign-in, sign-up and pairing | 1, 2 | 2021-08-01 | 1, 2 | |
sync_auth.paired | event | User signed into FxA by pairing with a different Firefox browser, using a QR code | 1, 2 | 2021-08-01 | 1, 2 | |
sync_auth.recovered | event | Account manager automatically recovered FxA authentication state without direct user involvement | 1, 2 | 2021-08-01 | 1, 2 | |
sync_auth.scan_pairing | event | A user pressed the scan pairing button on the sync authentication page | 1, 2 | 2021-08-01 | 2 | |
sync_auth.sign_in | event | A user pressed the sign in button on the sync authentication page and was successfully signed in to FxA | 1, 2 | 2021-08-01 | 2 | |
sync_auth.sign_out | event | A user pressed the sign out button on the sync account page and was successfully signed out of FxA | 1, 2 | 2021-08-01 | 2 | |
sync_auth.sign_up | event | User registered a new Firefox Account, and was signed into it | 1, 2 | 2021-08-01 | 1, 2 | |
sync_auth.use_email | event | A user chose to use their email to sign in instead of scanning a QR code, counterpart to "scan_pairing" | 1, 2 | 2021-08-01 | 2 | |
sync_auth.use_email_problem | event | A user chose to use their email to sign in after an account problem | 1, 2 | 2021-08-01 | 2 | |
tab.media_pause | event | A user pressed the pause icon on a tab from the home screen | 1, 2 | 2021-08-01 | 2 | |
tab.media_play | event | A user pressed the play icon on a tab from the home screen | 1, 2 | 2021-08-01 | 2 | |
tabs.setting_opened | event | The tab settings were opened. | 1 | 2021-08-01 | 2 | |
tabs_tray.close_all_tabs | event | A user tapped the close all tabs button in the three dot menu within the tabs tray | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.closed | event | A user closed the tabs tray | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.closed_existing_tab | event | A user closed an existing tab | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.menu_opened | event | A user opened three three dot menu in the tabs tray | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.new_private_tab_tapped | event | A user opened a new private tab | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.new_tab_tapped | event | A user opened a new tab | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.normal_mode_tapped | event | A user switched to normal mode | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.opened | event | A user opened the tabs tray | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.opened_existing_tab | event | A user opened an existing tab | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.private_mode_tapped | event | A user switched to private mode | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.save_to_collection | event | A user tapped the save to collection button in the tabs tray | 1, 2 | 2021-08-01 | 2 | |
tabs_tray.share_all_tabs | event | A user tapped the share all tabs button in the three dot menu within the tabs tray | 1, 2 | 2021-08-01 | 2 | |
tip.closed | event | The tip was closed | 1, 2 |
|
2021-08-01 | 2 |
tip.displayed | event | The tip was displayed | 1, 2 |
|
2021-08-01 | 2 |
tip.pressed | event | The tip's button was pressed | 1, 2 |
|
2021-08-01 | 2 |
toolbar_settings.changed_position | event | The user selected a new position for the toolbar | 1, 2 |
|
2021-08-01 | 2 |
top_sites.long_press | event | A user long pressed on a top site | 1, 2 |
|
2021-08-01 | 2 |
top_sites.open_default | event | A user opened a default top site | 1, 2 | 2021-08-01 | 2 | |
top_sites.open_frecency | event | A user opened a frecency top site | 1, 2 | 2021-08-01 | 2 | |
top_sites.open_in_new_tab | event | A user opens a new tab based on a top site item | 1, 2 | 2021-08-01 | 2 | |
top_sites.open_in_private_tab | event | A user opens a new private tab based on a top site item | 1, 2 | 2021-08-01 | 2 | |
top_sites.open_pinned | event | A user opened a pinned top site | 1, 2 | 2021-08-01 | 2 | |
top_sites.remove | event | A user removes a top site item | 1, 2 | 2021-08-01 | 2 | |
top_sites.swipe_carousel | event | A user swiped to change the page of the top sites carousel | 1, 2 |
|
2021-08-01 | 2 |
tracking_protection.etp_setting_changed | event | A user changed their tracking protection level setting to either strict, standard, or custom. | 1, 2, 3 |
|
2021-08-01 | 2 |
tracking_protection.etp_settings | event | A user opened tracking protection settings through settings. | 1, 2 | 2021-08-01 | 2 | |
tracking_protection.etp_shield | event | A user pressed the tracking protection shield icon in toolbar. | 1, 2 | 2021-08-01 | 2 | |
tracking_protection.etp_tracker_list | event | A user pressed into a list of categorized trackers in tracking protection panel. | 1, 2 | 2021-08-01 | 2 | |
tracking_protection.exception_added | event | A user added a tracking protection exception through the TP toggle in the panel. | 1, 2 | 2021-08-01 | 2 | |
tracking_protection.panel_settings | event | A user opened tracking protection settings from the panel. | 1, 2 | 2021-08-01 | 2 | |
user_specified_search_engines.custom_engine_added | event | A user added a new custom search engine | 1, 2 | 2021-08-01 | 2 | |
user_specified_search_engines.custom_engine_deleted | event | A user deleted a custom search engine | 1, 2 | 2021-08-01 | 2 | |
voice_search.tapped | event | A user selected the voice search button on the search screen. | 1, 2 | 2021-08-01 | 2 |
first-session
This ping is intended to capture the source of the app install on the first session.
This ping includes the client id.
Data reviews for this ping:
Bugs related to this ping:
The following metrics are added to the ping:
Name | Type | Description | Data reviews | Extras | Expiration | Data Sensitivity |
---|---|---|---|---|---|---|
first_session.adgroup | string | The name of the AdGroup that was used to source this installation. | 1, 2 | 2021-08-01 | 1, 2 | |
first_session.campaign | string | The name of the campaign that is responsible for this installation. | 1, 2 | 2021-08-01 | 1, 2 | |
first_session.creative | string | The identifier of the creative material that the user interacted with. | 1, 2 | 2021-08-01 | 1, 2 | |
first_session.network | string | The name of the Network that sourced this installation. | 1, 2 | 2021-08-01 | 1, 2 | |
first_session.timestamp | datetime | The Glean generated date and time of the installation. This is unique per app install, though the rest of the data in this ping is from Adjust and will remain static across installs. | 1, 2 | 2021-08-01 | 1, 2 |
metrics
This is a built-in ping that is assembled out of the box by the Glean SDK.
See the Glean SDK documentation for the metrics
ping.
The following metrics are added to the ping:
Name | Type | Description | Data reviews | Extras | Expiration | Data Sensitivity |
---|---|---|---|---|---|---|
addons.enabled_addons | string_list | A list of all enabled add-ons on the device. | 1, 2 | 2021-04-01 | 2 | |
addons.has_enabled_addons | boolean | Whether or not the user has enabled add-ons on the device. | 1, 2 | 2021-04-01 | 2 | |
addons.has_installed_addons | boolean | Whether or not the user has installed add-ons on the device. | 1, 2 | 2021-04-01 | 2 | |
addons.installed_addons | string_list | A list of all installed add-ons on the device. | 1, 2 | 2021-04-01 | 2 | |
browser.search.ad_clicks | labeled_counter | Records clicks of adverts on SERP pages. The key format is ‘’. | 1, 2 | 2021-08-01 | 2 | |
browser.search.in_content | labeled_counter | Records the type of interaction a user has on SERP pages. | 1, 2 | 2021-08-01 | 2 | |
browser.search.with_ads | labeled_counter | Records counts of SERP pages with adverts displayed. The key format is ‘’. | 1, 2 | 2021-08-01 | 2 | |
events.total_uri_count | counter | A counter of URIs visited by the user in the current session, including page reloads. This does not include background page requests and URIs from embedded pages or private browsing but may be incremented without user interaction by website scripts that programmatically redirect to a new location. | 1, 2, 3 | 2021-08-01 | 2 | |
metrics.adjust_ad_group | string | A string containing the Adjust ad group ID from which the user installed Fenix. This will not send on the first session the user runs. If the install is organic, this will be empty. | 1, 2 | 2021-08-01 | 2 | |
metrics.adjust_campaign | string | A string containing the Adjust campaign ID from which the user installed Fenix. This will not send on the first session the user runs. If the install is organic, this will be empty. | 1, 2 | 2021-08-01 | 1 | |
metrics.adjust_creative | string | A string containing the Adjust creative ID from which the user installed Fenix. This will not send on the first session the user runs. If the install is organic, this will be empty. | 1, 2 | 2021-08-01 | 2 | |
metrics.adjust_network | string | A string containing the Adjust network ID from which the user installed Fenix. This will not send on the first session the user runs. If the install is organic, this will be empty. | 1, 2 | 2021-08-01 | 2 | |
metrics.close_tab_setting | string | A string that indicates the setting for tab closing: MANUAL, ONE_DAY, ONE_WEEK, ONE_MONTH | 1 | 2021-08-01 | 2 | |
metrics.default_browser | boolean | Is Fenix the default browser? | 1, 2 | 2021-08-01 | 2 | |
metrics.default_moz_browser | string | The name of the default browser on device if and only if it's a Mozilla owned product | 1, 2, 3 | 2021-08-01 | 1, 2 | |
metrics.distribution_id | string | A string containing the distribution identifier. This is currently used to identify installs from Mozilla Online. | 1 | never | 1 | |
metrics.has_open_tabs | boolean | A boolean that indicates if the user has any open NORMAL tabs. | 1, 2 | 2021-08-01 | 2 | |
metrics.has_recent_pwas | boolean | A boolean that indicates if the user has recently used PWAs. See recently_used_pwa_count for the actual count. | 1, 2 | 2021-08-01 | 2 | |
metrics.has_top_sites | boolean | A boolean that indicates if the user has top sites | 1, 2 | 2021-08-01 | 2 | |
metrics.mozilla_products | string_list | A list of all the Mozilla products installed on device. We currently scan for: Firefox, Firefox Beta, Firefox Aurora, Firefox Nightly, Firefox Fdroid, Firefox Lite, Reference Browser, Reference Browser Debug, Fenix, Focus, and Lockwise. | 1, 2, 3 | 2021-08-01 | 1, 2 | |
metrics.recently_used_pwa_count | counter | A counter that indicates how many PWAs a user has recently used. Threshold for "recency" set in HomeActivity#PWA_RECENTLY_USED_THRESHOLD. Currently we are not told by the OS when a PWA is removed by the user, so we use the "recently used" heuristic to judge how many PWAs are still active, as a proxy for "installed". This value will only be set if the user has at least one recently used PWA. If they have 0, this metric will not be sent, resulting in a null value during analysis on the server-side. To disambiguate between a failed recently_used_pwa_count metric and 0 recent PWAs, please see has_recent_pwas . |
1, 2 | 2021-08-01 | 2 | |
metrics.search_count | labeled_counter | The labels for this counter are <search-engine-name>.<source> . If the search engine is bundled with Fenix search-engine-name will be the name of the search engine. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be custom . source will be: action , suggestion , widget or shortcut (depending on the source from which the search started). Also added the other option for the source but it should never enter on this case. |
1, 2, 3, 4 | 2021-08-01 | 1, 2 | |
metrics.search_widget_installed | boolean | Whether or not the search widget is installed | 1, 2 | 2021-08-01 | 2 | |
metrics.tab_view_setting | string | A string that indicates the setting for tab view: GRID, LIST | 1 | 2021-08-01 | 2 | |
metrics.tabs_open_count | counter | A counter that indicates how many NORMAL tabs a user has open. This value will only be set if the user has at least one open tab. If they have 0, this ping will not get sent, resulting in a null value. To disambiguate between a failed tabs_open_count ping and 0 open tabs, please see has_open_tabs . |
1, 2 | 2021-08-01 | 2 | |
metrics.toolbar_position | string | A string that indicates the new position of the toolbar TOP or BOTTOM | 1, 2 | 2021-08-01 | 2 | |
metrics.top_sites_count | counter | A counter that indicates how many top sites a user has. This value will only be set if the user has at least one top site. If they have 0, this ping will not get sent, resulting in a null value. To disambiguate between a failed top_sites_count ping and 0 top sites, please see has_top_sites . |
1, 2 | 2021-08-01 | 2 | |
perf.awesomebar.bookmark_suggestions | timing_distribution | Duration of a bookmarks awesomebar suggestion query. | 1 | 2020-11-15 | 1, 2 | |
perf.awesomebar.clipboard_suggestions | timing_distribution | Duration of a clipboard awesomebar suggestion query. | 1 | 2020-11-15 | 1, 2 | |
perf.awesomebar.history_suggestions | timing_distribution | Duration of a history awesomebar suggestion query. | 1 | 2020-11-15 | 1, 2 | |
perf.awesomebar.search_engine_suggestions | timing_distribution | Duration of a search engine awesomebar suggestion query. | 1 | 2020-11-15 | 1, 2 | |
perf.awesomebar.session_suggestions | timing_distribution | Duration of a session awesomebar suggestion query. | 1 | 2020-11-15 | 1, 2 | |
perf.awesomebar.shortcuts_suggestions | timing_distribution | Duration of a shortcuts awesomebar suggestion query. | 1 | 2020-11-15 | 1, 2 | |
perf.awesomebar.synced_tabs_suggestions | timing_distribution | Duration of a synced tabs awesomebar suggestion query. | 1 | 2020-11-15 | 1, 2 | |
preferences.accessibility_services | string_list | Whether or not the user has touch exploration or switch services enabled. These are built into the Android OS, not Fenix prefs. default: "" | 1, 2 | 2021-08-01 | 2 | |
preferences.open_links_in_a_private_tab | string_list | Whether or not the user has enabled open links in a private tab. default: false | 1, 2 | 2021-08-01 | 2 | |
preferences.open_links_in_app | string_list | Whether or not the user has the open links in apps feature enabled. default: false | 1, 2 | 2021-08-01 | 2 | |
preferences.remote_debugging | string_list | Whether or not the user has remote debugging enabled default: false | 1, 2 | 2021-08-01 | 2 | |
preferences.search_bookmarks | string_list | Whether or not the user has enabled bookmark search suggestions default: true | 1, 2 | 2021-08-01 | 2 | |
preferences.search_browsing_history | string_list | Whether or not the user has enabled browsing history suggestions. default: true | 1, 2 | 2021-08-01 | 2 | |
preferences.search_suggestions_private | string_list | Whether or not the user has enabled showing search suggestions in private mode. default: false (we prompt the user, asking them to make a selection) | 1, 2 | 2021-08-01 | 2 | |
preferences.show_clipboard_suggestions | string_list | Whether or not the user has enabled clipboard search suggestions. default: true | 1, 2 | 2021-08-01 | 2 | |
preferences.show_search_shortcuts | string_list | Whether or not the user has enabled search shortcuts. default: true | 1, 2 | 2021-08-01 | 2 | |
preferences.show_search_suggestions | string_list | Whether or not the user has search suggestions enabled default: true | 1, 2 | 2021-08-01 | 2 | |
preferences.show_voice_search | string_list | Whether or not the user has enabled the voice search button. default: true | 1, 2 | 2021-08-01 | 2 | |
preferences.sync | string_list | Whether or not the user is signed into FxA default: false | 1, 2 | 2021-08-01 | 2 | |
preferences.sync_items | string_list | The list of items the user has chosen to sync with FxA. default: "" if the user is signed out. Otherwise defaults to whatever is set in their FxA account. New accounts set: [bookmarks, history, passwords, tabs] | 1, 2 | 2021-08-01 | 2 | |
preferences.telemetry | string_list | Whether or not the user has telemetry enabled. Note we should never receive a "false" value for this since telemetry would not send in that case. default: true | 1, 2 | 2021-08-01 | 2 | |
preferences.theme | string_list | The theme the user has enabled. "light," "dark," "system," or "battery" default: "system" for API 28+, else "light" | 1, 2 | 2021-08-01 | 2 | |
preferences.toolbar_position | string_list | The position of the toolbar default: bottom (defaults to top if the user has accessibility services) | 1, 2 | 2021-08-01 | 2 | |
preferences.tracking_protection | string_list | What type of enhanced tracking protection the user has enabled. "standard," "strict," "custom," or "" (if disabled) default: "standard" | 1, 2 | 2021-08-01 | 2 | |
search.default_engine.code | string | If the search engine is pre-loaded with Fenix this value will be the search engine identifier. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be "custom" | 1, 2, 3 | 2021-08-01 | 1, 2 | |
search.default_engine.name | string | If the search engine is pre-loaded with Fenix this value will be the search engine name. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be "custom" | 1, 2, 3 | 2021-08-01 | 1, 2 | |
search.default_engine.submission_url | string | If the search engine is pre-loaded with Fenix this value will be he base URL we use to build the search query for the search engine. For example: https://mysearchengine.com/?query=%s. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be "custom" | 1, 2, 3 | 2021-08-01 | 1, 2 | |
storage.stats.app_bytes | memory_distribution | The size of the app's APK and related files as installed: this is expected to be larger than download size. This is the output of StorageStats.getAppBytes so see that for details. This value is only available on Android 8+. A similar value may be available on the Google Play dashboard: we can use this value to see if that value is reliable enough. | 1 | 2021-02-01 | 1, 2 | |
storage.stats.cache_bytes | memory_distribution | The size of all cached data in the app. This is the output of StorageStats.getCacheBytes so see that for details. This value is only available on Android 8+. | 1 | 2021-02-01 | 1, 2 | |
storage.stats.data_dir_bytes | memory_distribution | The size of all data minus cache_bytes . This is the output of StorageStats.getDataBytes except we subtract the value of cache_bytes so the cache is not measured redundantly; see that method for details. This value is only available on Android 8+. |
1 | 2021-02-01 | 1, 2 | |
storage.stats.query_stats_duration | timing_distribution | How long it took to query the device for the StorageStats that contain the file size information. The docs say it may be expensive so we want to ensure it's not too expensive. This value is only available on Android 8+. | 1 | 2021-02-01 | 1, 2 |
startup-timeline
This ping is intended to provide an understanding of startup performance.
The ping is intended to be captured by performance testing automation to report results there, in addition to user telemetry. We place these metrics into their own ping in order to isolate them and make this process easier.
Data reviews for this ping:
Bugs related to this ping:
The following metrics are added to the ping:
Name | Type | Description | Data reviews | Extras | Expiration | Data Sensitivity |
---|---|---|---|---|---|---|
startup.timeline.clock_ticks_per_second | counter | The number of clock tick time units that occur in one second on this particular device. This value is expected to be used in conjunction with the framework_start metric. |
1, 2 | 2021-08-01 | 1 | |
startup.timeline.framework_start | timespan | The duration the Android framework takes to start before letting us run code in *Application.init . This is calculated from appInitTimestamp - processStartTimestamp . processStartTimestamp is derived from the clock tick time unit, which is expected to be less granular than nanoseconds. Therefore, we convert and round our timestamps to clock ticks before computing the difference and convert back to nanoseconds to report. For debugging purposes, clock_ticks_per_second , which may vary between devices, is also reported as a metric |
1, 2 | 2021-08-01 | 1 | |
startup.timeline.framework_start_error | boolean | An error when attempting to record framework_start - the application init timestamp returned a negative value - which is likely indicative of a bug in the implementation. |
1, 2 | 2021-08-01 | 1 | |
startup.timeline.framework_start_read_error | boolean | An error when attempting to read stats from /proc pseudo-filesystem - privacy managers can block access to reading these files - the application will catch a file reading exception. | 1, 2 | 2021-08-01 | 1 |
Data categories are defined here.