We’re debugging a React Native Android app where the first screen should always be login (unauthenticated users).
Expected flow:
first_open
→ splash_screen_viewed
→ splash_screen_unauthenticated
→ splash_redirect_login
→ login_screen_viewed
splash_screen_viewed → ~95%
splash_screen_unauthenticated → ~93%
splash_redirect_login → ~80%
login_screen_viewed → ~80%
~20% users fire first_open but never reach login.
For these users:
No login_screen_viewed
No later events (login, onboarding, etc.)
So this doesn’t look like just a missing analytics event — looks like users are dropping during app startup.
React Native (Android)
Firebase / GA events
Simple logic: splash → check auth → redirect to login
What could cause users to fire first_open but not reach the first screen?
Specifically, should we look into:
JS bundle not loading / app init failure?
Navigation race condition?
Auth state resolution hanging?
App killed/backgrounded during cold start?
Analytics timing (events firing too early)?
** Code details ** Codewise its not simple synchronous, it is event based, as soon as screen loads first event fire and 50ms wait starts, in between checking of user login happens and once 50 ms overs, based on login status next event fires and screen changes
What’s the best way to debug this stage reliably?