Install-to-trial funnel

Measure and diagnose the conversion rate from app install to trial start.

Last updated June 2026

The install-to-trial funnel tracks every step between the first app open and a free trial. It combines screen tracking, custom goal events, and RevenueCat transaction data in one funnel. React Native can capture screens from navigation callbacks; native apps call trackScreen from their navigation lifecycle.

This page covers setup. For interpretation and benchmarks, see the install-to-trial guide.

Prerequisites

Automatic tracking vs code

Step typeTracked automatically?Code needed?
Screen viewsReact Native after navigation callbacks are wiredNative iOS, Android, and Flutter call trackScreen
Goal events (account_created, profile_completed)NoYes - one tracker.track call per event
RevenueCat transactionsYes - synced via webhookNo after RevenueCat is connected
Identity linkingNoYes - one tracker.identify call after login or signup

A screen-only funnel needs no event calls after screen tracking is connected. React Native uses its navigation callbacks; iOS, Android, and Flutter still need their navigation lifecycle wired to trackScreen.

Steps

1

Confirm screen tracking

Open your app and navigate through all onboarding screens. Then check Pages/Screens in Grometrics and confirm each screen name appears. These names are what you'll use as funnel steps.

If screen names show up as generic names (Screen1, ViewController), update your navigation stack to use descriptive names. The SDK uses whatever your framework reports.

2

Add goal events

Goal events tell you whether users completed an action, not just whether they saw the screen. Adding them between screen views gives you a more accurate picture.

Common install-to-trial events:

Swift

1// iOS examples — adapt for your platform2await grometrics.track("account_created")3await grometrics.track("profile_completed")4await grometrics.track("onboarding_completed")5await grometrics.track("paywall_viewed")6await grometrics.track("paywall_dismissed")

For all platforms and naming rules, see custom events docs.

3

Link identity

Call identify once after signup or login so Grometrics merges anonymous screen views with RevenueCat trial events and trusted backend milestones under one canonical visitor.

Swift

1await grometrics.identify(userId: "user_abc123")

All previous anonymous screen views and goal events retroactively merge into this identity. See identity linking docs for all platforms and edge cases.

4

Create the funnel

Create the funnel from the Conversions workspace:

  1. Go to Conversions → Funnels
  2. Click + Create funnel
  3. Name it (e.g. "Install → Trial")
  4. Add steps:

Recommended configuration

StepTypeValueWhat it measures
1ScreenWelcomeUser opened the app
2ScreenCreate AccountUser reached signup
3Goalaccount_createdUser completed signup
4ScreenProfile SetupUser reached profile setup
5Goalprofile_completedUser completed profile
6ScreenPaywallUser saw the paywall
7TransactionTrial StartedUser started a trial
  1. Set conversion window: 14 days
  2. Click Create funnel

Minimal configuration (no goal events)

If you haven't added goal events yet, you can start with screen views and the transaction step only:

StepTypeValue
1ScreenWelcome
2ScreenCreate Account
3ScreenProfile Setup
4ScreenPaywall
5TransactionTrial Started

This shows which screens users reach but not whether they complete the action on each screen. You can add goal events later without recreating the funnel.

Two-step configuration (just the headline number)

StepTypeValue
1ScreenWelcome
2TransactionTrial Started

This gives you the overall install-to-trial conversion rate as a single number. Useful as a dashboard KPI, but not useful for diagnosis — you won't know where users drop off.

Filtering by source

After the funnel is created, apply source filters using the filter bar:

FilterWhat it shows
SourceMeta Ads, Google Ads, App Store, Direct, etc.
Mediumpaid, organic, referral, social
Campaignspecific UTM campaign values

The entire funnel recalculates for the selected segment. Identity resolution is applied before funnel grouping, so the same person can enter through an anonymous app or browser step and complete later steps through server events. Compare sources to see whether low conversion is a flow problem or a targeting problem.

What happens next

The funnel page shows a bar chart with drop-off badges between steps. The biggest red badge is your highest-leverage fix. See the install-to-trial guide for how to interpret each pattern and decide what to fix.

Troubleshooting

Trial Started step shows zero

  1. Confirm RevenueCat is connected: Settings → Integrations → RevenueCat should show "Connected" with a transaction count.
  2. Confirm grometrics.identify() is called with the same user ID as RevenueCat's logIn().
  3. Check the conversion window — if it's 1 day but users typically don't reach the paywall until day 3, the trial will fall outside the window.

Funnel shows high numbers for step 1 but zero for step 2

The screen name in your funnel step must exactly match what the SDK reports. Check Pages/Screens to verify the exact names. Names are case-sensitive.

Drop-off percentages don't add up

The funnel tracks unique visitors at each step, not sessions or events. If a user visits the Welcome screen 3 times across 3 sessions, they count as 1 visitor in step 1. If they then complete signup on the 3rd session, they count as 1 visitor in the signup step. The conversion rate is visitors-who-reached-step-N ÷ visitors-who-reached-step-1.

Was this page helpful?