Reading Subscription Metrics from RevenueCat
RevenueCat tells your backend about every trial, purchase, renewal and cancellation. The raw events are easy to misread. Here is what each one means and how to read them together.
How the numbers get to you
RevenueCat can send each subscription event to a web address you give it, called a webhook. Every event says what happened (a purchase, a renewal, a cancellation), for which product, in which store, and at what price. Add the address and a shared secret in RevenueCat, and the events arrive as they happen.
MetricNudge uses exactly that: you paste its webhook address into RevenueCat, set the environment to production and events to all, and add the authorization value you chose. One MetricNudge app per store app, each with its own webhook.
The events that matter
- Initial purchase: the first time someone buys or starts a trial. If the period type says trial, it is a trial start; otherwise it is a paid first purchase.
- Renewal: the subscription renewed. A renewal flagged as a trial conversion is the moment a trial turned into a paid subscription.
- Cancellation: the person turned off auto-renew, or was refunded. The reason field tells you which.
- Billing issue and expiration: a payment failed, or the subscription ended.
Trials and trial-to-paid
Count trial starts, then count how many of those became paid renewals flagged as trial conversions. Divide the second by the first, but only for trials that have had time to end: a seven-day trial that started three days ago has not converted yet, so including it makes the rate look worse than it is.
A low rate with lots of starts usually means the trial attracts people who will not pay, or the value arrives too late in the trial. Compare it with the paywall funnel.
Renewals and churn
Look at renewals as a share of subscriptions that were due. A drop after the first renewal is common, because that is when people decide whether the app was worth keeping. Track the first renewal separately from later ones.
Refunds
A refund shows up as a cancellation whose reason is customer support. A cluster of refunds after a release is an early warning that something broke. Read the refund count next to your low-star reviews.
Gross, tax and what you keep
The price on an event is what the customer paid. What you keep is lower: the store takes a commission and, in many countries, tax is included in the price. RevenueCat reports tax and commission as fractions of the price where it can, so net revenue is the price minus those. When that detail is missing, a calculation has to estimate it, which is why two tools can show slightly different revenue for the same month. Decide which number you care about (gross or net) and stay with it.
Common traps
- Restored purchases can arrive as a new purchase for a new anonymous user. They are an existing subscription, not a new sale.
- Sandbox events are test purchases. Make sure the webhook is set to production so they do not pollute the numbers.
- Two store apps in one RevenueCat project mix iOS and Android unless the webhook is scoped to one.
- Counting trials as revenue. A trial start is zero-price and is not a sale.
Doing it with MetricNudge
MetricNudge turns these events into revenue, active trials, trial conversion, renewals and refunds on the Overview, treats trial starts as not sales, ignores restored purchases, and joins them with the in-app events that came before the purchase. You do not need RevenueCat to start: analytics, keywords and the plan work without it, and you add it when you want the revenue side.
Try it on your own app
MetricNudge tracks your keyword rankings in every storefront, shows your app's analytics, and writes a plain-words plan of what to do next. The free plan needs no card.