Push notifications are simultaneously the primary retention tool for mobile apps and the second biggest cause of uninstalls (28% of users cite notification fatigue when they delete an app).
The difference between the two outcomes is frequency, timing, and content. Not the notifications themselves.
The frequency rules
How much is too much varies by category:
- Utility / productivity: 1-3 per week. Users treat notifications as interruptions.
- Most B2C apps (fitness, media, e-commerce): 2-5 per week. The sweet spot.
- Social / messaging: Daily is fine. Users expect it.
- Gaming (hardcore): Daily during active engagement periods, backed off when the user drifts.
The universal rule: track opt-out rates by push. If a specific notification type drives opt-outs above 2%, stop sending it. Users are voting.
The timing rules
When you send matters as much as what you send.
Match the user's natural pattern
Fitness apps: morning (workout planning) and evening (streak reminder). Meditation apps: consistent time daily. Utility apps: when the trigger event happens.
Sending at 3pm because that is when your marketing calendar has room is not a strategy. It ignores when the user actually opens your app.
Respect quiet hours
9pm-9am is off-limits unless the notification is urgent (security alerts, real-time transactions). Late-night pushes are the fastest way to drive opt-outs.
Time-zone-aware, not server-time
Sending "at 8am" from your server means 8am your time, which could be 3am in half your user base. Localize send times to the user's timezone.
The content rules
Behavioral triggers over broadcasts
Broadcast pushes ("new feature available!") get 2-4% engagement and drive opt-outs. Behavioral triggers ("your workout streak is 12 days, complete today's to keep it going") get 25%+ engagement.
Every notification should be triggered by something specific the user did or did not do, not by a broadcast schedule.
Personalized specifics over generic messaging
"New content in your feed" is generic. "Sarah just posted about React hooks" is personalized. Personalized notifications engage 3-5x better.
This requires knowing enough about each user to personalize. Which requires tracking behavior. Which is why analytics investment precedes push investment.
Time-sensitive content beats always-available
"Check out our sale" (available forever) creates no urgency. "Your favorite item is back in stock, 3 left" creates action. Push works best when it references something that will change if the user doesn't act.
The opt-in rules
Getting opt-in is more important than the notifications themselves. If your push opt-in is below 50% on iOS, your notification strategy is limited from day one.
Ask at the right moment
Bad: ask on app open (users have no context on why they should enable). Result: 20-30% opt-in.
Good: ask after the user completes their first meaningful action, with a specific value promise ("Get notified when someone comments on your post"). Result: 60-80% opt-in.
Ask with a specific value promise
"Turn on notifications" (weak) vs "Get notified when your workout streak is at risk" (specific). Specific value promises double opt-in rates.
Do not re-ask if declined
iOS lets you ask once. If declined, users have to go to Settings. Don't waste the ask on a generic prompt. If your first ask fails, users almost never come back to enable manually.
What to measure
- Opt-in rate at first ask (target: 65%+ on iOS)
- Open rate by notification type (best notifications drive engagement, worst drive opt-outs)
- Opt-out rate (should trend down as you refine what you send)
- Day-30 retention delta between opted-in and opted-out users (measures the actual value of your push channel)
- Uninstall rate correlated to notification volume (catches when you are pushing too much)
The bigger picture
Push notification strategy is one layer of the mobile retention stack. See the mobile apps guide for the full playbook, why users uninstall your app for the broader diagnosis, and the Churn Health Check to score your setup in 60 seconds.