WMA Hub

Sample datasets

Mobile Subscribers and Churn (synthetic)

About 3,500 invented mobile customers with monthly usage, billing, support tickets and churn over two years.

Telecom · Intermediate · Synthetic data: invented, describes no real person, customer or company.

Business scenario

NovaMobile is an invented mobile operator with consumer, small-business and enterprise customers across eight regions. Management is worried about churn and wants to know which plans, channels and customer experiences predict customers leaving, and what that costs in monthly revenue.

The data contains no names, phone numbers or addresses. Usage, billing and tickets are generated from a seeded script, with churn made more likely for month-to-month plans, heavy support users and some channels, so there are real patterns to find.

Questions to answer with a dashboard

  1. What is monthly churn rate by plan, segment and acquisition channel?
  2. How much revenue (ARPU and total billed) do we lose each month to churn?
  3. Do customers who contact support more often leave sooner?
  4. Which plans generate the most overage charges, and could a plan change reduce churn?
  5. How does customer satisfaction relate to resolution time by ticket category?

Tables, columns and data dictionary

dim_date

One row per calendar day. Mark it as the date table in Power BI and relate every fact table to date_key.

  • date_key (integer): Day as a number, yyyymmdd (for example 20240229)
  • date (date): Calendar date
  • year (integer): Calendar year
  • quarter (integer): Calendar quarter, 1 to 4
  • month (integer): Month number, 1 to 12
  • month_name (text): Month name in English
  • day (integer): Day of the month
  • day_name (text): Weekday name in English
  • is_weekend (boolean): True for Saturday and Sunday

dim_region

Sales regions.

  • region_id (integer): Unique region key
  • region_name (text): Region name

dim_plan

Tariff plans customers can be on.

  • plan_id (integer): Unique plan key
  • plan_name (text): Plan name
  • monthly_fee (decimal): Monthly fee in US dollars
  • data_allowance_gb (integer): Included data in GB; empty means unlimited
  • voice_allowance_min (integer): Included voice minutes; empty means unlimited
  • contract_months (integer): Minimum contract length; 0 means no contract
  • target_segment (text): Customer segment the plan is designed for

dim_customer

One row per customer. Contains no names or contact details.

  • customer_id (integer): Unique customer key
  • region_id (integer): Home region
  • plan_id (integer): Plan the customer is on (or was on when they left)
  • segment (text): Consumer, Small business or Enterprise
  • age_band (text): Age band (empty for business customers)
  • acquisition_channel (text): Retail, Online, Partner or Telesales
  • signup_date (date): Date the customer joined
  • status (text): Active or Churned
  • churn_date (date): Date the customer left; empty if still active
  • churn_reason (text): Main reason for leaving; empty if still active

fact_monthly_usage

One row per customer per month while the customer was active in 2023-2024.

  • usage_id (integer): Unique row key
  • customer_id (integer): Customer
  • date_key (integer): First day of the billing month
  • voice_minutes (integer): Minutes of calls
  • data_gb (decimal): Data used in GB
  • sms_count (integer): Text messages sent
  • plan_fee (decimal): Plan fee billed
  • overage_amount (decimal): Charges above the plan allowance
  • billed_amount (decimal): Plan fee plus overage
  • support_calls (integer): Calls to customer support in the month

fact_support_ticket

One row per customer support ticket.

  • ticket_id (integer): Unique ticket key
  • customer_id (integer): Customer who raised it
  • date_key (integer): Date opened
  • category (text): Billing, Network, Device, Plan change or Other
  • priority (text): Low, Medium or High
  • resolution_hours (decimal): Hours until resolved
  • satisfaction (integer): Survey score 1 to 5; empty when the customer did not answer

License and usage terms

Free to use (synthetic data)

You may use this synthetic data for learning, practice, demos, training material and portfolio projects, including in published reports. You may not resell the files themselves or present them as real data. The data is invented: it does not describe any real person, customer or company.