Turn your WordPress website into native app in minutes - AppNatively EarlyBird Sale

Push Notifications Not Working? Complete Troubleshooting Guide

Push notifications are one of the most important ways an app communicates with users. They can alert someone about a new message, order update, booking, payment, reminder or time-sensitive event without requiring the app to be open.

But when push notifications are not working, users can miss important information. The problem may be as simple as disabled notification permissions or as complex as an invalid device token, broken APNs configuration, Firebase Cloud Messaging issues or an application bug.

In this complete troubleshooting guide, we’ll explain why push notifications stop working, how to fix notification problems on iPhone and Android, and how developers can diagnose and prevent notification delivery failures.

Common Causes of Push Notifications Not Working

Push notification delivery involves several components working together.

A typical notification can travel from an application server through a push notification service and finally to the user’s device. Apple uses Apple Push Notification service (APNs) for its platforms, while Android applications commonly use Firebase Cloud Messaging (FCM).

Apple describes remote notification delivery as a process involving the provider server, APNs, the user’s device and the app.

That means a notification can fail at several different points.

Notifications are disabled for the app

The first thing to check is whether notifications are allowed.

Users can disable notifications for individual applications through their device settings. If permission is disabled, the application may successfully generate and send a notification request but the user will not see the expected alert.

On iPhone, notification authorization controls whether the app can display alerts, play sounds or show badges. Apple also allows users to change these permissions later in system settings.

On Android 13 and newer, applications need the POST_NOTIFICATIONS runtime permission for non-exempt notifications. A newly installed app has notifications turned off by default until the permission is granted.

Do Not Disturb or another mode is enabled

Your phone may be receiving notifications without displaying them in the way you expect.

Do Not Disturb and other notification modes can restrict interruptions from applications.

Android allows users to configure notification filters through Modes and Do Not Disturb.

iPhone users can similarly use Focus modes to control when notifications are delivered or displayed.

If notifications suddenly stop during certain hours or situations, check your device’s Focus or Do Not Disturb settings.

The phone is offline

Push notifications ultimately need a network connection to reach the device.

If your phone is offline, delivery may be delayed until connectivity returns.

Apple explains that APNs can store notifications for an offline device and attempt delivery when the device becomes available again, subject to the notification’s expiration and delivery behavior.

Android push delivery also depends on connectivity between the device and Firebase Cloud Messaging.

Battery-saving settings are affecting delivery

Some Android devices apply aggressive background restrictions to preserve battery.

These restrictions can affect how applications maintain background connectivity and perform background work.

The exact behavior varies by manufacturer, Android version and device configuration.

If notifications arrive only after opening the application, background restrictions should be investigated.

The app has not registered correctly for push notifications

A mobile application generally needs to register with the platform’s notification service.

On Apple’s platforms, the application registers with APNs and receives a device token identifying the app-device combination. The application then needs to send that token to its provider server.

If registration fails, the server may have no valid destination for the notification.

The device token is invalid

A push notification system needs a valid token associated with the target app installation.

Tokens can change.

Apple specifically warns developers not to permanently cache device tokens because APNs can issue a new token when an app is installed on a new device, the operating system is reinstalled or a device is restored from backup.

FCM registration tokens can also become invalid.

Firebase recommends removing unregistered tokens from the application server when FCM reports an UNREGISTERED error.

The app was reinstalled

Reinstalling an application can change its push registration state.

A server that continues sending to an old registration token may therefore fail to reach the newly installed application.

This is particularly important for systems that store device tokens against user accounts.

The notification server is not working

The application itself may be functioning perfectly while the notification backend is failing.

The provider server is responsible for generating notification requests and sending them to the relevant push service.

If that server is down, misconfigured or unable to authenticate with APNs or FCM, notifications will not reach users.

APNs configuration is incorrect

For iOS applications, the notification infrastructure must be configured correctly.

Apple requires the application to have push notification capabilities and the corresponding Apple developer configuration. The provider server must also establish the appropriate trust relationship with APNs.

A configuration problem can prevent delivery even when the application UI looks completely normal.

Firebase Cloud Messaging is misconfigured

Android applications using FCM depend on correct Firebase configuration.

Problems with the Firebase project, application registration, sender identity, registration token or server credentials can prevent messages from reaching the intended device.

Firebase documents errors such as SENDER_ID_MISMATCH, UNREGISTERED and QUOTA_EXCEEDED that can help identify the underlying problem.

The notification is being sent to the wrong token

A server may have a valid token but associate it with the wrong user or application installation.

For example, if a user logs into the same account on multiple devices, the backend needs to understand that one account can have multiple notification destinations.

Apple specifically recommends preparing systems to handle multiple device tokens for a user.

The notification payload is invalid

A push notification contains data that tells the platform what to display or how the application should process the message.

If the payload is malformed, too large or incompatible with the expected notification type, delivery can fail.

Apple documents payload size limits and notes that APNs can reject notifications when the payload exceeds its allowed size.

The app is in the foreground

This is a particularly common source of confusion.

A notification can be successfully delivered to the application without appearing as a traditional system notification.

Firebase explains that Android notification messages received while the app is in the foreground require client-side handling. When the app is in the background, notification messages are displayed in the system tray and onMessageReceived is not called for that notification message flow.

Therefore, “I didn’t see a notification” does not always mean “the notification was never delivered.”

Notification channels are disabled on Android

Android uses notification channels to let users control different categories of notifications.

A user might allow notifications for an application while disabling a particular channel.

For example, an ecommerce app could have separate channels for:

Orders

Promotions

Account activity

Delivery updates

If the relevant channel is disabled, notifications assigned to that channel may not appear.

The notification is being silently delivered

Not every push notification is designed to show a visible alert.

Some notifications are intended to update application data or trigger background processing.

Apple distinguishes notification payload behavior that can produce alerts, sounds or badges from silent notifications.

Therefore, developers should first determine whether the notification is supposed to be visible.

Notification delivery is delayed

Push notification systems are not necessarily real-time guarantees.

Apple describes APNs as a best-effort service and notes that notifications can be delayed, stored, coalesced or throttled under certain conditions.

If a notification eventually arrives but not immediately, investigate delivery timing rather than assuming complete delivery failure.

How to Fix Push Notifications Not Working

If push notifications are not working, start by determining whether the problem affects one app, one device or many users.

That distinction can quickly narrow down the cause.

1. Check notification permissions

Open your phone’s notification settings and make sure notifications are enabled for the affected application.

Also check whether individual notification categories, sounds, badges or alerts have been disabled.

On Android 13 and newer, verify that the application has the POST_NOTIFICATIONS permission.

2. Turn off Do Not Disturb temporarily

Disable Do Not Disturb or any active Focus mode.

Then trigger a test notification.

If notifications immediately start appearing, the issue was related to your notification filtering rather than the application itself.

3. Check your internet connection

Make sure your phone is connected to Wi-Fi or mobile data.

Try switching between networks.

If notifications work on mobile data but not Wi-Fi, the network may be interfering with the device’s connection to the push service.

4. Open the app once

Launch the affected application and leave it open for a few seconds.

This can help identify whether the application is correctly registering its current device installation.

It is not a universal fix, but it can help reveal whether push registration is happening only after application startup.

5. Restart the phone

Restarting the device can resolve temporary connectivity or system-level notification problems.

After restarting, open the app and test the notification again.

6. Update the application

Check the App Store or Google Play for an available update.

Notification problems can be caused by bugs in older application versions, outdated SDKs or changes to backend services.

7. Update your operating system

Install available iOS or Android updates if your device supports them.

Operating system updates can affect notification permissions, background behavior and platform APIs.

8. Check notification categories

On Android, open the application’s notification settings and review individual categories or channels.

A notification can be enabled at the application level while a particular channel remains disabled.

Android provides controls for managing notifications for individual applications and notification history on supported devices.

9. Disable battery restrictions temporarily

If notifications appear only after you manually open the application, check whether battery optimization or background restrictions are affecting it.

The exact settings vary considerably between Android manufacturers.

Look for settings related to:

  • Battery optimization
  • Background activity
  • Background data
  • Auto-start
  • Sleeping apps
  • Battery saver

Don’t permanently disable battery protections for every application. Instead, test whether the affected application needs an exception.

10. Reinstall the app

If notification registration appears corrupted, reinstalling the application can establish a fresh installation.

Before doing this, make sure important data is synchronized with your account and that you know your login credentials.

11. Test another device

If possible, sign into the same account on another supported device.

This creates a useful comparison.

If notifications work on the second device, the problem is probably device-specific.

If they fail everywhere, investigate the account, server or notification infrastructure.

12. Test another account

Developers can use a separate test account to determine whether the problem is associated with one user’s notification registration.

This is particularly useful for applications that store multiple device tokens per account.

How to Fix Push Notifications Not Working on iPhone

iPhone notification behavior depends heavily on authorization, Focus settings, application registration and APNs configuration.

i. Check notification permission

Open your iPhone’s notification settings and verify that the application is allowed to send notifications.

Check alerts, sounds and badges based on what the application is expected to provide.

Apple states that users can change notification authorization and interaction settings after the initial permission decision.

ii. Check Focus settings

Temporarily disable Focus modes.

If notifications appear afterward, review the Focus configuration and allowed applications.

iii. Check notification summary settings

If notifications are being delivered through a scheduled summary, they may not appear immediately.

Review your notification settings if alerts are consistently delayed.

iv. Check Apple Watch behavior

If you use an Apple Watch, notification behavior can differ depending on whether the iPhone is locked or unlocked and where notifications are configured to appear.

If you’re troubleshooting an iPhone notification problem, test without relying on the watch to determine which device is receiving the notification.

v. Update iOS

Check for an available iOS update.

Also update the affected application through the App Store.

vi. Restart the iPhone

A restart can clear temporary notification or connectivity issues.

vii. Reinstall the application

If the problem continues, reinstalling the application can force a new registration process.

From a developer perspective, this can also reveal whether the original installation had stale registration data.

viii. Ask the developer to verify APNs registration

If notifications still do not work, the developer may need to verify that the application successfully registered with APNs and that the current device token reached the provider server.

Apple explains that the application receives its device token from APNs and should forward it securely to the provider server.

How to Fix Push Notifications Not Working on Android

Android offers more notification controls than many users realize.

This flexibility also means there are more places where notifications can be disabled.

Check app notifications

Open the application’s notification settings and make sure notifications are allowed.

Also inspect individual notification categories.

Check Android notification permission

On Android 13 and newer, newly installed applications have notifications disabled until the user grants notification permission.

If the permission was denied, the app cannot simply assume that notifications will appear.

Check Do Not Disturb

Disable Do Not Disturb or another active Mode temporarily.

Android allows users to control which applications can interrupt them through notification filters.

Check battery optimization

Review the affected application’s battery settings.

If the device aggressively restricts background activity, push delivery may be delayed depending on the device and application architecture.

Check background data

Make sure the application is permitted to use background data if its notification architecture requires it.

Check notification history

Some Android devices provide notification history.

This can help determine whether a notification arrived but was dismissed or filtered before you noticed it.

Update Google Play components and the app

Keep the application and relevant system components updated.

For applications using FCM, also make sure the integration is using a supported and correctly configured Firebase setup.

Reinstall the application

If the registration token or local notification configuration is damaged, reinstalling can create a fresh app installation.

How Developers Troubleshoot Push Notifications

When users report push notifications not working, developers should avoid immediately assuming that the device is responsible.

The notification pipeline needs to be tested from end to end.

A useful model is:

Application → Registration → Device token → Backend → Push service → Device → OS → Notification UI

A failure anywhere along this path can produce the same user complaint.

Verify notification permission

The application should know whether notification permission has been granted.

On iOS, developers can query notification settings and authorization status.

On Android 13 and newer, applications need the POST_NOTIFICATIONS runtime permission for applicable notifications.

Do not treat notification permission as permanently available.

Users can change it later.

Verify device registration

Confirm that the application successfully registers for remote notifications.

Apple’s APNs registration flow provides a device token that identifies the app-device combination. Developers should forward the current token to their provider server.

The registration process should also handle failures rather than silently continuing.

Store current tokens correctly

Device tokens should be treated as dynamic registration data.

Apple explicitly states that developers should not cache APNs device tokens as permanent values because tokens can change.

Your backend should therefore be designed to update tokens whenever the application provides a new one.

Associate tokens with users carefully

A single user may have multiple devices.

Your database should support relationships such as:

User → Device A → Token A

User → Device B → Token B

User → Device C → Token C

This prevents a new login or device from accidentally replacing every existing notification destination.

Verify the server response

Don’t stop debugging after sending a request.

Record the response from APNs or FCM and interpret it.

Apple provides response status and reason information when APNs rejects a notification request.

Firebase similarly documents detailed error codes that can identify invalid tokens, sender mismatches, quota problems and other failures.

Remove invalid FCM tokens

If FCM returns UNREGISTERED, the token should generally be removed from your server’s active token list.

Firebase explains that this can occur when an app instance is unregistered, uninstalled, a token expires or an updated application is no longer configured correctly for messaging.

Continuing to send notifications to known-invalid tokens creates unnecessary failures and noise.

Check APNs authentication

For iOS applications, verify that the provider server can authenticate with APNs.

Apple supports token-based and certificate-based provider authentication.

Check:

  • Team or account configuration
  • Key or certificate validity
  • Bundle ID
  • Topic
  • Environment
  • Provider credentials

A mismatch in these values can prevent delivery.

Check production versus development environments

One of the most common development mistakes is mixing notification environments.

Apple documents separate development and production APNs endpoints. Shipping applications should use the production environment, while development testing uses the development endpoint.

Make sure the token and provider environment match.

Check the APNs topic

The APNs request needs to target the appropriate application topic.

A mismatch between the device token and topic can cause APNs to reject the request.

Apple documents DeviceTokenNotForTopic among its APNs error conditions.

Check FCM sender configuration

For FCM, verify that the project and sender configuration match the application registration token.

Firebase documents SENDER_ID_MISMATCH as a case where the authenticated sender does not match the sender associated with the registration token.

Check notification payloads

Validate the notification payload before sending it to production users.

For Apple platforms, payload size is limited and APNs can reject oversized payloads.

Also make sure the payload contains the fields required for the intended notification behavior.

Test foreground behavior

Test the application in multiple states:

  • Foreground
  • Background
  • Terminated
  • Locked device
  • After device restart

A notification that works in the background may behave differently when the application is open.

Firebase specifically notes that Android foreground notification messages require client-side handling.

Test notification channels

On Android, create and configure notification channels correctly.

Do not assume that setting a high importance level in application code can override a user’s existing channel choice.

Once users have changed a channel’s behavior, the application needs to respect that system-level configuration.

Check network and firewall configuration

Enterprise networks, VPNs and firewalls can interfere with push messaging.

Firebase documents network requirements for FCM, including connectivity involving ports 5228 through 5230. It also notes that proxies and VPNs can complicate FCM connectivity.

If push works on a cellular network but fails on a particular corporate Wi-Fi network, investigate the network environment.

Use test messages

A controlled test notification can help separate notification infrastructure problems from application logic problems.

Firebase provides a test-message workflow using an FCM registration token and recommends testing with the application running in the background.

For iOS, Apple’s Push Notification Console can also be used to test APNs integration and inspect delivery-related information.

How to Diagnose Where Push Delivery Is Failing

When troubleshooting, don’t ask only:

“Did the notification arrive?”

Ask a series of more useful questions.

Did the app receive permission?

If no, fix permission handling first.

Did the device register?

If no, investigate APNs or FCM registration.

Did the server receive the device token?

If no, inspect the application’s registration-to-backend communication.

Did the server send the notification?

If no, investigate backend logic.

Did APNs or FCM accept the request?

If no, inspect credentials, token, payload and configuration.

Did the device receive the message?

If yes, investigate OS handling and application behavior.

Did the operating system display it?

If no, inspect notification permissions, channels, Focus, Do Not Disturb and notification presentation logic.

This approach prevents developers from wasting hours debugging the wrong component.

How to Prevent Push Notification Problems

Reliable push notifications require more than successfully sending a message once.

Developers should build monitoring, testing and recovery into the notification architecture.

Refresh device tokens

Treat tokens as dynamic.

When the application receives an updated token, send it to your backend and update the corresponding device record.

Remove invalid registrations

Automatically process invalid-token responses.

This keeps the database clean and prevents repeated attempts to deliver messages to unreachable app installations.

Support multiple devices

Users commonly sign into the same account from phones, tablets and other supported devices.

Store notification registrations separately rather than maintaining only one token per user.

Monitor delivery failures

Track provider responses and error rates.

A sudden increase in invalid tokens or authentication errors can reveal a broken deployment before users start flooding support channels.

Test every app release

Push notification testing should be part of your release checklist.

Test after:

  • Fresh installation
  • Application update
  • Device restoration
  • Reauthentication
  • Token refresh
  • Operating system update
  • Permission changes
  • App reinstall

Test foreground and background states

Never test push notifications only while the app is open.

A notification may follow different handling paths depending on the application’s state.

Test different operating systems

At minimum, test supported versions of iOS and Android.

Pay particular attention to major operating system releases that introduce new permission or notification behavior.

Handle notification permission gracefully

Don’t request permission without explaining its value.

Android’s current notification permission guidance recommends requesting notification permission in context and explaining why the application needs it.

Apple likewise recommends requesting authorization in a context that helps users understand why notifications are needed.

Give users notification controls

Let users choose relevant notification categories where appropriate.

For example, a booking application might allow users to receive booking confirmations and reminders while opting out of promotional messages.

This can improve both user experience and notification engagement.

Don’t depend on notifications for critical information

Push notifications are useful, but they should not be the only place users can access important information.

For example, an order status should also be available inside the application.

A notification should act as a convenient entry point rather than the only source of critical account information.

Push Notifications Not Working After an App Update

If notifications stopped immediately after an application update, investigate both the client and backend.

An update can change:

  • Notification permissions
  • SDK versions
  • Push registration
  • Device token handling
  • Firebase configuration
  • APNs configuration
  • Notification channels
  • Payload processing
  • Background behavior

Firebase notes that an FCM registration token can become invalid when an updated app is not properly configured to receive messages.

This makes post-update notification testing especially important.

Developers should test both new installations and upgraded installations because the two paths can produce different registration states.

Push Notifications Delayed but Not Completely Broken

Delayed notifications require a different investigation from completely missing notifications.

If messages eventually arrive, check:

Network quality

Device power state

Battery restrictions

Notification priority

Backend queue delays

Provider delivery behavior

Application background restrictions

Apple explicitly describes APNs as a best-effort service and notes that notifications can be delayed, coalesced or throttled under certain circumstances.

Therefore, developers should avoid designing systems that assume every notification will appear instantly.

For genuinely time-sensitive functionality, consider whether push notifications are the appropriate mechanism and design the application to recover when delivery is delayed.

A Complete Push Notification Troubleshooting Checklist

When push notifications are not working, work through this checklist:

Check notification permissions

Make sure the application is allowed to send notifications.

Check Focus and Do Not Disturb

Temporarily disable notification filtering.

Check internet connectivity

Test Wi-Fi and mobile data separately.

Update the app

Install the latest supported version.

Update the operating system

Install available iOS or Android updates.

Check notification channels

On Android, verify that the relevant channel is enabled.

Check battery restrictions

Make sure aggressive background restrictions are not affecting the application.

Restart the device

Then test the notification again.

Reinstall the app

Use a clean installation if registration appears corrupted.

Test another device

Determine whether the issue is device-specific.

Test another account

Determine whether the problem is tied to a particular user or registration.

Check the push provider

Developers should verify APNs or FCM responses.

Verify device tokens

Make sure the server is using current registration tokens.

Check backend logs

Trace the notification from creation to provider response.

Test foreground and background states

Confirm that notification handling works in all supported application states.

Frequently Asked Questions

Why are my push notifications not working?

Push notifications can fail because notifications are disabled, Do Not Disturb is active, the device is offline, the app is outdated, battery restrictions are interfering or the application’s push registration is broken.

Why do I receive notifications only when I open the app?

This can indicate a background processing or push registration problem. On Android, battery restrictions, network behavior or notification handling can contribute. Developers should also verify whether the application is properly registered with FCM.

Why are push notifications not working on iPhone?

Check notification permissions, Focus settings, notification settings, connectivity and application updates. If those are correct, the developer may need to investigate APNs registration and the device token.

Why are push notifications not working on Android?

Check notification permission, notification channels, Do Not Disturb, battery restrictions, background data and application updates. Android 13 and newer also require the appropriate runtime notification permission for applicable notifications.

Why did notifications stop after I updated the app?

An application update can change push registration, notification SDK configuration, token handling or notification behavior. Developers should test both new installations and upgrades and verify that current device tokens are being registered correctly.

Can battery saver stop push notifications?

Battery-saving and background restrictions can affect how applications operate in the background, particularly on some Android devices. If notifications appear only after opening the app, check the application’s battery and background settings.

Can Do Not Disturb block push notifications?

Yes. Do Not Disturb and other notification modes can restrict which applications are allowed to interrupt you. Android provides notification filters for these modes.

Can a VPN affect push notifications?

Yes. Network configurations, VPNs and firewalls can interfere with push messaging connectivity. Firebase specifically documents VPN and network considerations for FCM.

Why do notifications work when the app is closed but not when it is open?

Foreground applications can use different notification handling paths. Firebase notes that Android notification messages received while an app is in the foreground require application-side handling rather than automatically appearing in the system tray in the same way as background notification messages.

Why does my app receive some notifications but not others?

The notifications may use different channels, topics, segments, payloads or delivery conditions. On Android, individual notification channels can also be configured differently.

What happens when an FCM token becomes invalid?

Firebase can return an UNREGISTERED error when a registration token is no longer valid. The application server should remove that token and stop sending messages to it.

Can Apple change a device token?

Yes. Apple explicitly warns developers not to cache device tokens as permanent values because the token can change in situations such as installing the app on a new device or restoring the operating system.

Are push notifications guaranteed to arrive instantly?

No. Push delivery is not an absolute real-time guarantee. Apple describes APNs as a best-effort service and notes that notifications may be delayed, coalesced or throttled.

How can developers test push notifications?

Developers should test fresh installations, upgrades, foreground and background states, expired tokens, permission changes, offline conditions and multiple devices. Firebase provides test-message functionality using registration tokens, while Apple provides a Push Notification Console for APNs testing.

Final Thoughts

When push notifications are not working, the problem is rarely limited to one simple setting.

A push notification travels through several stages, from application registration and device tokens to the backend server, APNs or FCM, the operating system and finally the notification interface.

For users, start with the basics. Check notification permissions, disable Do Not Disturb or Focus, verify your internet connection, update the app, check Android notification channels and battery settings, restart the device and reinstall the application if necessary.

For developers, the troubleshooting process needs to go deeper. Verify registration, current device tokens, backend associations, APNs or FCM responses, credentials, payloads, notification channels and foreground/background behavior.

Most importantly, don’t treat push notifications as a single feature. They are a complete delivery pipeline. Monitoring every stage makes it much easier to identify where a notification disappeared.

If you’re building a mobile app from an existing website, AppNatively can help turn your website into native iOS and Android applications without rebuilding your entire digital product from scratch. For WooCommerce stores, Shopify, directories, booking platforms, restaurants and LMS websites, push notifications can become an important way to bring users back to the app and keep them informed about important activity.

A reliable notification system doesn’t just send more notifications. It delivers the right message, to the right user, on the right device, at the right time, while giving users control over what they receive.