Soketi made self-hosted Pusher hosting cheap. Its stalled maintenance is the real story this comparison has to tell.
Soketi is an open source Pusher-protocol server on uWebSockets.js, and at its peak it was the best answer for self-hosting Pusher workloads. The protocol overlap with Foony makes switching trivial in either direction. The honest headline in 2026 is maintenance: Soketi’s last release shipped in March 2024 and it still requires an old Node.
When Foony fits
A maintained platform. Soketi’s last release was March 2024, the pull request adding Node 20 support has been open since January 2024, and its own issue tracker hosts an unanswered "Is Soketi maintained?" thread.
No Node 16 pin: Soketi’s bundled uWebSockets.js build keeps it on end-of-life Node versions.
History, ordering, and exactly once semantics via the native SDKs, beyond what the Pusher protocol offers.
No AGPL conversation with your legal team.
When Soketi fits
Strict self-hosting or data residency requirements, at the cost of adopting a dormant dependency (or one of its community rewrites).
Per-app rate limits and multi-tenancy with SQL-backed app management.
Platform
Foony
Soketi
Maintenance
Actively developed, hosted
Last release March 2024, Node 20 PR open since January 2024
Runtime
Nothing to run
Node LTS 14/16 process, Supervisor, Redis or NATS to scale
License
Hosted service
AGPL-3.0
Pusher webhooks
Not yet
Yes, including filtering and Lambda targets
Message size
64 KB free, up to 1 MB on paid plans
100 KB default, configurable
History and guarantees
Available via the native SDKs
Not part of the protocol
Cost
Foony
Soketi
Software
Free tier, then plans from $19/month
Free (AGPL)
What you pay for
Messages
A VPS and the ops time, cheap while it stays small
Competitor numbers last checked July 2026. If something has drifted, tell us and we will fix it.
Moving over
Soketi and Foony speak the same protocol, so moving is credentials and a host name. The same Echo or pusher-js config that pointed at your Soketi box points at Foony: