Ensora
Ensora
DocumentationInstallationBasic Usage
Custom EventsNavigation TrackingPrivacy & MaskingHeatmapsSession Replay

Advanced

Error TrackingPrivacy & Utilities

API Reference

API Reference
Customization

Navigation Tracking

Auto-capture screen transitions with Expo Router

Navigation Tracking

Ensora automatically captures every screen transition in your Expo Router app — no manual configuration required.

How It Works

The SDK subscribes to Expo Router's navigation state and fires a nav event on every pathname change:

{
  "event": "nav",
  "session_id": "uuid",
  "pathname": "/profile/settings",
  "previous_pathname": "/profile",
  "timestamp": "2026-01-01T00:01:34Z"
}

Setup

Navigation tracking is enabled by default when you wrap your root layout with EnsoraProvider:

import { EnsoraProvider } from '@ensora/react-native';

export default function RootLayout() {
  return (
    <EnsoraProvider
      apiKey="your_api_key"
      projectId="your_project_id"
    >
      <Stack />
    </EnsoraProvider>
  );
}

Manual Screen Tracking

If you use a custom router or navigate programmatically, fire a nav event manually:

import { track } from '@ensora/react-native';

function navigateToCheckout() {
  track('nav', { pathname: '/checkout', previous_pathname: '/cart' });
  router.push('/checkout');
}

Screen Flow Reports

From the dashboard Analytics tab, navigate to Screen Flows to see:

  • Most visited screens
  • Common entry and exit points
  • Drop-off rates between screens
  • Average time spent per screen

Funnel Analysis

Combine navigation events with custom events to build funnels:

/onboarding/step-1 → /onboarding/step-2 → /onboarding/complete → /home

Build funnels from the Analytics → Funnels section of the dashboard.

Filtering by Screen

In the Sessions tab, filter sessions by Visited screen to find users who landed on a specific pathname.

Dynamic Routes

Expo Router dynamic segments (e.g. /product/[id]) are captured as-is, including the resolved value:

{ "pathname": "/product/42" }

Group them by pattern in the dashboard using the wildcard filter: /product/*.

Next Steps

  • Session Replay — watch navigation in context
  • Custom Events — add events alongside navigation
  • Heatmaps — combine with touch data per screen

Last updated on

Custom Events

Track any user action with properties

Privacy & Masking

Redact sensitive data before it leaves the device

On this page

Navigation Tracking
How It Works
Setup
Manual Screen Tracking
Screen Flow Reports
Funnel Analysis
Filtering by Screen
Dynamic Routes
Next Steps