Building Nix: ML-Powered Notification Prioritization
How we trained a model to understand notification context and urgency.
The Challenge
The average smartphone user receives 80+ notifications per day. Most are irrelevant noise, but buried within are genuinely important messages. The challenge: how do you separate signal from noise without requiring manual configuration for every app and sender?
Traditional solutions rely on static rules or simple heuristics. But notification importance is deeply contextual. A message from your manager at 9 AM during work hours is different from the same message at 11 PM. A notification from a group chat you actively participate in is different from one you've muted mentally.
Our Approach
We built an on-device ML model that learns from your behavior patterns to predict notification importance. Here's how it works:
Feature Engineering
We extract features from multiple dimensions:
Model Architecture
We use a lightweight transformer-based model optimized for on-device inference. The model is small enough to run in real-time (< 50ms inference) while maintaining high accuracy.
Key architectural decisions:
Privacy-First Design
All inference happens on-device. We never see your notifications. The model is pre-trained on anonymized, aggregated patterns and fine-tunes locally based on your behavior.
Results
In internal testing with 50 beta users over 4 weeks:
What's Next
We're continuing to improve the model with:
The goal remains the same: you should see what matters, when it matters, and nothing else.