Get Started with Firefox Desktop Data

The following topics describe Firefox Desktop Telemetry data that has been captured for many years. The modern data collection is based on the Glean platform. Older mobile product data used different platforms, that are described in Choosing a Mobile Dataset.

Firefox clients send data as pings. Main pings include some combination of environment data (e.g., information about operating system, hardware, and Firefox versions), measurements (e.g., information about the maximum number of open tabs and time spent running in JavaScript garbage collections), and events (be aware that desktop events have largely been migrated to a separate event ping).

Most of the data for Firefox Desktop data is received from main pings.

Measurement Types

Measurements for a specific aspect of Firefox are called probes. A single telemetry ping sends many different probes. Probes are either Histograms (recording distributions of data points) or Scalars (recording a single value).

You can search for details about probes by using the Probe Dictionary. For each probe, the probe dictionary will give you:

  • A description of the probe
  • When a probe started being collected
  • Whether data from this probe is collected in the release channel

Histograms are represented as bucketed counts. The Histograms.json file includes definitions for all histograms. The definitions include information about the minimum, maximum, and number of buckets. Any recorded value instead just increments its associated bucket.

The following main types of histograms are available:

  • Boolean - Only two buckets, associated with true and false
  • Enumerated - Integer buckets, where usually each bucket has a label
  • Linear - Buckets are divided evenly between the minimum and maximum e.g., [1-2] is a bucket and so is [100-101]
  • Exponential - Larger valued buckets cover a larger range e.g., [1-2] is a bucket, and so is [100-200]

You can visualize how some of these types of histograms work using Histogram Simulator.

Scalars are represented as a single value. The Scalars.yaml file includes definitions for all scalars. These values can be integers, strings, or booleans.

telemetry.mozilla.org

If you want to view probe data, go to telemetry.mozilla.org (TMO). You can then choose either the Measurement Dashboard or the Evolution Dashboard. You can then compare a probe's value between populations (e.g., GC_MS for 64 bit vs. 32 bit) and even track it across builds.

The Measurement Dashboard represents a snapshot that shows how data is aggregated from all chosen dimensions. The Y axis represents the percentage (%) of samples while the X axis represents a bucket. Although you can use the Measurement Dashboard to compare between dimensions, you cannot view how data changes data over time. If you want to investigate this issue further, you must use the Evolution Dashboard.

The Evolution Dashboard shows how data changes over time. You can choose the statistics that you want to plot over time, e.g., Median or 95th percentile. The X axis represents time and the Y axis represents the value for the statistics that you have chosen. As an example, this dashboard shows how GC_MS improves from nightly 53 to nightly 56! While the median does not change much, the 95th percentile trends down to indicate that long garbage collections are being shortened.

The X axis on the Evolution Dashboard shows either a Build ID (a date) or a Submission Date. Although submissions may be received from many builds on any single date, aggregating data by Build ID indicates that a change occurred because a new build was created.

The second plot on the Evolution View represents the number of pings that are included in a probe (Metric Count).

Caveats

  • Data is aggregated on a per-ping basis, which indicates that you cannot use these dashboards to say anything definitive about users. Please repeat that to yourself. A trend in the evolution view may be caused not by a change affecting lots of users, but a change affecting one single user who is now sending 50% of the pings we see. And yes, it has occurred.
  • Sometimes it looks like no data is present even though you think there it should appear. Check under advanced settings and "Don't Sanitize" and "Don't Trim Buckets". If you are still unable to locate the data, see getting help.
  • TMO Measurement Dashboards do not currently show release-channel data. Release-channel data ceased being aggregated as of Firefox 58. This issue is being evaluated at this time and is under consideration for getting corrected in the near future.

Where to go next

Read through Analysis Interfaces for more information on tools available for analysis and then work through the rest of the material in this section.