New: Add fx-accounts ping
See also:
- Mobile overall: https://bugzilla.mozilla.org/show_bug.cgi?id=1970033
- Android: https://bugzilla.mozilla.org/show_bug.cgi?id=1970661
In order to understand user retention and engagement for Mozilla Account users across Mobile and Desktop (see Bug 1970033), we'd like to introduce a new ping in Fenix containing the Mozilla Account ID and the Glean Client ID.
fx-accounts ping should be modeled the same way as we did it for Desktop last year (see Bug 1889123 and https://dictionary.telemetry.mozilla.org/apps/firefox_desktop/pings/fx-accounts ): scheduled at the same cadence as baseline ping and reporting account id in client_association.uid string metric.
┆Issue is synchronized with this Jira Task
➤ Nishant Bhasin commented:
cc Isabella as an FYI to look into this as part of telemetry audit
➤ Isabella commented:
Hi Jessilyn Davis !
Can you please confirm if this is the data you’d expect to see on the new fx-accounts ping?
{
"client_info": {
"app_build": "1"
"app_channel": "developer",
"app_display_version": "141.0",
"architecture": "Mac15,6",
"build_date": "2025-06-11T22:44:57+00:00",
"client_id": "234fc01b-3193-41c4-9f22-703cca400b0a",
"device_manufacturer": "Apple",
"device_model": "arm64",
"first_run_date": "2025-06-11-06:00",
"locale": "en-CA",
"os": "iOS",
"os_version": "18.2",
"telemetry_sdk_build": "64.1.0"
},
"metrics": {
"string": {
"user.client_association.uid": "c824e3af14804dbc94002f09f12c908b"
}
},
"ping_info": {
"end_time": "2025-06-12T09:16:53.542-06:00",
"seq": 0,
"start_time": "2025-06-12T09:13:14.749-06:00"
}
}Thanks!
➤ Jessilyn Davis commented:
Arkadiusz Komarzewski - can you review & advise? ^
➤ Arkadiusz Komarzewski commented:
LGTM, it has user.client_association.uid and client_id.
Isabella one thing I’d like to confirm: this ping will have experiment metadata in case client is enrolled in one?
➤ Isabella commented:
Thanks Arkadiusz Komarzewski!
I just checked with Travis Long and he confirmed that experiment metadata is included in every ping under the ping_info.experiments automatically by Glean thanks to some Glean x Nimbus setup. 👍
➤ Jessilyn Davis commented:
Isabella - thanks for getting this going! Did you see the request to escalate from Travis Long here? https://github.com/mozilla-mobile/firefox-ios/pull/27296#pullrequestreview-2932008464 ( https://github.com/mozilla-mobile/firefox-ios/pull/27296#pullrequestreview-2932008464|smart-link )
Have you sent the email for escalation?
Thanks!
➤ Isabella commented:
Hi Jessilyn Davis! If I recall, Travis Long mentioned reaching out to you about this on slack. Since you are the telemetry owner, you are the best person to write the escalation email. At the same time you may also want to reference the Android changes as well, since both will probably need an escalated review and you can tackle them together from what I understand. 🙂
➤ Jessilyn Davis commented:
Isabella Ah yes! Thank you. I hadn’t internalized that I’d send the escalation request. 🤙
Just sent the escalation request and cc’ed you on it 🙌
➤ Isabella commented:
Perfect, thank you Jessilyn Davis ! I’ll follow along in the email thread too. 🙌
➤ Mark Reid commented:
Data reviewers have discussed, and approve this data collection.
➤ Travis Long commented:
I’ve added data-review+ to both the iOS PR as well as the Android one. Thanks Mark!
➤ Isabella commented:
Thanks both!
This work will be merged down today and available in v142. Jessilyn Davis would you like for me to create backports to v141?
If it’s very urgent we can also backport to the next v140 weekly release, but I’d suggest we at least get QA approval first on nightly or the v141 beta. Relman prefers only urgent fixes to go into the weekly releases.
➤ Jessilyn Davis commented:
Thanks all! 🙌
Let’s aim for 141 that goes live on 22 July. Before we land it for v141 - I want Arkadiusz Komarzewski to confirm he can complete the DENG work by 22 July. Standby for confirmation.🤞
➤ Arkadiusz Komarzewski commented:
Confirmed, DENG work listed under https://mozilla-hub.atlassian.net/browse/DENG-8481 ( https://mozilla-hub.atlassian.net/browse/DENG-8481|smart-link ) will be ready by July 22.
➤ Isabella commented:
Great! I will backport the iOS fx-accounts ping work to v141 today. 👍
➤ Jessilyn Davis commented:
Isabella how’s QA and backporting to 141 going?
The android ping has now been uplifted into 141. 🙌
➤ Isabella commented:
Hi Jessilyn Davis! This work has been backported to v141 for a couple weeks now. 🙌
I think QA would get to this soon, but I’ll CC Andrei Bodea just in case. Could we trouble you to please test this new fx-accounts telemetry ping for us? Thank you!! 🙏
➤ Andrei Bodea commented:
Verified as fixed on v141 (57807) with iPhone 15 Pro (18.5).
h5. Case 1h5. A user launches the app and then signs into their sync account. We should see a new fx-accounts ping with the user’s account UID.✅ The fx-accounts ping was generatedh5. Case 2h5. A user who has previously signed into their sync account launches the app. Again, we should see the new fx-accounts ping with the user’s account UID.✅ The fx-accounts ping was generatedh5. Case 3h5. A user who is not signed into sync and launches the app should NOT see any fx-accounts pings.✅ The fx-accounts ping was not generatedh5. Case 4h5. A user signs in during the onboarding of a fresh install should then see the fx-accounts ping after sign in, and after restarts✅ The fx-accounts ping was generatedHere ( https://glean-debug-view-dev-237806.firebaseapp.com/pings/Shamy21 )you can find all the pings generated in the gleandashboard.
"client_info": { "app_build": "57807", "app_channel": "beta", "app_display_version": "141.0", "architecture": "D84AP", "build_date": "2025-07-08T23:08:57+00:00", "client_id": "ded66747-5a9e-40ca-9b1b-c062757272ac", "device_manufacturer": "Apple", "device_model": "iPhone16,2", "first_run_date": "2025-07-10+03:00", "locale": "en-CA", "os": "iOS", "os_version": "18.5", "telemetry_sdk_build": "64.1.0" }, "metrics": { "string": { "user.client_association.uid": "516581b295544bc791b5be23f77c3214" } },
➤ Isabella commented:
Thanks so much again for the quick test Andrei Bodea ! 👏
Jessilyn Davis we’re all good to go for the v141 release! 👌
➤ Arkadiusz Komarzewski commented:
Isabella sorry for missing this earlier, but I just noticed that this metric is called user.client_association.uid. We wanted it to be named client_association.uid to match desktop ( https://dictionary.telemetry.mozilla.org/apps/firefox_desktop/metrics/client_association_uid ) and make the analysis easier. I’m not familiar with metric naming conventions in iOS, but do we need the user. prefix?
➤ Isabella commented:
Hi Arkadiusz Komarzewski! The user prefix was added to conform to the new iOS naming conventions developed in H1 of this year. In H2, the iOS team will be retroactively updating existing user-attribute metrics similar to this one to use our new naming convention. In the meantime we are trying to enforce that new metrics follow our guidelines.
CC Andres Furlan who is the PM on the telemetry audit. To drop the user prefix, we would have to discuss if there’s a strong enough motivation on the analysis side for going against our naming conventions.
➤ Arkadiusz Komarzewski commented:
All right, makes sense Isabella, let’s keep it unchanged.