Theme

Start for free

Extensions, plugins and apps

For mobile apps with a web checkout: which campaigns and funnel steps bring subscribers.

A mobile app with a web checkout sells its subscription on a web page, often at the end of a short quiz funnel, then sends the buyer to download the app and sign in. Tally reads those web payments and the visits before them, so you can see which creators, campaigns and funnel steps bring subscribers who renew.

Start for free

14 days free, no card needed.

01How they sell

  • SubscriptionWeekly, monthly or yearly plans sold on the web, often with an intro offer; a yearly plan's renewal arrives a year later with the first payment's source.
  • One-offLifetime access sold on the web for buyers who won't take another subscription.

02Payments it reads

  • StripeCheckout at the end of the web funnel, including tools that bill through your own Stripe account; renewals, refunds and chargebacks are read.
  • PaddleMerchant of record for web subscriptions sold worldwide; transactions, renewals and adjustments are read.

What Tally can't read

  • In-app purchases through the App Store or Google Play aren't read; only checkouts on the web are.
  • Installs and what subscribers do inside the app aren't counted; the snippet runs on web pages only.
  • Ad accounts aren't connected, so neither ad spend nor ROAS is read; campaign rows show revenue from tagged visits only.

03Where buyers come from

  • Creators on TikTokCreator videos link to the funnel from a bio link that opens in TikTok's in-app browser; Readable Direct names it when the referrer is missing.
  • Paid social campaignsCampaigns pointed at the quiz carry UTMs, so each campaign's subscribers and revenue show beside its visits.
  • SearchPeople searching for the problem the app solves land on articles that lead into the funnel.
  • Inside the appFree users tapping an upgrade link in the app open the web checkout; a UTM tells them apart from new visitors.

04What Tally answers

  1. Where do people drop out of the web funnel?

    Send a goal at each quiz step and put them in a funnel; the goals view shows how many reach each step and the revenue of the visitors who finished.

    Goals and funnels
  2. Which campaign brings subscribers, not just quiz completions?

    The campaign breakdown carries revenue on every row, so a campaign with plenty of quiz takers and few payments shows it plainly.

    Sources with revenue
  3. Do intro-offer subscribers renew at full price?

    Lifetime value by first source counts renewals after the intro period, so channels whose subscribers leave at the first full charge stand out.

    Lifetime value
  4. Why do creator links show up as Direct?

    In-app browsers often drop the referrer. Readable Direct reads those visits as Instagram's or TikTok's in-app browser, apart from typed visits and shared links.

    Readable Direct
  5. Where do people hesitate on the paywall page?

    Session replay, off until you turn it on and with inputs masked, plays back visits to the paywall, so you can see where people scroll, stop and leave.

    Session replay

05Numbers worth watching

Renewals
Renewals by first source after the intro offer ends, the number that decides whether a campaign paid off.
Goal conversion
The share of visitors who reach each funnel step, by source, which shows where a campaign's traffic gives up.
Refunds and chargebacks
Refunds and chargebacks by source, which catch a campaign whose promise doesn't match the app.
Revenue per visitor
Revenue per funnel visitor for each campaign, the revenue half of judging it.

06An example

Example

Path to purchase

Last 30 days · 105 of 124 new sales, the ones linked to a visitor

Median time to buy

3days

from their first visit

Median visits

3visits

the one they paid in included

Bought on the first visit

12%

13 of 105

Pages before buying

11

median pages viewed

Where buyers came from, and who closed the sale

105 new sales: where each buyer first came from, and the source credited with the sale.

50% of new sales were credited to the source that first brought the buyer in. Hover or focus a flow for its numbers.

  1. Googlecredited toGoogle26
  2. x.comcredited tox.com10
  3. Other (3 sources)credited toOther (3 sources)10
  4. Directcredited toOther (3 sources)9
  5. ChatGPTcredited toChatGPT9
  6. Other (3 sources)credited toNewsletter9
  7. Redditcredited toReddit8
  8. Googlecredited toNewsletter6

6 smaller flows in the table below.

Show the flows as a table
105 new sales: where each buyer first came from, and the source credited with the sale.
Brought them inCredited with the saleNew salesShare
GoogleGoogle2625%
x.comx.com1010%
Other (3 sources)Other (3 sources)1010%
DirectOther (3 sources)99%
ChatGPTChatGPT99%
Other (3 sources)Newsletter99%
RedditReddit88%
GoogleNewsletter66%
DirectGoogle55%
x.comGoogle55%
RedditGoogle33%
DirectReddit22%
ChatGPTGoogle22%
Other (3 sources)ChatGPT1<1%

Time from first visit to purchase

  1. 13Same visit: 13 sales (12%), bought in their first visit
  2. 13Same day: 13 sales (12%), a later visit, under 24 hours after the first
  3. 301–3 days: 30 sales (29%), 1 to 3 days after the first visit
  4. 194–7 days: 19 sales (18%), 4 to 7 days after the first visit
  5. 151–2 weeks: 15 sales (14%), 8 to 14 days after the first visit
  6. 102–4 weeks: 10 sales (10%), 15 to 28 days after the first visit
  7. 51–3 months: 5 sales (5%), 29 to 90 days after the first visit
  8. 03+ months: 0 sales (0%), 91 days or more after the first visit

Pages buyers saw before paying

Share of the 105 buyers who viewed each page before paying

  1. /pricing96%, 101 of 105 buyers
  2. /71%, 75 of 105 buyers
  3. /signup63%, 67 of 105 buyers
  4. /docs38%, 40 of 105 buyers
  5. /blog/stripe-fees26%, 28 of 105 buyers
  6. /compare21%, 23 of 105 buyers
  7. /changelog8%, 9 of 105 buyers
  8. /blog/launch-week5%, 6 of 105 buyers

Only new sales count here. Renewals and upgrades belong to the visit that won the subscription, so counting them would count that journey again.

Fig. 1Path to purchase on the example site. For a web-to-app funnel, look first at the share who buy on their first visit; a quiz funnel is built to sell in one sitting.

07Setting up

  1. StripeCreate the funnel's Checkout Session with tally_visitor_id in metadata and subscription_data, so renewals and refunds keep the campaign.
  2. React and ViteA funnel built as a React app with Vite takes the tag in index.html, and each quiz screen counts as a pageview.
  3. Send tally('quiz_step', { step }) on each screen, so the funnel can be built from the steps people reach.

08Questions

  • Can Tally read subscriptions bought through Apple's or Google's billing?

    No. Those are paid to the platforms and reported by them. Tally reads subscriptions sold on your web checkout through Stripe, Paddle, Lemon Squeezy or Polar.

  • Does Tally know which subscribers installed the app?

    No. Installs happen in the stores. Tally sees the web visit and the payment; whether the buyer then signs in on a phone is in your own data.

  • Are refunds on the web checkout counted?

    Yes. Each refund is tied to the payment it reverses and to that payment's campaign, so a campaign's revenue falls with it.