Paywall and subscription analytics without user IDs
Track paywall views, trial starts and purchases as plain events. Respectlytics shows which screens lead to the paywall, where sessions drop before buying and how each step converts. Revenue and renewals stay in the store reports.
14-day free trial, no credit card. The demo runs on sample data, no signup.
The events
Send each one at the moment on its right. The names are a suggestion; keep whatever pattern you already use.
paywall_viewed
The paywall appears on screen
paywall_dismissed
The user closes the paywall without buying
trial_started
The store confirms a free trial has started
purchase_completed
The store confirms a purchase
purchase_cancelled
The user closes the store's payment sheet
restore_completed
Restoring earlier purchases succeeds
The calls, per platform
One line per event. Configure the SDK once at launch, as each install guide shows.
Respectlytics.track("paywall_viewed")
Respectlytics.track("paywall_dismissed")
Respectlytics.track("trial_started")
Respectlytics.track("purchase_completed")
Respectlytics.track("purchase_cancelled")
Respectlytics.track("restore_completed")
Respectlytics.track("paywall_viewed")
Respectlytics.track("paywall_dismissed")
Respectlytics.track("trial_started")
Respectlytics.track("purchase_completed")
Respectlytics.track("purchase_cancelled")
Respectlytics.track("restore_completed")
await Respectlytics.track('paywall_viewed');
await Respectlytics.track('paywall_dismissed');
await Respectlytics.track('trial_started');
await Respectlytics.track('purchase_completed');
await Respectlytics.track('purchase_cancelled');
await Respectlytics.track('restore_completed');
Respectlytics.track('paywall_viewed');
Respectlytics.track('paywall_dismissed');
Respectlytics.track('trial_started');
Respectlytics.track('purchase_completed');
Respectlytics.track('purchase_cancelled');
Respectlytics.track('restore_completed');
The questions these events answer
Choose purchase_completed as a conversion event, and these appear in the dashboard.
- How often does the paywall sell?
- The share of sessions with paywall_viewed that also reach purchase_completed, by day, platform and country.
- What leads people to buy?
- The most common sequences of events in sessions that ended in a purchase.
- Where do they hesitate?
- The time from paywall_viewed to purchase_completed, and how many sessions stop at purchase_cancelled.
- Which features go with buying?
- The events that sessions with a purchase did more often than sessions without one.
What stays in the store reports
Some subscription numbers live outside your app, and that is where to read them.
Renewals, cancellations, refunds and revenue happen in the App Store and Google Play, usually while your app is closed. Read them in App Store Connect, Google Play Console or your subscription backend.
Respectlytics also cannot follow one person from a trial to their first payment days later, because it never links sessions. For lifetime value and churn from store numbers, use the LTV calculator and the churn rate calculator.
Questions buyers ask
Straight answers, including the ones that might send you elsewhere.
Can I track the price or the plan?
Not as a property. If the plan matters, use one event per plan, such as purchase_annual and purchase_monthly. Prices and revenue belong in App Store Connect, Google Play Console or your subscription backend.
Can I measure trial to paid conversion?
Not per user, because a trial and its first payment happen days apart in different sessions. Compare trials started in a period with paid conversions the store reports for the same period.
Why not track renewals and cancellations?
They happen in the store, usually while your app is closed, so the app never sees them. Read them from the store reports or your subscription backend.
Other event plans
The same approach for other parts of your app.
Try it on your own app
14-day free trial, no credit card. Unlimited apps on every plan.