Self-hosted web push and owning your list
“Own your list” gets said a lot. With web push it has a precise technical meaning. Here’s what it is, what it isn’t, and the honest trade-offs between self-hosting and a hosted service.
- A push list is a set of browser endpoints plus the VAPID key pair that created them.
- Without the private key, an exported list cannot be sent to.
- True self-hosting means running your own sender and keys — powerful, but you own uptime and security.
- Pusharoo runs its own push stack on its own server (no reselling, no Firebase), and your sw.js lives on your domain.
What a push list actually is
Every subscriber is an endpoint URL issued by a browser’s push service plus two encryption keys for that browser. Every endpoint is bound to one VAPID public key. Only the holder of the matching private key can send to it.
The portability truth
Some tools let you export subscribers as a CSV. That’s useful for analytics, but unless you also receive the private VAPID key, no other sender can deliver to those endpoints. This is why switching push providers usually means subscribers re-opt in. It’s a property of the standard, not a trick — but it’s worth knowing before you pick a tool.
Your three options
| Self-host it yourself | Hosted SaaS | Pusharoo | |
|---|---|---|---|
| Who runs the sender | You | Vendor | Pusharoo, on its own dedicated server |
| Cost | Server + your time | Usually per subscriber | $0 for life |
| Setup | Days: library, DB, queue, prompt, cleanup | Minutes | ~5 minutes |
| Uptime & security | Your job | Vendor’s job | Pusharoo’s job |
| Service worker on your domain | Yes | Usually | Yes |
Want to build it yourself? Open-source libraries such as minishlink/web-push (PHP) and web-push (Node.js) implement the protocol. You’ll also need a subscriber database, a queue, a soft prompt, frequency caps and 404/410 cleanup — the parts Pusharoo already does.
How Pusharoo keeps you in control
sw.jsis served from your origin, so the subscription is created on your site.- Standard Web Push only — no proprietary app, no Firebase project in the middle.
- Signed webhooks for every subscribe, unsubscribe and click, so your own systems keep a record.
- Minimal data: endpoint, browser type, language and timezone. No names, emails or cookies (see privacy).
- No “Powered by” badge — visitors only ever see your brand.
Questions
Can I export my push subscribers and use them elsewhere?
Only if you also have the private VAPID key that created them. Without it, other services cannot deliver to those endpoints.
Is Pusharoo self-hosted?
Pusharoo is a hosted service that runs its own push stack on its own dedicated server using open standards. You don’t have to run anything except the sw.js file on your site.
What happens if I stop using Pusharoo?
Remove the snippet and sw.js (see the uninstall steps in the docs). Visitors stop receiving notifications from your site.
Keep reading
How web push works, step by step
Push API, service workers, VAPID keys and encryption — the full technical path of a notification.
Looking for a OneSignal alternative for web push?
Fair, dated comparison: pricing at scale, limits, branding and when OneSignal is still the better pick.
Web push notification pricing, compared honestly
Published list prices for popular services at 50,000 subscribers, dated and sourced.
White-label push notifications: your brand, not ours
Your name, icon and words on every prompt and notification. No “Powered by” badge.
More in Choosing a tool: Choosing a push notification service for your website · The best free web push notification services, compared · Looking for a PushEngage alternative? · Looking for a Webpushr alternative? · Looking for a PushOwl alternative? · All guides
Free for life. No limits.
Unlimited subscribers, campaigns and automations. No badges. About five minutes to install.