Shape
A series by cohort date; recent cohorts are still maturing
Chart · Trials
Trial cancellation rate is the share of customers who started a free trial in a period and whose trial ended without converting after they turned auto-renew off within a set time. The other non-converting trials ended with a billing issue or simply ran out. You pick the timeframe: 1, 2, 5 or 7 days, or unbounded.
Formula
Trial cancellation rate = trials that ended unconverted after an opt-out within the timeframe / customers who started a trial
Shape
A series by cohort date; recent cohorts are still maturing
API name
trial_cancellation
Measures
Trial Cancellation Rate (Percent)
Filter and segment by
App, Store, Product, Product duration, Offering, Country, Platform, App version
Definition
Customers are grouped by trial start, and each customer counts once. For a trial that has ended without a paid period, RevenueDot looks at the cancellation and uncancellation events during the trial. If the last opt-out was not undone and fell within the selected time from the start, it is a cancellation. The selector cancellation_timeframe defaults to 7 days.
The other trials that ended unconverted are split into two: billing failures, where a billing issue was reported during the trial, and elapsed, where there was no opt-out and no billing issue. Trials still running are in the denominator but in none of the three groups, so recent points are marked incomplete.
You can filter and segment by app, store, product, product duration, offering, country, platform and app version. Sandbox trials are excluded. You can open it in the dashboard under Charts or fetch it with GET /v2/projects/{project_id}/charts/trial_cancellation. The response has the same shape as RevenueCat's Charts API, so scripts written for that API keep working. The secret key needs the charts_metrics:charts:read permission. The Charts guide lists every parameter.
Worked example
A week with 100 customers who started a trial, read at the 7 day timeframe after every trial has ended.
| Outcome | Customers |
|---|---|
| Converted to paid | 42 |
| Cancelled within 7 days | 38 |
| Billing failure | 5 |
| Elapsed without an opt-out | 15 |
Trial cancellation rate is 38 / 100 = 38.0%.
Why it matters
How early customers cancel tells you what to fix. Cancelling on day 1 means the customer saw the product and the price and said no, so the paywall expectation or onboarding is wrong. Cancelling on the last day suggests the customer wanted to try and forgot, or did not see enough value in the full trial.
Elapsed trials are customers who never opted out and still did not pay. They point at the first charge: a card on file that failed, or a customer who lost access to the account. Billing failures are the fixable part and a reminder email or an updated payment prompt can recover them.
API
Same path and response shape as RevenueCat's Charts API, so existing scripts keep working.
curl "https://api.revenuedot.app/v2/projects/$PROJECT_ID/charts/trial_cancellation?resolution=day" \
-H "Authorization: Bearer $SECRET_KEY" # sk_... with charts_metrics:charts:read Reference: Charts guide · REST API v2
FAQ
It is the share of trial starters whose trial ended without paying after they turned auto-renew off. RevenueDot divides those trials by all customers who started a trial in the period.
Change the cancellation timeframe between 1, 2, 5 and 7 days. The gap between the values shows how many cancelled early or late.
The opt-out is treated as undone, so the trial is not a cancellation unless they turn it off again.
A trial that ended without converting, without an opt-out and without a billing issue.
Get started
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