Statistics Quest

Streaming subscriptions and churn

2 000 customers who signed up during 2023 for a fictional streaming service, Majlis Stream, followed until 31 December 2024. Each row is one customer: signup month (cohort), plan, billing cycle, monthly fee, support tickets raised, months of tenure and whether they cancelled (churned) before the end of follow-up. Built for retention-by-cohort tables, churn rates, logistic regression and a first look at censoring.

Rows
2,000
Columns
8
One row is
one customer
Version
v1

Data dictionary

ColumnTypeUnitSummaryDescription
customer_id
Customer
idCustomer identifier.
signup_month
Signup month
dateFirst day of the signup month (the customer's cohort).
plan
Plan
ordinal3 levels: Basic, Standard, PremiumSubscription plan.
billing
Billing cycle
category2 levels: Monthly, AnnualMonthly or annual (prepaid) billing.
monthly_fee_sar
Monthly fee
numberSARmean 50.77, median 50.15, SD 25.02, range 24.65–99Effective monthly fee (annual plans include a 15% discount).
support_tickets
Support tickets
integerticketsmean 3.8, median 3, SD 3.843, range 0–27Support tickets raised during the customer's tenure.
tenure_months
Tenure
integermonthsmean 13.83, median 15, SD 6.581, range 1–24Months from signup to cancellation, or to 31 Dec 2024 if still active.
churned
Churned
integermean 0.4555, median 0, SD 0.4981, range 0–11 if the customer cancelled before 31 Dec 2024, else 0 (still active = censored).

What it is good for

  • Build a cohort retention table and compare churn by plan and billing cycle.
  • Fit a logistic regression for churn and interpret odds ratios.
  • Explain why tenure for active customers is censored and why early cohorts have had more time to churn.
  • Normalise support tickets by tenure before comparing customers.

Methods: proportions, cohort analysis, chi-square test, logistic regression, Kaplan–Meier (introduction), rates per exposure.

Data quality notes

  • Censoring: customers with churned = 0 are still active, and their tenure is only a lower bound on their lifetime.
  • Earlier cohorts were followed longer, so raw churn proportions are not comparable across cohorts without accounting for time.
  • support_tickets grows with tenure; use tickets per month for comparisons.
  • No missing values.

Provenance and licence

Signup month uniform over 2023 with a January and September bump. Plan: Basic 45%, Standard 38%, Premium 17%; annual billing 25% (15% fee discount). Each customer has a latent support-need rate (gamma, mean 0.3 tickets/month). Each month the customer cancels with probability = plan base hazard (Basic 5%, Standard 3.5%, Premium 2.5%) × 0.4 if annual × exp(1.5·(support rate − 0.3)), and is otherwise retained until 31 Dec 2024. Tickets ~ Poisson(rate × months active).

Synthetic data · CC0-1.0 (synthetic data generated by Statistics Quest) · generated deterministically (seed 20241023). It does not describe real people or organisations; any resemblance is coincidental.

Preview

Dataset

Streaming subscriptions and churn

2,000 rows · one row = one customer · synthetic data

CustomerSignup monthPlanBilling cycleMonthly fee (SAR)Support tickets (tickets)Tenure (months)Churned
C00012023-01-01StandardMonthly59271
C00022023-01-01PremiumMonthly990111
C00032023-01-01BasicMonthly29121
C00042023-01-01BasicMonthly291171
C00052023-01-01StandardMonthly592111
C00062023-01-01StandardAnnual50.158240
C00072023-01-01BasicAnnual24.651240
C00082023-01-01BasicAnnual24.65351
C00092023-01-01PremiumAnnual84.15071
C00102023-01-01StandardMonthly5912240
C00112023-01-01BasicMonthly29171
C00122023-01-01StandardMonthly59871

Used in