Chart · Subscriptions

Active subscriptions movement: new, resubscribed and churned

Active subscriptions movement shows how your count of paying subscriptions changed in each period: new subscriptions plus resubscriptions, minus churned ones. RevenueDot nets out billing recoveries and does not count a paid-to-paid product change as either, so the total equals the change in active subscriptions.

Formula

Movement = new actives + resubscription actives − churned actives

Shape

What happened during each period

API name

actives_movement

Measures

New Actives (Count), Resubscription Actives (Count), Churned Actives (Count)

Filter and segment by

App, Store, Product, Product duration, Offering, Country, Platform, App version

The Active Subscriptions Movement chart in the RevenueDot dashboard, with demo data, its chart rail, plot and table
Captured from the RevenueDot dashboard with demo data.

Definition

How RevenueDot calculates Active Subscriptions Movement

The chart has three plotted measures and one total. New Actives counts subscriptions that became paid, other than resubscriptions and paid-to-paid product changes. A free trial counts on the day it converts to paid. Resubscription Actives counts paid subscriptions started by customers whose earlier subscription had ended. Churned Actives counts paid subscriptions that lost access, on the day the access ended, as a negative number. Movement is the sum, and it is in the table and the API.

Churned Actives is net of billing recoveries. If a renewal fails, access lapses, and the store later recovers the payment, the recovery cancels the churn it caused. A paid-to-paid product change, such as monthly to annual, counts in none of the three measures, because the customer was active before and after.

Everything is counted on the date it happened and in UTC. Sandbox purchases, granted access and Family Sharing purchases are excluded. Filter or segment by app, store, product, product duration, offering, country, platform and app version. Day is the default resolution, with week, month, quarter and year available.

Find it in the dashboard under Analytics > Charts, or call GET /v2/projects/{project_id}/charts/actives_movement. The response has the same shape as RevenueCat's Charts API.

Worked example

Active Subscriptions Movement, step by step

Illustrative numbers for one week, starting with 2,000 active subscriptions.

MeasureCount
New actives (60 of them trial conversions)+150
Resubscription actives+20
Churned actives−110

Movement = 150 + 20 − 110 = +60, so the week ends with 2,060 active subscriptions. A customer who switched from monthly to annual is in none of the three rows.

Why it matters

What Active Subscriptions Movement tells you

Active Subscriptions shows the total. This chart shows what moved it. A flat total can hide a launch that brought in many new subscribers while an old cohort expired, and the bars show that at once.

Use it to tell acquisition problems from retention problems. If new actives fall, look at your paywall, trial and traffic. If churned actives rise, look at renewals, billing issues and cancellation reasons. If resubscriptions rise after a campaign, win-back is working.

How to read it

  • Churned Actives is negative and plots below zero. The movement total is what is left after both sides.
  • A subscription churns when access ends, not when the customer cancels, so a cancellation wave shows up one billing period later.
  • A returning customer is a resubscription. They are not counted as new, even if they never used the app again in between.
  • Compare week to week at week resolution. Daily bars are noisy for small apps.
  • For the split of new subscriptions by trial, direct purchase and product change, read the Paid Subscriptions chart.

API

Get Active Subscriptions Movement from the Charts API

Same path and response shape as RevenueCat's Charts API, so existing scripts keep working.

Requestshell
curl "https://api.revenuedot.app/v2/projects/$PROJECT_ID/charts/actives_movement?resolution=day" \
  -H "Authorization: Bearer $SECRET_KEY"   # sk_... with charts_metrics:charts:read

Reference: Charts guide · REST API v2

FAQ

Active Subscriptions Movement: questions people ask

What is the difference between new and resubscription actives?

New actives are subscriptions that became paid for the first time, including trial conversions. Resubscription actives are paid subscriptions started by customers whose earlier subscription had ended.

How do I calculate net new subscribers?

Add new actives and resubscription actives, then subtract churned actives. RevenueDot shows that sum as the Movement measure, and it equals the change in the active subscription count.

Does a plan change count as churn?

No. A paid-to-paid product change counts in neither new nor churned actives, because the customer stayed subscribed.

When does a subscription count as churned?

When it loses access: when its paid time runs out, a grace period ends, or a refund is recorded. Turning off auto-renew alone does not churn it.

What is a billing recovery?

A renewal that failed, lapsed access, and then succeeded after the store retried the charge. RevenueDot treats it as the same subscription and cancels the churn it caused.

Get started

See your Active Subscriptions Movement in minutes.

Connect your app to RevenueDot Cloud, free up to $10,000 a month in tracked revenue, and all 43 charts fill from your store history after import.

Already have an account? Sign in · Prefer your own servers? Self-host free