SignalFox Docs

Flow tracking

Track important journeys that happen inside a screen.

Flow tracking is for product journeys that are not fully represented by screen navigation.

Use it when a user moves through several meaningful steps inside one screen, modal, tab, panel, or in-screen view. Do not use it for flows made of separate screens; navigation tracking already captures those.

When to use trackFunnelStep

Use trackFunnelStep for flows such as:

  • an onboarding screen with multiple in-screen steps
  • a checkout form that advances inside one screen
  • a paywall modal with plan selection, confirmation, and result states
  • an account setup panel with several in-screen views
Flow step
import { trackFunnelStep } from '@asgami-digital/signalfox-react-native';

trackFunnelStep({
  funnelName: 'onboarding',
  signalFoxNodeId: 'create-account',
  signalFoxNodeDisplayName: 'Create account',
  stepIndex: 1,
});

Use stable names. funnelName identifies the overall funnel, and signalFoxNodeId identifies the current step. The dashboard still maps these to the canonical funnel event (flow_step_view).

Available fields (public API, camelCase):

  • funnelName (required)
  • signalFoxNodeId (required)
  • signalFoxNodeDisplayName (optional)
  • stepIndex (optional)

When to use trackSubview

Use trackSubview for meaningful areas inside a screen that are not steps in a funnel. Good examples are tabs, panels, sections, or modes that change what the user is seeing.

import { trackSubview } from '@asgami-digital/signalfox-react-native';

trackSubview({
  signalFoxNodeId: 'settings-billing',
  signalFoxNodeDisplayName: 'Billing settings',
});

Naming tips

Keep names stable, clear, and compact.

Good examples:

  • onboarding
  • checkout
  • choose-plan
  • billing-settings

Avoid generated IDs, translated text, timestamps, user-specific values, or route params that change for the same product step.