You can add web push to WordPress with a push-notification plugin and its hosted dashboard: configure your site, connect the plugin with the provider’s credentials, then test a real browser subscription and message. For the current OneSignal v3+ plugin workflow described here, your site must use HTTPS, and the plugin handles its service worker—you should not add a separate root-level worker.
What web push does—and what WordPress needs
Web push lets a site send asynchronous messages to people who have opted in. Through the browser’s Push API, a subscription supplies an endpoint and encryption key; an active service worker receives push events, including when the site is not open in a page. The endpoint is a capability URL, so implementations should protect it. See MDN’s Push API documentation.
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
Making Your WordPress Site Awesome: The Intermediate Guide (Web Site) | $34.94 | Buy on Amazon |
A service worker is a JavaScript worker associated with an origin and path. It operates outside the page’s DOM and supports background functions such as push. Browsers require service workers to run in a secure context: ordinarily that means HTTPS, while localhost is treated as secure for development. See MDN’s Service Worker API documentation.
A plugin is one way to implement this mechanism, not the definition of web push. A hosted provider adds a dashboard and tools for prompts, audiences, and sending messages; a custom implementation uses the browser APIs directly and requires you to manage more of the integration.
Free tools Windows power users keep installed
One-click scans. No signup required.
#1 Best Overall
Before you install a plugin
- Enable HTTPS. OneSignal’s current v3+ WordPress setup guide lists an HTTPS-enabled site as required for web push. Its walkthrough also requires a OneSignal account and WordPress administrator access. Read OneSignal’s WordPress setup guide.
- Choose one canonical site address. Decide whether the site uses the www or non-www host, and use that exact URL in the provider dashboard. For example,
https://example.comandhttps://www.example.comare distinct setup choices. - Decide what deserves an alert. Choose whether notifications should be sent only when editors opt in or automatically when specified content is published or updated. Automatic sends can turn routine edits into unwanted messages if enabled without an editorial policy.
- Check the plugin’s current requirements. WordPress.org listed OneSignal plugin version 3.9.4, WordPress 6.0 or higher, testing through WordPress 7.1.2, and PHP 7.4 or higher when accessed on September 30, 2026. These are changing listing values; check the live WordPress.org plugin listing before installing.
Set up OneSignal’s WordPress plugin
The steps below describe OneSignal’s documented v3+ integration as a concrete example, not the only way to add push notifications to WordPress. Dashboard labels can change; follow the current provider guide if a label differs.
- Confirm HTTPS and the site URL. Make sure the site loads over HTTPS, then settle on its canonical www or non-www address before configuring the provider.
- Open web push setup for WordPress. Sign in to OneSignal or create an account, then choose the WordPress web setup in the dashboard.
- Enter the site details. Provide the site name and exact site URL. Choose a default notification icon; OneSignal’s guide specifies a square 256×256 image.
- Configure the subscription prompt. Set the prompt text, appearance, timing, and any optional user-interest categories. A brief timing setting can help during initial testing, but adjust it for the way visitors use the site rather than interrupting everyone immediately.
- Connect WordPress to the dashboard. Save the dashboard configuration, install and activate the OneSignal plugin, and paste the App ID and API key into the plugin settings. Copy both values exactly.
- Keep the service-worker setup within the plugin integration. For OneSignal’s v3+ WordPress plugin flow, the plugin hosts and registers its worker. Do not upload a second
OneSignalSDKWorker.jsfile to the site root or set a custom worker path for this integration; mixing methods can create worker conflicts. - Test with a real browser subscription. Visit the site in a normal, non-private browser window. Wait for the configured prompt, subscribe, and approve the browser’s native permission request. Confirm the subscription appears in the provider dashboard, then send yourself a test message.
- Choose when WordPress sends alerts. OneSignal’s plugin guide documents a post-editor checkbox and automatic-send settings for posts, pages, updates, and supported custom post types. Start with editor-controlled sends unless your team has deliberately chosen which content types and updates should trigger automatic alerts.
Test and troubleshoot the subscription
Permission and delivery are separate checks: a visitor must subscribe and approve the browser request, and the provider must show the subscription before a test send can confirm delivery. Use the provider dashboard and a normal browser window for the checks below.
- No prompt appears: Check that the dashboard site URL matches the exact www or non-www address being visited, and review the prompt configuration. Test outside private browsing, which may not preserve subscriptions.
- A service-worker error appears: Check that the plugin integration has not been combined with a manually uploaded root worker or custom-code worker path. In the v3+ plugin flow, OneSignal says the plugin supplies and registers the worker.
- No subscription appears in the dashboard: Confirm the visitor selected the subscription prompt and accepted the browser’s permission request, then check the dashboard’s subscription list.
- A subscription exists but the test message does not arrive: Send a fresh test from the provider dashboard and verify that you are checking the browser and device targeted by that test. The provider’s setup guide recommends a test send but does not establish a universal diagnostic checklist for every browser or device.
Browser support and implementation choices
The WordPress.org listing names Chrome, Edge, Opera, and Firefox on desktop and Android, and Safari on Mac. That listing’s browser claims do not establish identical behavior across every browser, operating system, or private-browsing mode. For the OneSignal v3+ workflow described above, treat HTTPS as a prerequisite because the current setup guide explicitly requires it—even though the plugin listing also describes HTTP support.
Choose between a hosted plugin and custom web-push code based on who will manage the integration and what the site needs:
| Consideration | Hosted plugin workflow | Custom web-push implementation |
|---|---|---|
| Service worker and setup | The provider’s plugin can host and register the worker; OneSignal documents this for its v3+ WordPress flow. | Your implementation must register and manage an active service worker, as required by the Push API. |
| Prompts and sending | Provider dashboard tools can configure prompts, audiences, and messages; OneSignal documents editor checkboxes and automatic-send settings for supported content. | Prompt, audience, and message workflows depend on what you build; no specific custom implementation is established here. |
| Browser and device fit | Check the provider’s current browser and device support against your audience; the WordPress.org listing names selected browsers and platforms. | Check the browser APIs and delivery requirements for the browsers and devices you intend to support. |
| Data, limits, price, and portability | Check the provider’s current terms and plan details before relying on a limit, price, or export and migration option; they are not established here. | These details depend on the services and code you choose; no comparable values are established here. |
The available documentation supports OneSignal’s setup flow and the underlying browser APIs, but it does not establish a current, like-for-like comparison of alternative providers. It is not enough to conclude that OneSignal is the best or least expensive choice.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




