Powered by Cloudflare Workers & Durable Objects
WebSockets without the fan-out tax.
Drop-in Pusher Channels replacement on Cloudflare's global edge. Flat broadcast pricing, zero fan-out fees — or self-host with one command.
pusher.ts
import Pusher from "pusher-js";
const pusher = new Pusher("YOUR_APP_KEY", {
wsHost: "wss.socketo.dev",
cluster: "socketo",
forceTLS: true,
});Drop-in replacement for Pusher Channels
Works with your existing codebase and official Pusher SDKs.
Before · Pusher
PUSHER_APP_ID=<YOUR_PUSHER_APP_ID>
PUSHER_APP_KEY=<YOUR_PUSHER_KEY>
PUSHER_APP_SECRET=<YOUR_PUSHER_SECRET>
PUSHER_HOST=api-<cluster>.pusher.comAfter · Socketo
PUSHER_APP_ID=your_socketo_app_key
PUSHER_APP_KEY=your_socketo_app_key
PUSHER_APP_SECRET=your_socketo_secret
PUSHER_HOST=wss.socketo.devRun it your way
Choose between Socketo Cloud, self-hosted open source, or instant local development.
Socketo Cloud
Managed serverless WebSockets with auto-scaling and analytics. Zero maintenance.
- Global Cloudflare edge network
- Dashboard & live analytics
- Zero server maintenance
Self-Hosted OSS
Deploy the GPLv3 edition on your own Cloudflare account.
- Public / Private / Presence channels
- Multi-app support
- Your own Cloudflare account
Local CLI
Local Pusher-compatible test server via `npx @socketo/cli`. No account needed.
- Instant local development
- Pusher-compatible API
- No account needed
How the options above compare
Socketo Cloud vs. Self-Hosted
Same protocol, different operating model.
| Socketo Cloud | Self-Hosted | |
|---|---|---|
| Public / Private / Presence channels | ||
| Multi-app support | ||
| Global Cloudflare edge network | ||
| Dashboard & live analytics | — | |
| Zero server maintenance | — |
Simple, predictable pricing
Pay based on concurrent connections. Zero fan-out fees.
Starter
1,000 concurrent connections
$10/mo
- Unlimited apps
- Unlimited channels
- Unlimited broadcast
- Client events
- Email support
Indie
Popular3,000 concurrent connections
$20/mo
- Unlimited apps
- Unlimited channels
- Unlimited broadcast
- Client events
- Email support
Growth
5,000 concurrent connections
$40/mo
- Unlimited apps
- Unlimited channels
- Unlimited broadcast
- Client events
- Email support
- Discord support
No surprisesOne broadcast, one bill
1M broadcasts included monthly on all paid plans. Then $1 per million — 10 subscribers or 10,000, same flat rate.
$1/ million
Frequently asked questions
Can I keep using existing Pusher SDKs?
Yes. Socketo implements Pusher Protocol v7 — public, private, and presence channels, client events, and HMAC auth work with pusher-js, Laravel Echo, and other Pusher SDKs.
What does "Zero Fan-Out Tax" mean?
Pusher bills for every subscriber that receives an event (e.g. 1 broadcast to 1,000 users = 1,000 billed messages). Socketo bills 1 broadcast regardless of subscriber count. 1M broadcasts are included monthly, then $1 per million.
How do I migrate my project?
Update the four PUSHER_* variables shown above. See the migration guide for details.
Can I self-host Socketo for free?
Yes. Deploy the GPLv3 edition to your own Cloudflare account, or run it locally via
npx @socketo/cli.