Pushlane: Onboarding Push Sequences for Subscription Apps
Build a people-first onboarding push sequence that helps new subscription app users reach product activation before measuring paid conversion separately.
A useful onboarding push does not ask a new user to "come back" in the abstract. It helps them finish the next action that makes the product useful. That distinction matters in a subscription app, where teams often collapse onboarding, trial conversion and payment into one funnel and then judge every message by whether somebody subscribed.
Product activation comes first. It is the moment a person experiences enough value to understand why the app belongs in their life: completing a first workout, importing a first account, generating a first report or finishing a first lesson. Paid conversion is a later commercial outcome. The two can influence each other, but they are not the same event and should not share a success metric.
This guide builds a short Pushlane sequence around that principle. It is organized by user state, not arbitrary blasts, and it stops as soon as the person completes the job.
Define activation before writing copy
"Onboarding completed" is often too broad to guide a useful push. A person can swipe through tutorial cards and still have no idea whether the product works for them. Conversely, someone may skip the tutorial, complete the core action and be fully activated.
Choose one primary activation event that represents experienced value. It should describe something the user did, not a screen the app displayed. Examples include:
first_workout_completedfor a training app;first_budget_createdfor a finance app;first_document_exportedfor a scanner;first_lesson_completedfor a learning app;first_insight_viewedfor an analytics product.
You may also track setup milestones such as account_connected or plan_created. Those are progress signals, not substitutes for experienced value. Track onboarding_completed separately when the designed first-run experience matters. Keeping it separate lets a flow distinguish blocked setup from completed setup without product use.
Write the definition in one sentence: "A new user is activated when they have ____." If product, engineering and growth fill that blank differently, settle it before building the sequence.
Earn permission in context
An onboarding sequence cannot help someone who never granted notification permission, but asking on first launch is not the answer. At that moment the person has not seen why interruption would be useful.
Apple's notification permission documentation recommends providing context before requesting authorization. Apple's Human Interface Guidelines also frame notifications as timely, high-value information that people understand at a glance.
Ask when the benefit is concrete. A training app can offer reminders after the person schedules a plan. A finance app can offer an alert after an account is connected. A learning app can offer a reminder after the user chooses a study time. Explain the specific notification they will receive, then show the system prompt only after they accept that explanation.
If the person says no, the app should still work. Apple's App Review Guidelines say push notifications must not be required for app functionality. Promotional or direct-marketing pushes require explicit opt-in language and an in-app way to opt out.
Build the sequence around unfinished work
The sequence below is a starting shape, not a timing benchmark. Let the product's natural cycle decide delays. Most importantly, stop related reminders once the target action happens.
Step 0: confirm the next useful action
Trigger: signup_completed, onboarding_completed, or another event that starts the setup path. Send only after the person leaves with a clear unfinished task. While they are looking at the next screen, use an in-app cue.
Example for a finance app:
Your budget is ready for one last step
Connect an account to see where this month's money is going.
Deep link directly to the account connection screen. Do not land on the home screen and make the person rediscover the task.
Exit when account_connected fires. That exit should happen even if the user never opens the notification. The product event, not the push tap, proves the job is complete.
Step 1: remove the first blocker
Timing: after a normal first session, only if the prerequisite remains incomplete. Reduce effort or uncertainty, and mention a time estimate only when it is true.
Pick up where you stopped
Your saved answers are waiting. Continue setting up your first plan.
If users abandon at different points, branch on the last completed milestone. Personalized state is useful when it changes the action, not merely when it inserts a first name.
Exit on the missing setup event or the primary activation event.
Step 2: lead to the first value moment
Timing: on the next natural opportunity to use the product, provided setup is complete and activation is not.
This is the central message in the sequence. It moves from configuration to experience.
Your first lesson is ready
Start the five-minute introduction you chose yesterday.
The deep link should open the lesson, workout, report or project itself. Sending an unactivated user to a paywall asks them to price a promise they have not experienced. A product that requires payment before use still should not redefine paywall viewing as activation.
Exit on the primary activation event. Also exit when the content is no longer available, the setup became invalid or the user opted out.
Step 3: offer a different route, not the same reminder
Timing: only after the previous opportunity passed and the user remains unactivated.
A third message must contribute new help. Repeating "Your lesson is ready" with more urgency teaches the user that your notifications are noise. Offer a smaller starting point, a troubleshooting path or a different feature that reaches the same value.
Prefer a shorter start?
Try the two-minute basics session and build from there.
If the user ignores the sequence, stop. Onboarding push should not become an indefinite re-engagement campaign. Handle a later return in a separate reactivation flow.
Keep trial messages in their own lane
A free trial can start during onboarding, which tempts teams to combine product help and conversion pressure in every notification. Resist that. The person has two separate jobs: learn whether the product is useful, then decide whether it is worth paying for.
An activation flow should be triggered and exited by product behavior. A trial flow should be triggered by subscription state and measured by trial conversion. Pushlane receives RevenueCat events such as TRIAL_STARTED and RENEWAL through its webhook integration. RevenueCat's event reference describes RENEWAL as an existing subscription renewing or a lapsed subscriber resubscribing, with is_trial_conversion available on renewal events when applicable.
That means a clean setup can have two flows operating with explicit rules:
- Activation flow: enters on signup or setup progress, exits on
first_value_completed, and measures that event. - Trial conversion flow: enters on
revenuecat.trial_started, exits when the trial converts, cancels or expires, and measures the subscription outcome.
Coordinate frequency so a user does not receive an activation prompt and an expiry reminder within minutes. Prefer the message that resolves the immediate state: usually product value early, and a transparent account notice near an accurately known expiry.
For the commercial sequence itself, use the separate trial-to-paid push guide. Keeping these flows distinct makes it possible to learn whether weak conversion comes from a product activation problem or a purchase decision problem.
Implement the event model in Pushlane
Instrument the smallest event set that can represent progress and completion. In Pushlane, call track after the user has been identified, and use stable snake_case event names. Avoid events such as button_clicked that lose their meaning outside one interface version.
A payload might include the chosen goal or onboarding path when it affects the next step. Do not include sensitive information merely to personalize a notification. Apple's guidelines say push should not carry sensitive personal or confidential information.
In the visual flow builder:
- Choose the event that represents entry into the unfinished path.
- Add a delay appropriate to the product's natural use cycle.
- Branch on the milestones that decide the correct next action.
- Send one notification with a deep link to that action.
- Add exits for activation, opt-out and invalid state before adding the next delay.
Use an audience when eligibility depends on durable characteristics or event history. Use an event entry when timing starts from something that just happened. The subscription flow guide explains triggers, delays and branches.
Pushlane resolves user attributes at send time, so a saved first name or plan can be current when a delayed notification sends. Every variable needs a natural fallback. "Your plan is ready" is better than malformed copy when a plan name is missing.
One delivery boundary should remain visible in your rollout plan: Pushlane's APNs delivery is proven end to end for iOS. FCM tokens can be registered for Android, but end-to-end Android delivery is not currently claimed. Do not plan an all-platform onboarding launch as though those delivery paths have identical production status.
Measure activation cleanly
The primary metric is the proportion of eligible users who complete activation within a defined, stable window based on normal product use.
Use opens and taps to diagnose the path. High taps with low activation may indicate a bad destination or unclear task. Low taps may point to timing, reachability or copy. Neither replaces activation.
Track trial conversion separately downstream. A user can activate and reject the price, or subscribe before completing the core action. Reporting those states independently makes both metrics actionable.
Also watch guardrails:
- notification opt-outs after each step;
- users receiving a message after completing the action;
- repeated entry into a sequence intended to run once;
- support contacts caused by confusing deep links or claims;
- time from tap to activation, not just tap volume.
Do not invent a universal day-one, day-three or day-seven benchmark. Start with your product's rhythm, inspect completion timing, and adjust one element at a time. Label directional evidence honestly.
A sequence should make itself unnecessary
The best onboarding flow gets shorter as the product improves. If users consistently complete the first value action in-session, remove the reminder rather than searching for new copy to justify it. If a step repeatedly earns taps but not completion, fix the destination or the product task before increasing urgency.
Pushlane gives you the mechanics to enter on product events, branch on state, delay messages, personalize at send time and stop when the goal is met. The strategy remains simpler: know what activation means, help with the next unfinished action, and measure paid conversion later as a distinct decision.
Start with the lifecycle overview in push notifications for subscription apps, then build one activation flow around one real product event. A narrow flow with an honest exit is more useful than a seven-message calendar that treats every new user the same.