Push Notification

A push notification is a message sent from a server to a device or application at a moment of the server’s choosing, rather than in response to a request the user just made. Crucially, it can be delivered even when the target app or page is not in the foreground or not running at all, which is what makes it useful for alerts, messages, and timely updates. On the web, this capability is standardized by the W3C Push API.

The Push API specification states plainly that it “enables sending of a push message to a web application via a push service,” and that this works even when “a web application or user agent is inactive.” It defines the interfaces that make this possible, including the PushManager for creating and managing a subscription, the PushSubscription that represents an established channel, and the PushEvent that is fired when a message arrives. That delivery point is a service worker: the W3C Service Workers specification provides the background script that receives the push event and can then show a notification without the page being open.

The design separates two roles. A push service, operated by the browser or platform vendor, is the intermediary that actually routes messages to the device; the application server is the developer’s backend that pushes content to that service. The client subscribes once, hands its subscription details to its own server, and the server thereafter sends messages through the push service. This indirection is what lets a sleeping device be woken to receive a message without keeping a connection open per app.

On mobile platforms the same idea predates and parallels the web standard, implemented through vendor-specific services rather than the Push API. Apple devices receive pushes through the Apple Push Notification service (APNs), and Android devices through Firebase Cloud Messaging (FCM, formerly Google Cloud Messaging). In all of these systems the device maintains a single persistent channel to the platform’s push service, and individual apps’ servers send messages over that shared channel, conserving battery and network compared with every app polling on its own.

Sources

Last verified June 8, 2026