MetricNudge › Blog

How to See Where Users Drop Off Before Your Paywall

Published 29 October 2026 · 7 min read

If a quarter of your new users ever see your paywall, the paywall is not your problem. Onboarding is. Here is how to measure where people leave, with a few lines of code, and how to read the result.

Count people, not events

The useful question is: of everyone who installed this week, how many reached each step? Count unique devices per step, not total taps. A funnel built that way shows a single number per step, and the gap between two steps is the people you lost there.

Step 1: number your onboarding screens

Give each onboarding screen an index and a short id, and send one event when it appears. With the MetricNudge iOS SDK that is one line per screen; the Flutter SDK has the same call.

MetricNudge.onboardingStep(2, id: "goals", answer: "lose weight")

The optional answer is useful for question screens: you can then see which answer people give before they leave. Call onboardingCompleted() when the flow ends.

Step 2: mark the paywall moments

Send an event when the paywall appears, with a name for where it was shown (a placement such as "onboarding" or "settings"). Then add events for choosing a plan, buying and dismissing.

MetricNudge.paywallShown("onboarding")

MetricNudge.paywallPlanSelected("annual", placement: "onboarding")

MetricNudge.paywallPurchased("annual", placement: "onboarding", hasTrial: true)

MetricNudge.paywallDismissed(placement: "onboarding")

Use a placement name for every paywall so a purchase is credited to the right one when you have more than one.

Step 3: read the funnel

Open the funnel and read it from the top. Look for the one step with a much bigger drop than the rest. Typical culprits:

Step 4: see what people did last

Funnels show where the line drops. The more direct view is: for people who installed at least two days ago and never came back, what was the last thing they did? If one screen or paywall dominates that list, you have found where they give up. MetricNudge shows this as the last action of one-visit users.

Step 5: read the paywall funnel by placement

For each paywall, the numbers to compare are: saw it, chose a plan, tapped buy, bought. Then the reasons people stop: they cancelled at the store's payment sheet, the purchase failed, or they dismissed the paywall.

Step 6: change one thing and compare

Fix the biggest drop first, release, and compare the next week's cohort of new installs with the last. Compare installs from the same period length, because the weekend is not the same as a Tuesday. Avoid changing the onboarding and the paywall in the same release, or you will not know which one worked.

Doing it with MetricNudge

MetricNudge draws the onboarding funnel, the paywall funnel per placement and the last action of one-visit users from these events, and its plan turns the biggest gap into a suggested next step. The numbers come only from the events your app sends: if you add no onboarding calls, there is no funnel to show. To follow what happens after the purchase, read Reading subscription metrics from RevenueCat.

Try it on your own app

MetricNudge tracks your keyword rankings in every storefront, shows your app's analytics, and writes a plain-words plan of what to do next. The free plan needs no card.

Start free

Keep reading