How to create a paywall with Adapty?

TL;DR:
You can build a paywall in the Adapty dashboard and have it live today. The only developer task is the minutes-long SDK upgrade
The build takes an afternoon. Your plan count, your preselected plan, trial or direct purchase, and what happens on close decide more than the visuals.
In Adapty's data, structural changes win on LTV about twice as often as visual and copy tests. Make those calls before you style anything.
Almost nobody builds the screen after the close button. A down-sell for people who tap out is the cheapest thing you're not running.
You can have a working paywall your app by the end of today. Start to finish, with no app release in between.
The whole build happens in the Adapty dashboard.
Open the Flow & Paywall Builder, pick a template, drop in your products, wire the purchase button, and publish.
But that’s not the end. What decides whether the paywall earns anything is a set of choices you make before you open the editor.
How many plans do you show? Which one do you preselect? Do you lead with a trial? What does the user see when they tap the X? You need answers for all .
In our own data data, structural changes win on LTV nearly twice as often as visual and copy tests. The button color can wait.
What do you need before you build a paywall?
Four things, and you probably have three of them already.
- An Adapty account with your App Store or Google Play integration connected, so purchases validate and revenue lands in your analytics.
- Your products are created in Adapty. Every subscription and one-time purchase you want to sell on the screen needs to exist in the dashboard first, matched to the product IDs in the store.
- A placement, which is the slot in your app where the paywall appears. First launch, a feature gate, a settings screen. You can create it while you build.
- The Adapty SDK at a version that renders flows. This is the only part that needs a developer, and it takes them minutes rather than days.
ℹ️Check the platform list first. Flows currently render on iOS SDK v4 and up, Android SDK v4 and up, and React Native SDK v4 and up, with the remaining platforms in progress. The Flow Builder docs carry the current list.
How do you build a paywall screen with Adapty?
Six simple steps in the Flow & Paywall Builder.
Every screen you build is a part of the flow and your paywall is one of the screens.
Step 1: Create the flow
Open Flows in the dashboard and start a new one. You pick a designed template from the gallery or an empty canvas.
Take the template for your first build, because you learn the element system faster by taking one apart than by assembling one.
Name the flow something your teammates will recognize in a placement list six months from now.

Step 2: Lay out the screen
Add your background image or video, headline, subheading, and feature list. Elements sit inside containers, and containers control alignment and spacing.
Build for the smallest device you support before you check the large ones, since a paywall that fits an iPhone SE will fit everything above it.

Step 3: Add products and pricing tags
Attach your products to the screen, then reference their prices with product tags instead of typing numbers into a text element.
A tag pulls the live price from the store, so your paywall shows the right currency in every market and stays correct after a price change.
Typed prices go stale the first time you run a promotion.

Step 4: Wire the purchase button
Add a button, assign the purchase action, and point it at the product the user selected. Then style the selected state of your product cards.
Most buyers take whatever is already highlighted when the screen loads, so the difference between your selected and unselected cards is doing more work than your headline.

Step 5: Add restore and legal links
Restore purchases, terms of service, privacy policy.
Apple rejects builds that sell subscriptions without a visible restore option, and this is the step teams skip when they rush a screen out. Put them in the footer at a readable size.

Step 6: Publish and attach to a placement
Save the draft, preview it on a real device, then publish. Attach the flow to your placement and pick the audience that should see it.
The change reaches users through the CDN in seconds.
Your published version keeps running while you edit the next draft, so you can work on version two without touching what's live.

ℹ️Going further. The builder reference covers what this walkthrough skips, including custom fonts and dark mode styling.
How many plans should a paywall show, and which one should be preselected?
Most apps settle for two to three plans, though it depends on the category.
Some reward three, others two, and some apps do better opening with a single plan and revealing the rest behind a Show more control.
There isn't a universal winning setup. Start by looking at what competitors in your category are doing, and use that as your baseline for experimentation.
Preselection matters more than plan count.
Whatever loads highlighted becomes the outcome for most people who buy, so preselect the plan whose share you want to grow, usually the one with the highest LTV.
Payback speed can override that. A team that needs to recover acquisition cost faster will preselect annual even when weekly projects higher LTV, and that's a business call rather than a mistake.
Keep real discounts off this screen. Show what a longer plan saves against paying weekly, and hold the actual offer for the users who try to leave.
When your catalog is wide, lead with one offer and put the rest behind a bottom sheet.
When your tiers differ in what they unlock rather than in billing period, tabs read better than a stacked list, since each tab carries its own feature list and CTA.
💡 Recipes for the common shapes - Create a paywall with tabs for tiered plans - Show all plans in a bottom sheet for wide catalogs - Show a strikethrough price with a discount badge for savings framing on longer plans
Should the paywall lead with a trial or a direct purchase?
Your category should answer this.
- A trial works when your product needs a few sessions to prove itself. Habit trackers, fitness apps, anything where the value shows up on day four. The trial buys you the time to deliver something before you have to charge.
- Direct purchase works when the user already knows what they want. Utility apps, one-job tools, anything a user installed with a specific task in mind. Sending that person through a trial adds an unnecessary cancellation decision.
Check your own numbers before you default. If most of your revenue currently comes from trials, that may be a fact about your paywall rather than a fact about your users.
ℹ️📊 Trial isn't the safe default. In Adapty's dataset, Productivity apps see $56.95 in one-year LTV from direct buyers against $49.13 from trial users, with Lifestyle showing a gap of around 21% in the same direction. Full breakdown: free trial vs direct purchase by category
What should happen when someone taps close?
Start with whether the close button exists at all.
A hard paywall with no exit converts a higher share of the people who reach it and costs you the ones who would have converted later. A soft paywall keeps them in the app.
Most subscription apps want the soft version and a second chance.
When someone taps the X, route them to a down-sell instead of dismissing: a discounted annual, a longer trial, or the same offer with a countdown attached.
A real discount on the main paywall cannibalizes users who are already willing to pay full price. After they decline, a targeted offer on close converts the ones who weren't ready at full price.
This is also the cheapest screen in your flow. You built the paywall. The down-sell is a variation of it with a different headline and a different price, and it only ever appears to people you were about to lose.
ℹ️Build it: Show an offer when users tap close walks through the navigation rule and the second screen.
How do you know the new paywall is better?
Build a second variant and run an A/B test on the placement.
Change one structural thing between them, since a variant that changes the plan mix, the preselected option, and the headline at once tells you a result without telling you a reason.
Watch revenue per user rather than purchase conversion on its own.
A cheaper preselected plan wins conversion almost every time and can still leave you with less money, which is the most common way teams talk themselves into a worse paywall.
Per-screen metrics in the flow show you where people leave, and revenue ties back to the exact variant that earned it.
Leave the test running until it reaches significance. Calling a winner in week one on a promising number is how teams ship changes that quietly cost them a quarter.
⚠️One limit. Comparing a new flow against a paywall running on your old placement is a cohort comparison across two placement types rather than a single A/B test, because cross-placement A/B tests are paywall-only today. Read the two placements as separate cohorts, and expect the flow's share to grow as users update.
Build it, then change one thing
Your first paywall in Adapty takes an afternoon, and it ships without an app release. That part is settled.
What you do next week will decide what it will earn. Pick one structural thing, the preselected plan or the close behavior, change it in a second variant, and run the test.
Then do it again. Teams that pull ahead on subscription revenue tend to be on their fourteenth experiment while everyone else polishes their first.
Once the structure holds, the screens in front of the paywall are the next place to find conversion, because a user who has already named their goal reads your offer differently.
Open Flow & Paywall Builder and build your paywall, or book a demo and we'll walk your funnel with you.



