Repository navigation
🔥 [🐛] missing ga_session_id on part of iOS Analytics events since upgrading to v23.8.3 #9115
Description
Issue
Hello team,
Since upgrading @react-native-firebase to v23.8.3 (Firebase iOS SDK 12.8.0), on iOS, we are seeing a significant number (~4%) of Analytics events with a missing ga_session_id in production. This was present on the previous version but on a much smaller scale (~0.3%), and the upgrade is the only change correlated with the regression.
After inspecting GA4 events grouped by device, it appears that whenever this issue occurs, all events for the affected session are missing ga_session_id. We also noticed that the session_start event, which would normally precede the rest of the session's events, is also missing. Events from the same device begin reporting a valid ga_session_id again only after the session is recreated (e.g., the app is restarted after 30min).
This behaviour is consistent across all iOS versions we've analyzed (iOS 16 through iOS 26).
We suspect the cause may be related to background launches (e.g. triggered by silent push notifications). However, we were not able to reproduce this issue at all in development.
Thank you very much for the support
Project Files
Javascript
Click To Expand
package.json:
package.json:
{
"@react-native-firebase/analytics": "23.8.8",
"@react-native-firebase/app": "23.8.8",
"@react-native-firebase/crashlytics": "23.8.8",
"@react-native-firebase/installations": "23.8.8",
"@react-native-firebase/remote-config": "23.8.8",
"react-native": "0.81.6"
}
iOS
Click To Expand
ios/Podfile:
- I'm not using Pods
- I'm using Pods and my Podfile looks like:
use_frameworks! :linkage => :static
$RNFirebaseAsStaticFramework = true
target 'XXXX' do
pod 'FirebaseMessaging', '12.10.0'
end
AppDelegate.m:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
...
[FIRApp configure];
....
}Android
Not investigated; issue observed on iOS only.
Environment
Click To Expand
react-native info output:
System:
OS: macOS 26.5.2
CPU: (12) arm64 Apple M3 Pro
Binaries:
Node: 20.19.4
CocoaPods: 1.16.2
npmPackages:
react: 19.1.4
react-native: 0.81.6
iOS:
hermesEnabled: true
newArchEnabled: true
- Platform that you're experiencing the issue on:
- iOS
- Android
- iOS but have not tested behavior on Android
- Android but have not tested behavior on iOS
- Both
react-native-firebaseversion you're using that has this issue:- initially seen in 23.8.3, now on 23.8.8 with same issue
Firebasemodule(s) you're using that has the issue:- @react-native-firebase/analytics, @react-native-firebase/crashlytics
- Are you using
TypeScript?- Y & 5.8
Activity
[-]🔥 [🐛] missing ga_session_id on iOS Analytics events since upgrading to v23.8.3[/-][+]🔥 [🐛] missing ga_session_id on part of iOS Analytics events since upgrading to v23.8.3[/+]russellwheatley commentedon Jul 28, 2026
Hey @AleCatSS - thank you for raising this issue. We'll get this looked at.
russellwheatley commentedon Jul 28, 2026
Thanks for the detailed report, @AleCatSS.
I've dug into this and I think this isn't something we can fix in react-native-firebase - the analytics module is a thin wrapper over the native SDK for this.
getSessionId()just calls[FIRAnalytics sessionIDWithCompletion:]directly, and automatic events likesession_startare generated entirely inside the nativeFirebaseAnalytics/GoogleAppMeasurementcode based on app lifecycle notifications. We don't own any of that session-creation logic, and nothing changed on the RNFB side between v23.8.2 and v23.8.3 - the only relevant change was the Firebase iOS SDK bump from 12.7.0 → 12.8.0.This looks like the same bug as an existing open issue on the Firebase Apple SDK repo:
firebase/firebase-ios-sdk#16323 -"
Analytics.sessionID(completion:)returns an error indefinitely on iOS (session ID never becomes available)"You'd actually already commented there on it yourself back on 2026-07-16 with the same ~3-4% figure and identical symptoms (whole session missing
ga_session_id,session_startalso missing, resolves only after app restart). That thread has since gone quiet - a Google engineer got as far as reproducing an "Analytics uninitialized" (com.google.gmp.measurement.ErrorDomain Code=13) error tied to the SDK initializing on a background thread, but there's been no update since it was marked stale on 2026-07-23, and the original reporter (blackmenthor) hasn't responded further.Given you have solid production data and a working hypothesis (background launches via silent push), it'd be worth opening a fresh, focused issue on
firebase/firebase-ios-sdk(referencing #16323) with:session_startis missing" pattern, and that it recovers only after a full app restart (not just foreground/background cycling).sessionID(completion:)/ logged events during that session - that's the piece neither existing issue has nailed down yet.I'll keep this issue open on our side to track it as blocked on upstream, but there's no RNFB-side fix available until Google resolves it in
firebase-ios-sdk. Happy to link back and forth between the issues as there's movement.AleCatSS commentedon Jul 28, 2026
Thank you @russellwheatley, I will follow up on the firebase-ios-sdk GitHub with a dedicated issue as you suggested and will update the present.