APNs notification not getting delivered to only one device in production environment

I have a messaging app that has been working successfully for several years. It still works for most users, but about one month ago one of my users started experiencing issues receiving notifications.

From my investigation, the user's Notification Service Extension (NSE) has not been triggered since they started reporting the issue.

I was able to access the user's phone and connected it to the console to check for any logs related to the NSE being triggered or a push notification being received, but there were no relevant logs.

I have already verified that notifications are enabled for the app and that Do Not Disturb is not active.

I also tried sending a test notification using the CloudKit Console. The notification was successfully delivered to other push notification tokens, but it did not work for this specific device’s token. I have also confirmed that the push token on the server matches the one on the device and that it is being used with the APNs production environment.

The issue for this user started in iOS version 26.2 and are still ongoing in version 26.3.1 .

Has anyone encountered a similar issue or have suggestions on how to further diagnose this?

I've been using NSEs extensively for a decade. I've noticed very occasionally something in the OS just seems to get broken. Have you tried simply rebooting the phone? That's fixed inexplicable out-of-nowhere issues for me in the past.

It is possible that the device token has changed but for some reason either your app or your server do not have the updated token.

While we could try to investigate what the cause might be, for the sake of the user, it might be the easiest to uninstall the app and reinstall it. That would put your app in a state where it does not have a token, and a fresh token would be assigned.

If you are not already calling registerForRemoteNotifications() at every launch, we highly recommend that, as it would catch occasions where the device token may have changed at some point, and without that call your app would never receive the new token.

APNs notification not getting delivered to only one device in production environment
 
 
Q