We're experiencing an issue where push notifications are not being received on certain iOS devices, and we'd like help identifying the possible causes.
What we've confirmed so far:
- Push notifications are sent from our own provider server to APNs.
- APNs returns a normal response (HTTP/2 200)
- The device tokens are valid and up to date.
- Affected users have confirmed that notifications are enabled for our app in Settings.
- Users report no network connectivity issues.
- We are sending with apns-priority: 10 and apns-push-type: alert.
Scope:
- This is occurring for multiple users, not isolated to a single device.
- It happens intermittently — some notifications from the same campaign reach the device, while others don't.
- Critically, some affected users report that they only fail to receive notifications from our app during certain specific time windows, while notifications from other apps arrive normally during the same period. This suggests the issue is app-specific and time-correlated, rather than a device-wide or network-level problem.
Questions we'd like help with:
- Given that APNs returns 200, are there known scenarios where the notification still doesn't reach the device? (e.g., Focus / Do Not Disturb, low power mode, high-frequency throttling, stored-then-discarded due to apns-expiration)
- Is there a recommended way to obtain per-notification delivery status in the production environment?
- Are there known limits on how many notifications can be sent to the same device within a short window before APNs starts throttling or coalescing them?
- Our server logs currently do not retain the apns-id returned by APNs. If we provide the affected device tokens along with the approximate send timestamps, would it be possible for Apple to help investigate the delivery status of those notifications on the APNs side?
Any guidance or pointers to relevant documentation would be greatly appreciated. Thank you!