Troubleshooting

You may encounter a scenario where push notifications are not displaying on a user's device, but your delivery logs show a send_status of ok.

An "OK" status indicates that Firebase Cloud Messaging (FCM) successfully received and delivered the payload to the device. Furthermore, this confirms that the user's notification permissions are not disabled (if permissions were revoked, FCM would return an error instead of an "OK" status).

In these cases, the issue is almost always caused by device-level OS restrictions, such as battery-saving features, focus modes, or background data limitations preventing the app from waking up to render the notification.

Resolution Steps

Android manufacturers—especially Samsung—often implement aggressive battery management systems that kill background processes or block incoming pushes. If the device in question is a Samsung, ask the user to verify the following settings:

Enable Unrestricted Battery Usage

By default, Samsung OS might put apps into an "Optimized" state, which delays or drops push notifications.

  • Go to Settings > Apps > [Your App].
  • Tap on Battery.
  • Select Unrestricted (Ensure it is not set to Optimized or Restricted).

Check for Deep Sleeping Apps

Samsung devices automatically put rarely used apps into "Deep sleep," completely blocking them from receiving push notifications in the background.

  • Go to Settings > Battery and device care > Battery > Background usage limits.
  • Check the lists for** Sleeping apps** and Deep sleeping apps.
  • If your app is in either list, remove it.

To permanently prevent this, add your app to the Never sleeping apps list.

Allow Background Data Usage

If background data is restricted, the app cannot download the push notification payload when it is closed.

  • Go to Settings > Apps > [Your App].
  • Tap on Mobile data (or Mobile data usage).
  • Ensure that the Allow background data usage toggle is turned ON.

Global System Restrictionsto Check

Sometimes the issue isn't tied to the app itself, but rather the current general state of the phone. Have the user check these global settings:

  • Do Not Disturb (DND) Mode:

Go to Settings > Notifications > Do Not Disturb. Ensure it is not active. Alternatively, configure the device to allow your app to bypass Do Not Disturb mode.

  • Data Saver Mode:

Go to Settings > Connections > Data usage > Data saver. If Data Saver is turned on, it can block background network activity for push notifications. Add your app to the "Allowed to use data while Data saver is on" exceptions list.