Skip to main content
bthebigclass
All help topics

For creators

Engagement — who's about to churn, who's your champion

Every enrolled student × course gets a lifecycle stage chip — Champion, Active, Onboarding, Cooling, At risk, Churned — derived from the signals you already track. The table at /dashboard/students/engagement leads with the rows that need attention.

Last updated May 22, 2026

The six stages

Most-concerning first — the table sorts that way too, so the rows that need a nudge sit at the top instead of being buried under a wall of 'Active'.

  • Churned — no activity for 30+ days. Often a write-off; you decide whether to attempt reactivation or move on.
  • At risk — last activity 15 to 29 days ago. This is where one outreach saves the enrollment.
  • Cooling — last activity 7 to 14 days ago. A nudge usually pulls them back.
  • Onboarding — enrolled less than 7 days ago, regardless of activity. Don't flag them as cooling before they've had a chance.
  • Active — any signal in the last 7 days. Keep them in flow.
  • Champion — top 10% by points AND active. Your evangelist material.

What counts as 'activity'

Last-active is computed across every signal we already track per student: attendance records, quiz attempts (started or completed), assignment submissions, doubts posted, and lesson-completion timestamps from their enrollment. Whichever is most recent wins.

Bulk nudges

Filter to a stage (e.g. 'At risk'), select the students you want to reach, and use the bulk-action bar to send either a 'Quick check-in' or a 'We miss you in class' come-back. Each fires through the existing notification pipeline — in-app, email, and WhatsApp, channel-respecting (a student who's opted out of WhatsApp won't get a WhatsApp ping).

Per-course view

Open any course → Students tab to see the same lifecycle chips scoped to just that course's enrolled population. Useful when a cohort is misbehaving but the rest of the workspace is fine.

This is a read-model — no new persistence. We compute the stage on every render from the data already in your store. Means a student's stage flips the instant they take an action, and unenrolling them removes their row entirely with no cleanup step on your side.

Related