🔔 Notification Bad-Timing Detector

Should you send that push notification right now? This model predicts the probability that the current moment is a bad time to interrupt the user, based on their activity patterns, battery status, and notification interaction history.

Built with LightGBM + isotonic calibration • Trained on 100K samples • ModelDataset

⚡ Quick presets — try a scenario

⏰ Time Context

0 23
Day of week

🔋 Battery Status

0 100
-5 5

📱 User Activity

0 1800
0 30
0 3600
0 14400

🔔 Notification History

0 20
0 20
0 20
0 20
0 100
0 1
0 10

📊 Decision Thresholds

Probability Action
< 30% ✅ Send notification
30–50% ⚠️ Only if important
50–80% 🚫 Delay notification
> 80% 🔴 Definitely delay

🧠 How it works

The model uses 21 signals across 4 categories:

  • Time: hour, day, weekend/night flags
  • Battery: level, charging, drain rate
  • Activity: screen, app opens, session length
  • Notifications: recent shown/clicked/dismissed/ignored, 7-day CTR

Built on research from the C-3PO paper (Cheetah Mobile, 600M monthly active users).