Flow Builder: Build, target & A/B test the whole subscription journey

June 16, 2026 
by 
Victoria Kharlan
June 16, 2026 
15 min read
NameFlow Builder How Subscription Apps Build

TL;DR

  • Apps that run experiments earn 40x more revenue than those that don’t. But 89.4% of trial starts happen on Day 0, and most teams are still optimizing one screen: the paywall.
  • Flow Builder is Adapty’s visual builder for the whole journey. Onboarding, surveys, paywalls, and post-purchase live as one configurable object. Product and growth teams own that work without engineering, and changes ship in minutes.
  • You can target flows by acquisition source down to a specific Apple Ads keyword or a specific Meta ad creative. No other platform offers this because Adapty owns both the UA attribution layer and the builder.

A user taps an Apple Ads result for “premium fitness app” and installs. The app opens a six-screen onboarding that asks what her fitness goal is and how often she works out. She’d already told the App Store what she was looking for. A few screens in, she closes the app.

Most subscription apps run the same onboarding and the same paywall for every acquisition channel, regardless of why the user installed. There’s a reason it stays that way. The attribution data is in the MMP, the paywall is in a builder, the onboarding is in app code, and stitching them together for a single channel-specific journey is a project most teams won’t fund.

Flow Builder makes that journey one object that product and growth teams own end-to-end.

What is Flow Builder?

Flow Builder is Adapty’s visual builder for multi-screen subscription flows.

A flow is one configurable object that holds every screen between app launch and paid conversion: welcome screens, surveys, onboarding, paywalls, and post-purchase screens.

Inside that object, you connect screens with forward and back navigation. You add conditional branches based on what users answer. You define variables that carry data from one screen to the next. You build the whole thing visually with no code, and ship it from a dashboard with no app store release.

The point of putting everything in one object: Onboarding and paywall stop being two separate experiences. The questions a user answers in onboarding inform what the paywall shows them, and the team optimizes the journey to trial as a single thing.

Flow Builder exists now because growth got harder. CAC is up across every channel. The apps that hold their economics are the ones running more experiments, faster, on the whole funnel. Doing that used to mean engineering tickets and release cycles for every test on the onboarding side. Flow Builder removes the dependency. Product and growth teams ship and test the full journey themselves, in the time it takes to publish a draft.

Seven flows you can build without engineering

The argument is the easy part. The harder question is what testing the whole flow looks like for a product or growth team holding the spec. Below are seven flows real apps run today, from a single-survey onboarding to multi-channel attribution targeting. Each one is a capability cluster you can use on its own or combine.

1. Personalized onboarding by goal

A sleep and mindfulness app team wants the onboarding to feel like a one-on-one consultation. The user enters their name early, and from that point, every screen calls them by name. The team adds diagnostic surveys, social proof, and a plan projection along the way. By the time the paywall arrives, the offer reads as the conclusion of a personalized assessment.

The flow

  1. Welcome screen with a direct question, positioning copy, and social proof (“Join 18,000+ users“).
  2. Name capture: “First, what should we call you?” Every screen from here on calls the user by name.
  3. A diagnostic sequence: how the user feels, how bad it is, what’s making it worse, and whether they’ve tried meditation before. The flow stores each answer. If the user says they’ve tried meditation, a follow-up question asks what got in the way.
  4. Social-proof break: “You’re not alone in this. 1 of 3 adults face this. 85% see improvement with the right plan.
  5. Testimonials screen: “People just like you made it work,” with star ratings and quotes from users who reported the same problems.
  6. Consequence visualization: a curve showing what happens to sleep problems left untreated.
  7. Plan projection: “Here’s what the next 4 weeks look like for you.” Week-by-week milestones tailored to what the user said.
  8. Final screen and paywall: “Your plan is ready.” CTA: “Try free for 7 days.

What’s happening underneath

The flow asks a short series of questions and stores each answer. Later screens read those answers and use them in headlines, social proof, and the plan projection. Some questions only show up based on earlier answers. The meditation follow-up only appears if the user has tried meditation before.

2. Quiz-to-paywall with computed variables

A fitness app team wants to ask the user a few questions, compute a personalized timeline (“you can hit your target weight in 2-3 weeks“), and show the paywall with social proof and testimonials filtered to the user’s specific goal. By the time they reach the paywall, every part of it references something they typed. The comparison table even speaks to the obstacles they just named.

The flow

  1. Name capture and goal selection. The user enters their name and picks a main goal (lose weight, build muscle, get fit, improve flexibility).
  2. A short quiz: height and weight with unit toggles, activity level, workout frequency, and fitness self-assessment. The flow stores each answer.
  3. A script reads the user’s current weight, target weight, activity level, and workout frequency, then computes a personalized timeline to reach the target.
  4. Goal-conditional social-proof break: “Others with your goal made it work.” Stats change based on which goal the user picked earlier (“78% of users who set a specific goal actually reach it,” plus the computed weekly weight-loss rate based on their target).
  5. Barrier question: “What’s got in the way before?” The user multi-selects from a list of obstacles that have stopped them in past attempts.
  6. Paywall: The headline names the user’s goal, the body uses their name, the value prop shows their computed timeline, and the comparison table addresses the barriers they just named.

What’s happening underneath

The user can enter height and weight in their preferred units (cm or inches, kg or pounds), and the flow converts everything to one internal unit before storing. A script then calculates the timeline to the user’s target from the answers they just typed in.

3. Branching to different paywalls based on quiz answers

A nutrition app team wants the paywall to match the goal the user picked in the quiz. A user who selected “lose weight” lands on a paywall built around the timeline to their target weight. A user who selected “eat healthier” lands on a different paywall, built around habit change. One flow, one quiz, two paywall endings.

The flow

  1. Welcome screen with social proof at the top: “10K reviews, 4.9 rating.
  2. Three explainer screens: meal tracking with AI, understanding your body data, and recipe suggestions.
  3. Name capture:First, what’s your name?” The flow stores it.
  4. Goal question: “What brings you to the app?” Seven options to pick from, including Lose weight, Eat healthier, and All of the above.
  5. Engagement break: “You’re in the right place, [name].” Below the headline: “The App has helped 3.8M users to [their goal answer].” Then a testimonial.
  6. The quiz keeps going with questions about gender, eating habits, meals per day, allergies, birthday, height, current weight, and target weight.
  7. Loader screen: “Adjusting your personalized journey.
  8. Personalized plan screen: a chart showing the user’s current weight curving down toward their target, plus a plan description that uses their answer for meals per day.
  9. Paywall A, for users who picked a weight goal. The headline gives them a timeline to their target weight. The plan focuses on calorie tracking and meal logging.
  10. Paywall B, for users who picked a habit or learning goal. The headline talks about building lasting habits. The plan focuses on food guidance and nutrition education.

What’s happening underneath

The flow saves each answer the user picks. At the end of the quiz, a rule checks what the user said their goal was, and shows them whichever paywall matches. Both paywalls live inside the same flow, so the team builds them together and ships them together.

4. Win-back with name greeting, value recap, and short-fuse countdown

A VPN app team wants to bring back users who left. The flow opens by name, reminds them what they used to have, and offers a discount with a 5-minute clock.

The flow

  1. Welcome-back screen: “Welcome back, [name] 👋 We missed you!” with a friendly character and a Continue button. The flow already has the user’s name from when they originally signed up.
  2. Value-recap screen: “We’ve saved a special deal for you.” A checklist of what they used to have: private browsing, unblock streaming, 400+ servers, and a no-logs policy. Button: “See my offer.
  3. The discount paywall: “Claim Premium before it’s gone.” A 5-minute countdown ticks at the top. “-50%” over a gift box graphic, then the price: $1.54 a week, with the yearly price ($79.99) below.
  4. If the user doesn’t buy before the timer hits zero, the discount disappears, and they see standard pricing.

What’s happening underneath

The flow shows up only for users who haven’t opened the app in a while. The team picks the wait time, usually two weeks. The 5-minute countdown is a real timer. When it runs out, the discount is gone, and the user sees the standard offer instead.

5. Permission request plus paywall

A nutrition app team wants notification permission from as many users as possible. The flow asks right after the user pays. The user just spent money on the product, which is the strongest signal they care about staying engaged with it.

When the user taps “Turn on notifications,” the standard iOS prompt opens. The flow saves whether the user said yes or no. Later, the team uses that to decide whether to send notifications or skip the user.

6. Attribution-powered flow targeting

A team running paid ads across multiple channels wants each new install to land in a flow that matches where they came from. Someone who searched Apple Ads for “ai animation generator” has a different intent than someone who tapped a broad TikTok video. The team builds a different flow for each source and routes installs to the right one.

Mobile app growth funnel: Apple Ads acquisition, personalized onboarding, and subscription paywall for an AI animation app.

The flow

Acquisition sourceFlow shownWhy
Apple Ads keyword: “ai animation generator”Skip onboarding → direct annual plan at $79.99/yearHigh intent, brand-aware
Apple Ads keyword: “free animation app”Full onboarding → trial-first weekly at $4.99/weekPrice-sensitive, needs a value demo
Meta video ad showcasing premiumShort feature recap → annual with discountAlready saw the pitch, close the sale
TikTok campaignShort gamified onboarding → monthly $9.99/moYounger audience, lower commitment
Organic/directFull onboarding + feature highlights → all plansUnknown intent, show full value

What’s happening underneath

When a new user opens the app, Adapty checks where the install came from (which Apple Ads keyword, which Meta ad, which TikTok campaign, or organic) and picks the matching flow. The team builds all five flows in the same dashboard and sets a targeting rule for each. No engineering involvement, no app release.

👉 Most paywall builders can target by country or by subscription status. Per-keyword and per-creative targeting needs the attribution layer and the builder to be in the same product. Adapty is the only one that does both, so the team picks targeting all the way down to a single Apple Ads keyword or a single Meta ad creative without connecting to an external MMP.

For the longer argument on why ad creative and post-install onboarding need to tell the same story, see Creative-funnel match: Why your ads and your onboarding need to tell the same story.

7. Geo-personalized pricing and copy

A team selling in Brazil, Japan, and the United States wants to do three things: charge prices that fit each country’s economy, show copy in each country’s language, and run promotions in specific regions when it makes sense. These aren’t separate flows. The team builds one flow and applies these capabilities to it.

What the team does

The team builds one flow. Then, inside the flow editor:

  • Translates the copy in one click. The flow editor has AI translation built in. One click translates the whole flow into the target language, and the team can review and tweak the wording.
  • Targets the right users. Country and language are targeting options, the same as anything else. The team picks the segments and assigns the matching prices and copy.

Subscription prices vary 4x between countries in our dataset. An app that uses one global price loses revenue in high-paying markets and prices out users in lower-income ones. With regional pricing, the flow stays the same everywhere; the prices and the language are the only things that change per market.

How Flow Builder works under the hood

Native rendering

Each screen in a flow renders as a real native UI component. Adapty doesn’t ship an HTML page inside a WebView. Screens open instantly, the text scales when the user changes their iOS settings, VoiceOver reads the screen out loud, and the result looks the same as a screen an engineer would have coded by hand.

Adapty delivers flows through a CDN with 300+ points of presence around the world, and the SDK has an offline fallback so the flow still shows up when the device has no internet.

For a deeper look at the rendering pipeline and why we chose native over WebView, see Native paywall rendering: how it works and why we chose it.

Server-driven configuration

You ship flow changes from a dashboard. You can edit a draft while the published version keeps running for your users. When the draft is ready, you push it live with one click, and the update reaches users around the world in seconds. No app store submission. No engineering involvement, unless you’re adding new SDK features.

How data flows between the app and the flow

A flow stores data in variables. There are four types: text, numbers, true/false values, and lists.

You can create variables in three ways:

  • Manually, by defining a variable in the flow editor.
  • Automatically, when an element generates one. A toggle creates a boolean. A survey creates a selected option. A slider creates a numeric value.
  • From the native app, by passing data into the flow through the Adapty SDK.

Scripts combine variables into new ones. The calorie target from use case 2 is one example: weight, goal, and activity in, calorie target out. Any calculation you’d otherwise need an engineer to add to the app’s code can run inside the flow instead.

When the flow finishes, the Adapty SDK gives every variable back to the app, including the ones a script computed. The app and the flow share data both ways: the app sends data in, the flow uses it on screen and in logic, and the app reads the result back when the flow ends.

Attribution as a targeting input

The acquisition source lives in the same targeting menu as country, language, and subscription status. You can target a flow to a specific Apple Ads keyword, to a specific Meta ad creative, to an individual Google or TikTok campaign, or to all organic installs.

The flow keeps improving, per channel

Once your flow is live, three parts of Adapty work on it together. Growth Autopilot watches performance and proposes the next experiment, written in plain English. Flow Builder is where you check the brand, edit the copy, and build the variant. Flow-level A/B testing measures the result, and Autopilot uses the winner to propose the next experiment.

The takeaway

For years, growing a subscription app meant optimizing the paywall. Flow Builder gives the team the whole journey instead: onboarding, surveys, paywalls, and post-purchase, configured visually as one object. Product and growth teams own that work without engineering. Changes ship in minutes; an app store release takes weeks.

These seven flows are the patterns teams reach for first. The building blocks behind them, personalization, branching, scripting, attribution targeting, and geo-pricing, recombine into the next flow a team needs.


Build your first flow

Open Flow Builder and start a flow on your own funnel. Explore Flow Builder →

Or get a walkthrough on your own acquisition data from the Adapty team. Book a demo →

FAQ

Yes. Flow Builder runs A/B tests on the entire flow as one experiment, so you can change the order of onboarding screens, swap a survey question, redesign the paywall, and update a post-purchase screen, all inside one variant. The test measures the journey, not just one screen. Most paywall tools only test the paywall, which means you tune the price while the onboarding sells someone else’s product.

Yes. Flow Builder reads from Adapty’s attribution layer, so you can target a flow down to a specific Apple Ads keyword, a specific Meta ad creative, an individual Google or TikTok campaign, or to all organic installs. A user who searched Apple Ads for “premium fitness app” can land on a different flow than a user who tapped a broad TikTok video. The matching happens automatically, with no engineering involvement.

You store each onboarding answer as a variable and reference those variables in the paywall. The user’s name can appear in the headline, their stated goal can shape the copy, and a script can compute values (a calorie target, a timeline to a goal, a personalized projection) and show those numbers back to them on the paywall. You can also route users to different paywalls entirely based on which answer they picked.

Yes. Flow changes ship from the Adapty dashboard, and the update reaches users in seconds through a global CDN. The only time you need to push a new app version is when you’re adopting Flow Builder features your current SDK doesn’t support yet. Routine changes (copy edits, paywall variants, new screens, targeting rules, pricing) all ship without going through App Store or Play Store review.

Pull your funnel by traffic source and look at where users drop. If they leave in the first three onboarding screens, the issue is usually that the onboarding doesn’t match what brought them in. If they complete the flow and stall at the pricing screen, the issue is that the offer or the price doesn’t match the audience the creative is bringing in. Most teams blame the paywall, but for subscription apps, the leak usually shows up several screens earlier. The sibling article Your users aren’t dropping at the paywall. They dropped three screens ago covers this in detail.
Victoria Kharlan
Lessons I wish I had. Now yours.
Product-releases

On this page

Ready to create your first paywall with Adapty?
Build money-making paywalls without coding
Get started for free