Send streak reminders in the learner's local timezone
- Target scope
- Notifications·Product area
- Effort
- Small
Prompt
Schedule the daily streak reminder using each learner's device timezone instead of server time. Store the timezone on the profile at app open, compute the send time locally per learner, and skip the reminder if the lesson is already done that day.
Context
All reminders currently fire at 18:00 UTC, so learners in Asia get them after midnight and lose streaks they thought were safe. Support sees a steady stream of streak-loss complaints from these regions.
Constraints
- Reuse the existing push pipeline, no new delivery service
- Fall back to the account's signup timezone when the device value is missing
- One reminder per learner per day, even across timezone changes
Acceptance criteria
- A learner in Tokyo and one in Lisbon both get the reminder at 18:00 local time
- No reminder is sent once the day's lesson is complete
- Travelling across timezones never produces a duplicate reminder
From the Jul 7 engineering standup