FunnelFox

The web2app guide: how subscription apps grow by selling on the web first

A step-by-step guide to launching a web funnel, from the first ad to the first renewal, with data from real funnels.

Section 1

What web2app is

In the standard model, someone sees an ad, taps it, lands on the app’s store page and installs. If they subscribe, they pay inside the app, and Apple or Google keeps 15–30% of the payment.

Web2app changes the order:

  • the ad sends people to a website first,
  • there they answer a few questions about what they want and what’s getting in the way,
  • they see a plan built from their answers and pay right in the browser,
  • then they download the app and log in, and everything they paid for is already unlocked.

This sequence is called a funnel: a series of screens that takes someone from an ad to a purchase. A web2app funnel runs on the web and ends in your app.

Web2app is also written as web-to-app. In this guide, “web2app funnel”, “web funnel” and “funnel” mean the same thing.

A web2app funnel, step by step · Rise

Ad
Rise ad: tap your current bedtime to see the window where you fall asleep in 15 minutes
Landing page
Rise landing page: a personalized sleep plan built for you, with the first question
Quiz
Quiz: how old are you
Quiz: can you guess your ideal bedtime
Quiz: what is your primary goal
Personal plan
Loading screen: crafting your plan to fall asleep faster
Result: expected improvements by a date
Result: your ideal bedtime and wake time are ready
Paywall
Paywall: three plans, terms and an Apple Pay button
Ad: makes a promise. Landing page: repeats it and asks the first question. Quiz: questions about the person and their goal. Personal plan: built from the answers. Paywall: plans, terms and Apple Pay. Screens from the web funnel of Rise, a sleep app. Tap a screen to enlarge it.

Subscription apps sell in four main ways. What sets them apart is where people pay.

1. App-only

The default for most apps. The store takes a cut of every payment.

Ad→App Store→Install→Pays in the app

2. Web2app

The model this guide covers.

Ad→Web funnel→Pays on the web→Install

3. Web onboarding, in-app paywall

The quiz runs on the web, but people pay in the app, so the store still takes its cut. Some teams use it as a first step toward web2app.

Ad→Web quiz→Install→Pays in the app

4. Web-only

No app at all. Some teams call it web2web.

Ad→Web funnel→Pays on the web→Uses it on the web
Highlighted: where the payment happens.

The web part can look different. Teams use landing pages, advertorials (pages styled as an article or a review), video sales letters (one long pitch video) and quizzes. For subscription apps, quizzes are the most common, so that’s the format this guide covers: a few questions that end with a personal plan and an offer.

Top-grossing apps using web2app

Use web2appDon’t
30%
70%
2024
82%
18%
2025
Source: FunnelFox State of Web2App Report

Most of the biggest subscription apps already use web2app. In 2025, 82% of top-grossing apps ran web2app funnels. Top-grossing apps are the ones at the top of the App Store revenue charts. Noom, Calm, Flo and Babbel all sell this way.

Web2app adoption

20%
+63% YoY
+77% YoY
202320242025
Source: FunnelFox State of Web2App Report, based on Meta Ads Library data parsed by Web Funnels Club

The number of active web2app funnels grows every year.

Web funnels are now common practice in every app category. They’re most widespread in:

  • health and fitness,
  • education,
  • lifestyle,
  • photo and video,
  • finance and career.

Global web2app revenue · 2025

GLOBAL$60B+
US 63.7%Europe 14.2%APAC 7.7%LATAM 5.6%MEA 4.6%Canada 4.2%
Source: FunnelFox State of Web2App Report

Web2app funnels earned more than $60 billion worldwide in 2025. About 64% of that came from US users.

Still, most US subscription apps don’t run web funnels yet and acquire users in other ways.

This guide is written for two kinds of readers:

  1. founders and small teams that run their own user acquisition,
  2. and growth teams at larger companies that are evaluating web2app.

By the end of the guide, you’ll know how to:

  • explain how web2app works and why the biggest apps sell this way,
  • plan an ad budget and run a first campaign on Meta, then add TikTok and Google,
  • build a funnel from the first screen to the paywall,
  • set up payments, app access and tracking so every purchase is counted,
  • and read the results and decide what to test next.

Section 2

Web vs App Store

Selling on the web and selling through the App Store differ in six ways:

App Store Web
Fees15–30% of each in-app payment, depending on your size and the type of purchase2–5% to a payment processor
AttributionApps must ask before tracking people (App Tracking Transparency). 38% of iPhone users who see the prompt allow it (Adjust, Q1 2026), so ad platforms can’t see which ads led to most purchasesEach purchase is reported to the ad platform with the ad it came from, and the algorithm looks for more buyers like it
OffersChanges need an app release or App Store reviewTrial length, intro discounts, plan lengths and add-ons change any time
Test speedA test waits for an app releaseResults within days
Cancellation flowApple’s own screens: you can add a retention message or offer, but you can’t ask why people leaveYour own cancellation flow: ask why, offer a pause or a cheaper plan
PayoutsWithin 45 days after Apple’s fiscal month closes, so up to two months after the sale (Apple)Within days

The payout delay matters once you buy ads. Ad platforms charge as the ads run, while App Store revenue from the subscribers those ads brought in arrives up to two months later. The team covers that gap from its own cash, which limits how fast it can scale ad spend.

The web brings more buyers and revenue

Web funnels also show better results (State of Web2App 2026):

  • Conversion: with the same product and ad spend, a web funnel turns 3.0% of ad clicks into buyers, an in-app funnel 1.5%.
  • LTV (lifetime value), the total a subscriber pays before they leave: in health and fitness apps, about $80–90 for web subscribers against $40–45 for app subscribers. That covers the higher cost of web traffic.
  • Revenue mix: funnel scalers, apps that run many funnels at once, get about 90% of their subscription revenue from the web.

App Store and Google Play allow web2app

Apple’s App Review Guidelines allow people to buy a subscription on your website and then sign in to the app (section 3.1.3(b), Multiplatform Services). Google Play’s policies allow the same.

For years, what both stores restricted was app-to-web: a button inside the app that sends people to a web checkout. After court cases brought by Epic Games, US apps can now do this on iOS and Android. What the stores may charge on those sales is still being decided. None of this affects web2app, since people pay before they install.

Web2app

Ad→Web funnel→Pays on the web→Installs→Signs in
Allowed under App Store and Google Play rules everywhere

App-to-web

Inside the app→“Buy on our website” button→Pays on the web
Allowed in the US since 2025; what the stores may charge is still in court

The rules that do apply are the ones every subscription business follows: show the price and renewal terms before people pay, and make cancelling easy to find.

Apple also expects the same subscriptions to be on sale inside the app, so keep your in-app paywall for people who install directly.

Web2app comes with its own setup

Four things set the web2app flow apart:

  1. More steps before the app. In the store model, people tap Install. In web2app, they first go through a quiz and pay on a web page. Some drop off along the way, so the funnel has to build trust.
  2. You take over the store’s job. In the store model, the store handles payments, renewals, refunds, disputes, sales tax and cancellations. On the web they’re yours, along with the support questions that come with them.
  3. It costs money before it pays back. You need a tool or a team to build funnels, plus an ad budget. Ads usually take a few months to pay back.
  4. Fewer people reach the store for free. If everyone pays before they install, people who don’t pay never download the app. That means fewer installs and ratings for store search to work with, and less word of mouth.

Many teams run both: web funnels for paid traffic, and the regular store path with in-app purchases for everyone who finds the app on their own.

Section 4

Web2app funnel structure and build options

From the outside, a web funnel looks like a quiz with a payment page at the end. Underneath, it’s a chain of six parts that have to work together, starting with the ad. Most of the work in running web2app goes into the parts people never see.

A funnel has six parts

  1. The ad creative. The first screen of the funnel in practice: it makes the promise every screen after it repeats, and it decides who taps at all.
  2. The funnel itself. The quiz or onboarding screens, the email step, the paywall with your plans and any offer after the purchase. It also has to work in every language and currency you sell in.
  3. Payments. The checkout and payment processing, plus renewals, sales tax, refunds and disputes.
  4. App access. The plan someone paid for on the web has to be available when they download the app and log in.
  5. Tracking. Pixels and server events that report key events, such as sign-ups and purchases, back to Meta, TikTok and Google, plus UTM tags on every ad link.
  6. Analytics. A product analytics tool such as Amplitude or Mixpanel shows what happens at each step. Revenue analytics shows what each group of customers pays over time.

Around these sit jobs that the store handles when people pay in the app. On the web, they’re yours:

  • support for billing questions,
  • refund requests,
  • and receipts and emails about billing problems.

Two ways to build a funnel

Code with an AI agent Funnel platform
Time to a working funnelDays for the screens, weeks to connect everything behind themA few hours to a few days
Upfront costEngineering time plus a fee for each service you connectA platform fee
Control over screens and flowsFullWithin the platform’s editor
PaymentsYou connect each provider and build subscription billing yourselfPayment providers and subscription billing come built in
What you maintainEverything behind the screens: hosting, database, payments, email, app links, analyticsThe platform runs the infrastructure. You work on the offer and the funnel, and some platforms can build the first version with AI
Best forPrototyping a quiz and testing ideasLaunching and scaling funnels without building infrastructure

Section 5

Creatives

The ad is the first screen of the funnel. It makes the promise that every screen after it has to keep, and it decides who taps at all.

Your best organic videos can become your first ads

With broad targeting, the ad itself decides who sees it: the hook, the person on screen and the promise attract a specific kind of viewer. So you need several creatives, each speaking to a different need. If you already have organic videos that perform well, use them to pull hooks, angles and messages for your first ad creatives.

Pick the 5–6 that performed best and re-cut them as ads:

  • put the main message in the first 1–2 seconds,
  • keep them vertical (9:16) and 15–35 seconds long,
  • make sure someone speaks: a voiceover or a creator on camera,
  • and end with a clear call to action.

For the first tests, plan at least six angles with three variations each:

  • an angle is the core message: a pain, a promise or a situation,
  • a variation changes the hook, the person or the format.

A new caption or filter on the same video doesn’t count as a new creative. It reaches the same people and wears out at the same time as the original.

Formats that tend to work for quiz funnels:

  • a creator talking to camera
  • POV or storytime
  • green-screen reaction
  • “I took this quiz” screen walkthrough

When you need more creatives than your team can shoot:

  • Creators you already work with: ask them to record the same script in their own words. Testing new faces matters as much as testing new scripts.
  • TikTok One: TikTok’s creator marketplace. It replaced Creator Marketplace and Creative Challenge in 2025. It’s paid, and the more you spend, the more creators you can reach.
  • Spark Ads: a TikTok format that runs a creator’s post as an ad from their own account. It looks like their content and keeps its likes and comments.
  • AI-generated video: TikTok’s own tools can make it, but it gets an AI label, which usually makes it perform worse than real creators.

Where to look for new angles:

  • competitors’ ads in the Meta Ad Library and TikTok Creative Center’s Top Ads,
  • the words customers use in your app reviews and support tickets,
  • and the quiz answers that convert best.

Copywriting frameworks such as Life Force 8, a list of eight basic human desires, help turn those findings into hooks.

Test new creatives in a separate campaign

Creatives wear out, so new ones are needed every week. Test them in a separate campaign with $100–200 a day and the same targeting and optimization as your main one. Add about ten new creatives a week. This keeps untested ads out of the main campaign’s learning.

Read each creative from the top of the funnel down, because early signals arrive long before purchases do:

CheckpointWhat it showsTurn the creative off if
Hook rateThe share of viewers who watch past the first 3 seconds (2 on TikTok): whether the first frame holds attentionOn TikTok: under 20% of viewers after 3,000+ impressions
CTR and cost per clickWhether the ad makes people tapCost per click is 1.3 times your account average or higher
Cost per second screen and per emailWhether the clicks come from people likely to payAbout 1.5 times the average of your best creatives or higher
Cost per purchaseWhether the creative sellsAfter spending 2–3 times your target CPA: fewer than two purchases, or CPA more than 30% above target

What to do with the results:

  • Winners: a creative that hits your target CPA over 5–10 purchases moves to the main campaign.
  • Creatives with no spend: leave them alone. The platform didn’t select them for delivery, which says nothing about their quality.
  • Creative fatigue: when a proven winner’s CPA starts climbing after a few days or weeks of stable results, usually with falling CTR, the creative is wearing out. Replace it with new hooks on the same message. Don’t raise its budget.

Section 6

Onboarding

Onboarding is everything between the ad and the paywall:

  • the quiz,
  • the short screens in between,
  • and the result screen with a personal plan, shown right before the paywall.

By the time the price appears, the person should see the plan as built for them. The price then reads as the cost of that plan.

Focus on the screens before the paywall

In an average web2app funnel, 13% of people who start reach the paywall and 3% buy (State of Web2App 2026). Most people leave before the price is even on screen, so the screens before it matter more than the paywall itself. Onboarding has three jobs:

  1. Continue the story the ad started, so people feel they’re in the right place.
  2. Build trust in a product they met half a minute ago.
  3. Set expectations they’ll still agree with after paying. A promise the product can’t keep comes back as a refund.

The usual order of screens

A quiz funnel usually runs in this order:

  1. First screen that picks up the ad’s promise and starts the quiz.
  2. Quiz about goals, problems and situation, with short screens of feedback, facts and reviews in between.
  3. Email, asked in exchange for the result.
  4. Loading screen while the plan “builds”.
  5. Result: the personal plan and a prediction.
  6. Paywall with plans and prices.
  7. Upsell right after the purchase.
  8. Download page that gets people into the app.

Tell one story from the ad to the paywall

A common storytelling framework breaks the path from the ad to the paywall into eight steps, and each screen of the funnel serves one of them:

  1. Engage: an easy first step tied to the ad.
  2. Build trust: facts, numbers and reviews.
  3. Understand goals: what the person wants.
  4. Understand pains and context: what’s in the way and what their days look like.
  5. Give feedback: react to their answers.
  6. Show the expected result: a prediction built from what they told you.
  7. Give a sneak peek of the solution, without revealing all of it.
  8. Offer a personal plan for the result they’ve just seen.
1Engage2Build trust3Understand goals4Understand pains and context5Give feedback6Show the expected result7Sneak peek of the solution (don’t reveal all)8Personal offer
From the ad at the bottom to the personal offer at the top: each screen of the funnel serves one step.

One promise from the ad to the paywall · Calm

Ad
Calm ad: work stress keeping you up?
“Work stress keeping you up?”
First screen
Calm first screen: your journey to less stress and better sleep starts here
“less stress and better sleep”
Quiz
Calm quiz: what is your age group, to improve your sleep and reduce stress
Calm feedback screen: on your own vs with Calm
“improve your sleep and reduce stress”
Result
Calm result: stress and burnout impact today is high
Calm prediction: visible results to stress, sleep and energy over time
“Stress & burnout impact today”
Paywall
Calm paywall: your personalized wellness plan is ready, with three plans and Apple Pay
“reduce tension and feel more rested”
Highlighted: how each screen repeats the same promise. Screens from the web funnel of Calm. Tap a screen to enlarge it.

Calm’s funnel shows how this works. The ad asks whether work stress keeps you up at night. The first screen promises less stress and better sleep, the quiz asks questions about both, the result rates the person’s stress and burnout, and the paywall promises to reduce tension and help them feel more rested. One promise travels from the ad to the price, and every screen makes it more specific.

Repeat the ad’s promise on the first screen

Ad and first screen · Homemade Method

Homemade Method ad: plus size 20 down to a size 12, A1C from 11 to normal, all my labs cleared
Homemade Method first screen: Georgine, 69, lost 35+ lbs and got all her blood numbers normal, just by cooking
Highlighted: the same promise in both, weight loss and normal blood numbers. Tap a screen to enlarge it.

On the first screen, people decide whether the funnel matches the ad. The first screen needs:

  • one headline that repeats the ad’s promise,
  • one visual,
  • one button,
  • and a load time under about 2.5 seconds on a phone, inside the Instagram or TikTok browser.

A polished corporate page after a casual creator video breaks that match, and people leave.

Many funnels put the first question on the first screen itself, so engaging takes one tap. That question should:

  • take one tap on a picture or a large button,
  • continue the ad’s hook,
  • and ask nothing personal.

Age, weight, income and other sensitive questions belong in the second half, after people have invested a few answers. If you lose more than half of people between the first and second question, the first question is usually the problem.

Write questions people recognize themselves in

Questions people recognize themselves in · Endel

How often do you struggle to stay focused on tasks that require sustained mental effort?
When working or studying, how easily are you distracted by things around you?
How often do you start tasks but leave them unfinished?
Do you often lose or misplace things you use regularly: keys, phone, wallet?
Each question describes an everyday situation, and the answers form a simple frequency scale. Screens from the web funnel of Endel. Tap a screen to enlarge it.

Each question should make the person recognize their own situation. Together, the answers make the plan feel personal. Ask about:

  • the goal,
  • the main problem,
  • the situation,
  • and the motivation.

One format works well for this: a short statement people rate, such as “I need a little push to keep going when I’m tired. Agree?” People see themselves in it faster than in a direct question.

Ask only what you use. Every answer should change something later: the plan, a feedback screen or the paywall copy. Merge questions that ask about the same thing. Before the email step, use taps and sliders only, with no typing. The questions can also differ by audience: a funnel for women over 45 can ask, show and promise different things from one for men in their 30s.

Respond to answers between questions

Screens between questions · Fastic

Feedback
Fastic: goal weight 60 kg, realistic target, you will lose 9.1% of your weight
Fastic: personal summary based on your answers, with BMI and target weight
Reacts to the answers right away
Proof
Fastic: lose twice as much weight with Fastic vs trying on your own
Shows why the app works
Sneak peek
Fastic: prediction chart, weight loss effect after 3, 7 and 30 days
Fastic: your personal weight loss plan is ready, chart from 66 kg now to the 60 kg goal
Shows the expected result before the price
Screens from the web funnel of Fastic, a fasting app. The goal weight from the quiz, 60 kg, reappears in the summary and on the final chart. Tap a screen to enlarge it.

Between questions, the funnel responds to the answers with three kinds of screens:

  1. Feedback on answers. React to what someone said with a result or a tip, either right under the answer or on its own screen: “Your level is B1. That’s enough for everyday conversation; let’s get you to B2.” It makes the quiz feel useful.
  2. Proof. The number of people using the app, ratings, research behind the method, press mentions and reviews from people who look like the person taking the quiz.
  3. A sneak peek of the solution. A prediction chart with a date, a short explanation of how the method works, or a chance to try it: a selfie analysis in a style app, a palm photo in an astrology app, a short level test in a language app. Show enough to make the result real and keep the full result for after the purchase.

Ask for the email before the result

Email screens from real funnels

Babbel
Babbel email screen: what is your email, with a note about marketing emails and how to unsubscribe
A plain question, with the email terms below
Lasta
Lasta email screen: enter your email to get your Tai Chi plan, with a privacy policy note
The email as the way to get the plan
Endel
Endel email screen: enter your email to see your results
The email as the way to see the results
Gyna
Gyna email screen: enter your email to see your personalized egg quality plan, we’ll never share your email
The plan, social proof and a line about privacy
Tap a screen to enlarge it.

Most people who reach your paywall won’t buy on the first visit. An email lets you follow up with them, and the emails that go out after someone leaves can bring back a meaningful share of revenue. Asking for it also adds a small commitment before the price, which tends to raise conversion.

Frame it as the way to get the result: “Enter your email to get your plan.” Then:

  • put it right after a teaser of the result,
  • add a line saying you won’t sell the address,
  • and offer sign-in with Apple or Google so people don’t mistype it.

Healthy funnels keep 70–85% of people at this step. If you lose more, test moving the email one or two screens later.

Make the most of the loading screen

Loading screens from real funnels

Rise
Rise loading screen: indexing data for women in their 30s, focusing on falling asleep faster, adjusting for stress and phone use
Names the answers the plan is built on
Clever
Clever loading screen: calculating your IQ score across logic, memory, speed, focus and problem-solving, with a review
Breaks the result into parts and adds a review
Reframe
Reframe loading screen: building a personalized plan, with a trust badge below
Lists the parts of the plan and adds a trust badge
Gyna
Gyna loading screen: analyzing your fertility profile, from medical history to optimization potential
Shows what is being analyzed
Flirtist
Flirtist loading screen: loading your personalized plan, with a user review below
Shows the plan’s progress and adds a review
Tap a screen to enlarge it.

The “analyzing your answers” screen before the result is a short pause that shows the plan is built from the person’s answers. It also gives you a few more seconds to show something before the price. Use it to:

  • show what’s being built from the person’s answers,
  • tell the product’s story in a few short slides,
  • or ask one or two last questions in pop-ups.

Keep it short for colder traffic: five seconds or less on TikTok. A longer loader makes sense only if every slide adds something new.

Build the result from the person’s answers

Result screens · Lasta

Goal and date
Lasta result screen: 60 kg by Mar 25, 2026, with a week-by-week weight chart
The goal from the quiz, with a date and weekly steps
Now vs later
Lasta result screen: your weight now and after 4 weeks, marked as illustrative
Now vs after 4 weeks, marked as illustrative
Profile and plan
Lasta result screen: your profile based on answers, with BMI, workout duration and water intake
The person’s numbers and what the plan includes
Screens from the web funnel of Lasta, a fitness app. Tap a screen to enlarge it.

The result screen turns the answers into a promise: the goal they chose, a date and how they’ll feel when they get there. Two elements make it personal: the line “Based on your answers” and a before-and-after of the person’s own numbers, such as where they are now and where they’ll be in three months. Keep the promise realistic and add “results vary” where it applies. Google requires it in some categories, and an inflated promise comes back as refunds.

Four mistakes that lower conversion

  1. Making the quiz shorter or longer for its own sake. What matters is whether every question and screen is relevant to this audience. The length follows from that.
  2. Optimizing for reaching the paywall. More people on the paywall can mean fewer buyers, if the screens you cut were the ones that sold the plan. Judge every change by purchases.
  3. Polishing the visuals and leaving the message as is. Words and meaning move conversion more than design.
  4. Removing every bit of effort. Steps that ask something of people, like an email, a selfie or a photo of their palm, raise their commitment, and with it conversion.

Section 7

Pricing and the paywall

On the web, you set the prices, the plans, the trial and what happens after the purchase. Pricing control is one of the main reasons to sell outside the App Store. A single pricing change can shift a large share of a funnel’s revenue.

Research willingness to pay first

People pay when the value they expect is higher than the price. Value here is what the product does for them, plus the extras that come with it: the community, the feeling of a plan made for them. Before you test prices, find out what your audience would pay:

  1. Run a short pricing survey. The Van Westendorp method asks four questions: at what price would the product feel too expensive, expensive but worth considering, a bargain or so cheap you’d doubt its quality. The overlap shows an acceptable range.
  2. Rank features. A MaxDiff survey asks people to pick the most and least important feature from small sets, which shows what to put first on the paywall.
  3. Talk to people who left. A short exit interview with people who cancelled tells you whether price was the reason or something else.

Continue the quiz on the paywall

Paywalls from real funnels

Fastic
Fastic paywall: 1 week, 1 month selected by default, 3 months marked most popular, with per-day and crossed-out prices
1 week – 1 month – 3 months, with the 1-month plan selected
Lasta
Lasta paywall: 28-day plan selected and marked most popular, 12-week and 24-week plans, per-day prices
28 days – 12 weeks – 24 weeks, with the shortest plan selected
Reframe
Reframe paywall: monthly, quarterly selected by default, semiannual, with per-day and crossed-out prices
Monthly – quarterly – semiannual, with the quarterly plan selected
Each paywall preselects one plan and shows the price per day next to the crossed-out full price. Tap a paywall to enlarge it and scroll.

By the time people see prices, they’ve spent a few minutes in your quiz. The paywall should keep the angle, story and message that ran from the ad through the onboarding. A strong one usually has:

  1. A headline built from their answers, such as “Your 8-week plan to lose 10 lb”.
  2. The expected result again: the chart, the date, the before and after of their own numbers.
  3. The plans, with one selected, and the price visible without scrolling.
  4. The subscription terms next to the pay button: today’s price, the price after the intro period, how often it bills, that it renews automatically and how to cancel.
  5. A short list of what’s included.
  6. Reviews from people who look like the person reading.
  7. A money-back guarantee, if you offer one.
  8. Security and contact details: who charges the card, how payment is protected, how to reach you.
  9. A short FAQ below the plans.

Urgency works too, as long as it’s real. A countdown has to count to a real deadline that stays the same on every visit, and a crossed-out price has to be one people do pay.

Show three plans with one selected by default

Three plans is the most common setup on web paywalls, because it gives people a choice without making them think too long. Two configurations work well for most subscription apps:

  1. 1-week paid trial – 1 month – 3 months. An easy start for people who aren’t sure, and longer plans for those who are.
  2. 1 month – 3 months – 6 or 12 months. Nudges people toward a longer commitment, which brings more money up front.

Monthly plans bring in the largest share of web2app revenue, and weekly plans the second largest. The right mix for your app is something to test.

Web2app revenue by plan length · 2025

48.8%1 MONTH
1 month 48.8%1 week 30.5%1 year 12.2%3 months 8.4%
Source: FunnelFox State of Web2App Report

Small details change how people choose:

  • which plan is selected by default
  • the order of the plans
  • the names: “1 month” and “4 weeks” read differently
  • price per day or per week next to the full price
  • whether the full price and the saving are visible

FunnelFox Pricing Index · US = 1.00

1.62
1.00
0.29
NetherlandsUSTurkey
Source: FunnelFox State of Web2App Report

If you sell outside the US, set prices per country. The FunnelFox Pricing Index compares the most popular subscription price in each country with the US price: above 1.00 means people there pay more, below 1.00 means they pay less.

Start with a paid entry price

Web2app revenue by trial structure · 2025

56.8%NO TRIAL
No trial 56.8%Paid trial 28.9%Free trial 14.3%
Source: FunnelFox State of Web2App Report

On the web, most subscription revenue comes from offers with no free trial at all. Free trials cause two problems:

  1. they attract people who sign up and never pay,
  2. and the ad campaign learns to find people who aren’t ready to pay yet.

A paid entry addresses both.
It can be a paid trial, such as $1.99 for the first week.
Or it can be an intro offer: a discount on the first period, before the regular price starts.
New funnels often start at $0.99 or $2.99.

Paid trial and intro offer

Paid trial · Flo
Flo paid trial: try Flo for 30 days, choose a price for your 30-day trial, €1 or €34.99
A 30-day trial for €1, with an option to pay more
Intro offer · Rise
Rise intro offer: $19.99 for the first month, then $29.99 a month until canceled
$19.99 for the first month, then $29.99 a month
Highlighted: the entry price and what comes after it. Tap a screen to enlarge it.

Large intro discounts lift conversion, but the bigger the gap between the first price and the regular one, the more people leave or ask for a refund at the first full charge. Show the renewal price and date clearly. Free trials still work as an offer in a follow-up email to someone who left the funnel without buying.

People who leave the paywall without buying can get an offer too. A discount can bring some of them back. It also teaches people that waiting gets a lower price, so show it only to those who were unlikely to buy at full price.

Disclose all terms clearly before people pay

Before the pay button, people should see five things:

  1. the price they pay today,
  2. the price after the intro period,
  3. how often they’ll be charged,
  4. that the plan renews automatically,
  5. and how to cancel.

In the US, the FTC enforces this under the Restore Online Shoppers’ Confidence Act (ROSCA). The law requires clear terms, the customer’s express consent and a simple way to stop recurring charges. Google Ads checks the same disclosures on your paywall.

Three more practices reduce refunds and disputes:

  1. don’t say “free” when the next step is a paid subscription,
  2. show the same plans and prices on the web and in the app,
  3. and make cancelling easy to find.

Offer upsells to raise LTV

Upsells and upgrades from real funnels

One-time upsell · Simple
Simple upsell: essential guides as a one-time payment, charged to the saved card
A one-time add-on, charged to the card already on file
Second subscription · Noom
Noom upsell: Premium on top of the plan, 7-day free trial, due today and later, terms and a consent checkbox
Premium on top of the plan, with a trial, its own terms and a consent checkbox
Partner products · Noom
Noom upsell: partner products, a smart scale and a metabolic health panel
Physical products from partners, added to the program
Upgrade · Simple
Simple upgrade: switch to a 3-month plan, price difference, total today, terms and a consent checkbox
A switch to a 3-month plan, with the new total, terms and consent
Tap a screen to enlarge it and scroll.

There are two kinds of offers, and they work differently at checkout:

  1. An upsell is something extra on top of the subscription: a PDF guide, extra content in the app, a coaching session, a physical product. A one-time upsell can be bought in one tap, since the card is already saved. If the upsell is a second subscription, show its terms and a checkout again.
  2. An upgrade replaces the plan someone just bought with a longer, pricier one, for example 1 month to 3 months. It changes the subscription, so it always needs its own terms and checkout. Frame it around the longer commitment and the better chance of reaching the goal. A discount alone rarely converts.

The people who take upgrades are the most motivated subscribers. Moving them to a longer plan can make the retention of the original plan look worse. Judge upgrades by the revenue of everyone who bought, across all plans.

Upsells convert best right after the purchase and can raise LTV by up to 30%. The global median upsell price is about $9.31 (State of Web2App 2026). People on longer plans accept pricier upsells: in the US, 3-month subscribers bring the highest average upsell value.

Section 8

Payments

Selling on the web means lower fees, faster payouts and control over prices and offers. It also means the work the store used to do becomes yours:

  • taking payments,
  • renewing subscriptions,
  • refunds and disputes,
  • and sales tax.

Choose who sells: a payment provider or a merchant of record

There are two ways to take payments on the web. A payment provider (PSP) processes payments for you, and you remain the seller. A merchant of record resells your product under its own name and takes on taxes, refunds and disputes:

Payment provider (PSP)Merchant of record
Who sellsYou. Your company name is on the customer’s statement.The provider resells your product under its name.
ExamplesStripe, PayPal, Adyen, BraintreePaddle, FastSpring, Stripe Managed Payments
Taxes, refunds, disputesYours to handleHandled by the provider
FeesLower, usually 2–5% per paymentHigher, since the provider takes on more work
Control over checkoutFullLimited to what the provider supports

Small teams often start with a merchant of record to skip the tax work. As volume grows and fees start to matter, they move to their own payment providers.

Sales tax on digital subscriptions depends on where the buyer lives: each US state has its own rules, and Europe and the UK charge VAT. A merchant of record handles it for you. With your own payment provider, you need a tax tool, such as Stripe Tax, and a process to file the returns.

Make Apple Pay the default

Apple Pay brings in most web2app payments worldwide, well ahead of cards and PayPal. Paying with Face ID is faster than typing a card number.

Web2app payments by method · worldwide

60%APPLE PAY
Apple Pay 60%Cards 20%PayPal 18%Google Pay 2%
Source: FunnelFox State of Web2App Report

Checkouts from real funnels

Reframe
Reframe checkout: renewal terms above the Apple Pay button, card form, secure payment line
Renewal terms right above Apple Pay, a trust line below
Kure
Kure checkout: order summary with discount and total, PayPal, Apple Pay and Google Pay, card form, renewal terms
Today’s price apart from the regular one, every method visible
Endel
Endel checkout: total due today $0.99 vs $12.99, Apple Pay first, other payment options, trial terms, guarantee
Today’s price vs the regular one, Apple Pay first
Dr. Kegel
Dr. Kegel checkout pop-up: PayPal or card, discount and total, a large Apple Pay button, card form
The discount and total, then a large Apple Pay button
Flo
Flo checkout: price today for a 30-day trial, remind me before trial ends, plans, terms and an Apple Pay button
Price today, a trial reminder and terms above Apple Pay
Tap a checkout to enlarge it and scroll.

Lead the checkout with Apple Pay:

  1. Select Apple Pay by default on iPhones, and make Apple’s official Apple Pay button the main one.
  2. Keep the other methods visible, so people who don’t use Apple Pay can pick a card or PayPal without searching.
  3. Show today’s price apart from the regular price, and put the renewal terms right above the button.
  4. Add trust signals: secure payment, encryption and the name that will appear on the bank statement.
  5. Test inside Instagram and TikTok. Their in-app browsers sometimes hide Apple Pay and Google Pay. If people only see a card form there, expect fewer purchases.

Where the checkout sits is worth testing too. The four common placements:

  1. a separate screen after the paywall
  2. a pop-up over the paywall
  3. built into the paywall itself
  4. an Apple Pay or Google Pay button right under the plans

Whichever you choose, build the checkout into your funnel. In FunnelFox’s experience, a provider’s default checkout, such as Stripe’s or Paddle’s standard payment page, converts up to 30% worse than a custom checkout built into the funnel. There are two reasons:

  • it looks different from the screens before it,
  • and it sends people to a separate page, which adds a step and a new web address some of them won’t come back from.

Expect some payments to fail

Some payments always fail. That’s normal, and it usually happens for one of these reasons:

  • the bank asks for an extra security check that the person doesn’t complete,
  • the bank declines the card,
  • the card has expired or has no money left,
  • Apple Pay or Google Pay doesn’t show up,
  • or a technical error happens between systems.

A failed payment isn’t always lost revenue. Retrying it at the right moments brings back up to 17.5% of failed subscriptions, and the first three attempts recover almost half of what can be recovered (State of Web2App 2026). Back the retries with:

  • an email asking for a new card,
  • and a few days of grace before access stops.

Add a second provider before you scale

A payment provider can freeze your account in a day, for example after a spike in disputes or a risk review. With one provider, your cash flow stops at once: you can’t take new payments, and the money already in the account is frozen, so you can’t withdraw it or reinvest it in user acquisition.

A second provider removes that risk. Payment orchestration tools connect several providers in one place. They send each payment to the provider most likely to approve it, retry declined payments through another one and keep renewals running if a provider drops out.

You don’t need this on day one. Most teams start with one provider, then add a second one before they scale spend.

Make refunds easy to avoid disputes

A refund happens when a customer asks you for their money back and you return it.
A dispute, or chargeback, happens when the customer asks their bank. The bank pulls the money back from you, usually adds a fee and asks for evidence if you want to contest it.

Card networks track the share of your payments that end in disputes. Above their limits, you face monitoring programs, fines and, eventually, a closed merchant account.

Most disputes come from people who don’t recognize the charge, forgot about the renewal or couldn’t find how to cancel. That makes them preventable:

  1. Use a clear statement descriptor, the name on the bank statement. It should match your app’s name, so people recognize it.
  2. Send a reminder before renewals, especially before the first full-price charge after an intro offer.
  3. Make cancelling and refunds easy to find. A refund you give costs you the payment. A dispute costs the payment, a fee and a mark on your record.
  4. Use dispute alerts. Services such as Ethoca and Verifi notify you when a customer contacts their bank, so you can refund before the dispute is filed.

Build your own cancel flow

Cancel flows from real web subscriptions

Blinkist
Blinkist: cancel your subscription in account settings
Cancel in the account settings
Blinkist: reasons for cancelling, one tap each
A reason in one tap
Blinkist: special discount, stay and get 50% off, or cancel subscription
50% off, with a cancel link below
Blinkist: subscription successfully cancelled
Confirmation
nibble
nibble: are you sure you want to cancel, yes or keep subscription
Confirm or keep
nibble: could you help us become better, provide feedback
Feedback
nibble: personal discount, only $14.99 a year, skip or continue with a discount
A discount, or skip
nibble: thank you for this journey, cancel subscription or keep my plan
Cancel or keep the plan
nibble: subscription canceled, access remains until the end of the period
Confirmation
Tap a screen to enlarge it.

On the web, you can set up your own cancel flow. Instead of losing a subscriber outright, you can offer an alternative:

  • a pause,
  • a cheaper plan or a downgrade,
  • a discount on the current plan,
  • a different plan length,
  • or free extra time.

This helps you keep churn under control. Show the alternatives on one screen together with the full cancellation, and make every button equally visible. People should be able to cancel as easily as they can accept an offer.

If someone still chooses to cancel, ask why in one tap: too expensive, not using it enough, not seeing the value. The answers help you plan your product and pricing, and choose the right offers for win-back emails.

Section 9

Access in the app

After paying on the web, people download the app. If the app doesn’t know they paid, they see the paywall again. That leads to a support ticket, a second purchase in the app or a dispute with their bank. This step has to work for every buyer.

Guide buyers into the app from the download page

The page after the purchase decides whether people make it into the app. It should:

  1. Confirm the purchase and what’s included.
  2. Give the next steps in order: download, open, log in.
  3. Show the right store button for the person’s phone, App Store or Google Play.
  4. Remind them which email their account is on.
  5. Offer help with a “Trouble logging in?” link to support.

Send the same instructions by email, since many people install later or on another device. And watch how many buyers never open the app. People who paid but never used the product are the ones most likely to ask for a refund or go to their bank.

Link the purchase to the person in the app

Pays on the web→Purchase saved to your subscription platform or backend→App recognizes the person→Paid plan available
The app needs two things: who the person is and what they paid for.
  1. Who the person is. The app needs an identifier that matches the purchase. It can be a user ID passed from the funnel through a link, the email from the funnel or a sign-in with Apple or Google. A full account isn’t required: every extra step in the funnel loses some people.
  2. What they paid for. The app needs to know which plan they bought and until when. The funnel sends each purchase to the place your app checks for access: a subscription platform such as Adapty, RevenueCat, Qonversion or Superwall, or your own backend. Renewals, cancellations and refunds have to update it too, so access ends when the payments do.

There are four ways to do this:

MethodHow it worksUpsideDownside
1. Automatic login by linkA deferred deep link carries the person through the store and the install, then opens the app on the right screen, already logged inNo password, no login screenNeeds setup through an attribution tool or your own backend, and can fail to trigger
2. Login link by emailThe app emails a one-time link that logs the person inNo password, works on any deviceAn extra step; a typo in the email means the link never arrives
3. Match by emailThe app asks for the email used in the funnel, usually with a code to confirm itSimple to buildPeople have to remember which email they used
4. Account created in the funnelPeople sign up with Apple, Google or a password in the funnel and use the same login in the appThe sturdiest link between web and appMost work to build, and one more step in the funnel

Most teams combine two: the automatic link as the main path and a login link or code by email as the fallback for anyone it doesn’t reach.

To make the hand-off from web to app work:

  • Pass the context, not just the login. The link can carry the plan, the goal from the quiz and the language, so the app opens on the right screen and skips the onboarding the person already finished on the web.
  • Keep personal data out of the link. Pass a short-lived, single-use token, and have the app exchange it for a session.
  • Plan a fallback. If the link doesn’t trigger, restore the person’s data from your backend on the first app launch.
  • Test on a fresh install, with no previous app data, before you launch.

Keep web and in-app subscriptions in one place

If your app keeps its in-app paywall, a person who already paid on the web can still see it and pay again in the app.

To prevent that, keep all subscriptions, from the web and from the store, in one place: your subscription platform or your own backend. The app checks that one place, so a web buyer sees their plan instead of the paywall.

Section 10

Tracking and analytics

Tracking does two jobs:

  1. it tells ad platforms who bought, so their algorithms find more buyers,
  2. and it shows you what happens at every step and what each group of customers pays over time, so you know what to fix and where to spend.

Send purchases back to ad platforms

Ad platforms find new buyers by learning from the ones you already have. So every purchase in your funnel has to be reported back to the platform that brought the buyer.

This usually starts with a pixel: a small piece of code on your funnel pages that sends events, such as a purchase, to Meta, TikTok or Google. Browsers and ad blockers stop some of these reports, so the best practice is to send the same events from your server too, through Meta’s Conversions API, TikTok’s Events API or Google’s enhanced conversions.

The main events to send:

PageViewSomeone opened the first page of the funnel
ViewContentThey tapped past the first screen
CompleteRegistrationThey left an email
InitiateCheckoutThey reached the paywall or checkout
SubscribeFirst purchase, with value and currency. The event to optimize for when your budget can feed it.
PurchaseEvery payment after that: renewals, upsells, trial conversions

Funnel platforms can send these events for you. If you build the funnel yourself, your developers set them up. Either way, check these details, or purchases get lost or double-counted in your reports:

  • Count each purchase once. When both the pixel and your server report the same purchase, give it the same ID in both. The platform then sees one purchase, not two.
  • Don’t lose the click ID. When someone taps an ad, the platform adds a code to the link: fbclid on Meta, ttclid on TikTok, gclid on Google. That code is how the platform knows the purchase came from its ad. It has to stay with the person on every screen of the funnel. If it gets lost, the purchase won’t show up in the platform’s reports.
  • Report every purchase, whatever the source. A buyer who came from TikTok or an email still helps Meta learn what a buyer looks like.
  • Label every ad link. Add UTM tags: short labels at the end of the link that tell your analytics which network, campaign and ad a visitor came from. Add the IDs too, since names change and IDs don’t.
  • Trust your own numbers first. Platforms also count purchases from people who only saw an ad and didn’t click, so their reports usually show more sales than your payment data. Compare the two.

Track where people drop off

Ad platforms see a few events. Your own analytics should see every step. Tools like Amplitude, Mixpanel, Google Analytics or PostHog work for this, as does an in-house dashboard if you have a data team. Send them these events:

Onboarding startedThe first screen of the funnel is shown
Screen completedSomeone answers a screen, with the screen ID and the answer
Email submittedThey left an email
Paywall viewedThe paywall is shown
Checkout viewedThe checkout is shown
PurchaseThe payment goes through, with the plan and the amount
Purchase failedThe payment fails, with the reason
App download clickThey tap the store button on the download page
App sign-inThey log in to the app for the first time
Renewal, cancellation, refundWhat happens to the subscription after the first payment

Save user properties

Events tell you what happened. User properties are details attached to each person. They tell you who did it and let you compare one group with another. Save these for everyone who enters the funnel:

  1. One user ID that’s the same on the web and in the app, so you can follow a person from the ad to their renewals.
  2. Email.
  3. Where they came from: UTM parameters plus the campaign, ad set and ad IDs.
  4. Their answer to each quiz screen, so you can see which answers lead to purchases.
  5. Demographics you collect: country, age, gender.
  6. Technical details: device, operating system, browser, language.
  7. A/B test variants they saw.

Check spend vs ROAS every day

This report compares what you spent on ads with the revenue those ads brought in, by channel, campaign and creative. It shows which ads pay off and which don’t, so you know where to add budget and what to turn off. If you check only one report every day, make it this one.

ROAS is usually read at fixed points. D7 ROAS is the revenue a group of customers brought in their first 7 days, divided by what it cost to acquire them. D14 and D30 work the same way.

Spend vs D7 ROAS · illustrative example

$0$200$400$600$8000%20%40%60%D7 not ready151015202530Day of the monthSpendD7 ROASDaily spendD7 ROAS
Ad angleSpendPurchasesCPAD7 ROAS
Angle 1$6,20079$7840%
Angle 2$4,82050$9635%
Angle 3$2,76025$11028%
Total$13,780154$8936%
Made-up numbers for one month of Meta spend. D7 ROAS for the last 7 days isn’t ready yet: those customers haven’t been around for 7 days. The dips after days 10 and 20 follow budget increases, while campaigns relearn.

Next to it, keep the in-between numbers that warn you early, such as cost per quiz start and cost per paywall view. They move days before purchases do.

Read this report on your own payment data. Platforms also credit themselves with purchases from people who only saw an ad, so their totals run higher than what reached your bank account.

TrendsDaily decisions
PeriodThe last 12 months, by month or weekThe last 30–60 days, by day
What it showsSpend against predicted ROAS, LTV against CAC, revenue before and after fees, renewal rate by monthly cohort, refund rateSpend, CPA, conversion at each funnel step, by campaign and creative
Who reads itFounders and leadershipWhoever runs the ads and the funnel

Revenue analytics built into funnel platforms show ARPU (average revenue per user), LTV and subscription health next to the funnel steps. That covers much of the trends view without a separate tool.

Track revenue by cohort

Group customers by the month they joined and follow what each group pays over time. Compare these cohorts by plan, channel and country to see which customers are worth paying more for.

Plan length changes the picture a lot. After 12 months, about 3% of people on weekly plans are still paying, against about 10% on monthly plans (State of Web2App 2026). Annual plans bring most of their revenue in the first month, while monthly and weekly plans build it up over time.

Plan ahead with a financial model

A financial model predicts what a decision will bring before you make it. If you spend this much at this CPA, it tells you:

  • how many customers you get,
  • what their cohorts will pay month by month,
  • and when you earn the spend back.

The model can be a spreadsheet with four blocks:

  1. spend per month,
  2. expected CPA,
  3. the revenue curve per customer from your cohorts,
  4. and the resulting payback month.

Next to it, keep a plan-versus-actual report. It compares each month with the model and projects where you’ll land by the end of the period. This report is also the main document for an internal business case.

Clean your data before you trust it

Three things distort funnel numbers more than any others:

  1. Clicks that never reach the page. If many ad clicks don’t turn into page views, the page loads too slowly, usually inside the in-app browser, or the ad promised something the page doesn’t show.
  2. Bots. Ad platforms send their own crawlers to check your pages, and other bots visit too. Filter them out of your analytics by user agent, the name a browser or bot reports about itself. Meta’s crawler, for example, calls itself facebookexternalhit. Unfiltered bots inflate visits and make conversion look worse.
  3. Double counting. A purchase reported by both the pixel and the server has to carry the same event ID, or it’s counted twice and ROAS looks better than it is.

Section 11

Experiments

Once the funnel runs and the reports work, growth becomes a loop:

  1. find the step where people leave,
  2. form an idea of why,
  3. test a change,
  4. and keep what earns more.

The order of tests matters as much as the ideas.

Check that the funnel works before you test

If a step is broken, the test result shows the broken step, and you learn nothing about your idea. Apple Pay might not show up in the TikTok browser, a button might not work on some phones, or purchases might not reach your analytics. Before your first experiment, and after every big change, check that:

  1. The funnel works in in-app browsers. Open it from Instagram, Facebook and TikTok on both an iPhone and an Android phone, and check that Apple Pay and Google Pay show up.
  2. People move the way you expect. Session recordings from a tool such as Hotjar show where they hesitate, tap the wrong thing or leave.
  3. A real purchase works end to end. Buy with a real card, open the app, check that the plan you paid for is available, then refund yourself.
  4. People come back after payment. If the payment happens on another page or domain, make sure they land back in the funnel.
  5. Every event fires once, with value and currency on purchases.

Test the steps before the paywall first

Users reaching each step · % of sessions

100% 
47.5%−52.5 pts
13%−34.5 pts
3%−10 pts
Session startedSecond screenPaywallPurchase
Source: FunnelFox State of Web2App Report

In most web2app funnels, the biggest drop happens before the paywall, and that’s where changes lift conversion the most. Each step multiplies the next, so a gain early in the funnel reaches every purchase after it.

To find the weak step, compare your funnel with these typical ranges for cold traffic in Tier 1 countries:

StepMetaTikTokBelow the range? Check
Ad → click (CTR)1.5–3%0.8–1.5%The hook isn’t landing
Click → page loads80–90%+70–85%Slow page or a broken link
Page → quiz start60–75%50–70%The first screen doesn’t continue the ad
Question 1 → question 220–40% drop25–45% dropThe first question is too personal, broad or dull
Quiz end → email70–85%60–80%The result doesn’t seem worth an email
Email → paywall95%+95%+A broken redirect or transition screen

Fix the first step that falls short before you judge the ones after it. Later steps can’t be read until earlier ones work. If people reach the paywall but few of them buy, check:

  • the price and the offer,
  • the trust signals on the paywall,
  • and which payment methods show up.

Test these blocks separately, roughly in this order:

  1. the first screen and the first question
  2. the story: the order of questions, feedback screens and proof
  3. the result and the personal plan
  4. where the email step sits
  5. the paywall: layout, plans, the default plan and trust signals
  6. pricing: prices, paid trial or intro offer, plan lengths
  7. the checkout: where it sits and which payment method comes first

Test whole messages. A change that carries one new idea across several screens, such as a new promise that runs from the first screen to the paywall, tells you more than a new word or button color.

Find test ideas in your own data

  1. Segments. Compare conversion by quiz answer, country, age and device. If one group buys far more than the rest, tune the creative, the funnel and the paywall toward it, or give it its own funnel.
  2. Interviews. Talk to recent buyers and to people who cancelled. Jobs-to-be-done interviews ask what was happening in someone’s life when they went looking for a solution, and they give you the words to use in ads and on screens.
  3. Usability tests. Watch five people go through the funnel after any big change. Confusing screens show up fast.
  4. Questions inside the funnel. One research question in the quiz, such as what people have tried before, collects answers from everyone who passes through.
  5. Competitors. Their live funnels show what they’re testing right now.

Change one thing per test

  1. Split traffic randomly between versions over the same period, so ad changes and seasonality hit both equally.
  2. Change one thing per test and keep the ads the same. Your best 3–5 creatives make a good control.
  3. Wait for 25–50 purchases per version before deciding. Below that, differences are mostly noise.
  4. Run two or three tests at a time at most, so each gets enough traffic.
  5. Judge by purchases and revenue per visitor. How many people reach the paywall says little on its own.
  6. Write down every test: the idea, the result and the decision, so the team doesn’t retest old ideas.

Most funnel platforms split traffic between versions for you.

Section 12

Launch checklist

Every step from this guide, in the order you’ll do it. Tick them off as you go.

Plan

  1. Set a budget: about $300–400 a day for a first Meta campaign, and expect ads to pay back in 3–6 months.
  2. Choose how to build the funnel: with an AI coding agent or on a funnel platform.
  3. Choose how to take payments: your own payment provider or a merchant of record.
  4. Make sure you can export customers and subscriptions if you switch tools.

Creatives

  1. Pull hooks and angles from your best organic videos.
  2. Prepare at least six angles with three variations each.

Funnel and paywall

  1. Repeat the ad’s promise on the first screen, and make the first question a single tap.
  2. Ask for the email before the result.
  3. End with a result screen built from the person’s answers.
  4. Show three plans with one selected by default, and start with a paid entry price.
  5. Show the price, billing period, renewal and how to cancel next to the pay button.
  6. Add an upsell after the purchase.
  7. Set up languages, currencies and regional prices for every market you sell in.

Payments

  1. Make Apple Pay the default and keep other payment methods visible.
  2. Set up retries for failed payments.
  3. Set a clear statement descriptor and send renewal reminders to prevent disputes.
  4. Handle sales tax through a merchant of record or a tax tool.
  5. Build a cancel flow with alternatives and the full cancellation on one screen.

App access

  1. Build a download page with clear steps into the app.
  2. Make sure the app recognizes buyers, with a login by email as a fallback.
  3. Keep the in-app paywall for people who install the app directly.
  4. Keep web and in-app subscriptions in one place, and check that status updates after every purchase, renewal and refund.

Tracking

  1. Send purchases to ad platforms from both the pixel and the server, with one ID per purchase.
  2. Keep click IDs through every screen, and add UTM tags to every ad link.
  3. Send funnel events and user properties to your analytics.
  4. Make a real test purchase in the Instagram and TikTok browsers on iPhone and Android.

Launch

  1. Start one Meta campaign optimized for purchases: broad targeting, one market, three ad sets by angle.
  2. Change nothing before 50 purchases, then change one thing at a time.
  3. Test new creatives in a separate campaign.

After launch

  1. Check spend vs ROAS every day.
  2. Fix the weakest funnel step first, then test the steps before the paywall, with 25–50 purchases per version.
  3. Add a second payment provider before you scale.
  4. Add TikTok and Google once Meta CPA is stable.
Sections
  1. 1. What web2app is
  2. 2. Web vs App Store
  3. 3. Paid acquisition
  4. 4. Web2app funnel structure and build options
  5. 5. Creatives
  6. 6. Onboarding
  7. 7. Pricing and the paywall
  8. 8. Payments
  9. 9. Access in the app
  10. 10. Tracking and analytics
  11. 11. Experiments
  12. 12. Launch checklist
↑