7,380 open-source and SaaS tools, with GitHub stats refreshed every day.

Centrifugo

Open source

Centrifugo is a self-hosted, language-agnostic real-time messaging server that pushes messages to browsers and apps over WebSocket and other transports, an alternative to Pusher and Ably.

Open-source alternative to

centrifugal.dev
Centrifugo homepage screenshot
GitHub stars
11k
Last commit
2 days ago
Repository age
11 years
Version
v6.9.7
Licence
Apache-2.0
Self-hosted
Yes

About Centrifugo

This entry covers Centrifugo, the real-time messaging server from the Centrifugal project. It is an open-source PUB/SUB server for user-facing messaging: your backend publishes into channels through a simple HTTP or gRPC API, and clients subscribe to those channels using official SDKs, or a unidirectional approach that needs no SDK.

Messages reach online users over WebSocket, HTTP streaming, Server-Sent Events, gRPC and WebTransport. Because it is language-agnostic, it can sit beside any backend and separates the business logic from the real-time transport. It is used for chat apps, live comments, multiplayer games, data visualizations, collaborative tools and streaming AI responses. An embedded admin UI shows live connections and lets you publish test messages, and Redis support allows scaling out.

Centrifugo is written in Go and licensed under Apache-2.0. It is pitched as a self-run replacement for hosted services like Pusher, Ably and PubNub and for libraries such as socket.io, Phoenix.PubSub and SignalR, and a Docker command starts it in a minute for local trials. The README warns that the insecure flags used in the quick start must never be used in production.

Key features

  • Channel-based PUB/SUB messaging
  • WebSocket, SSE, HTTP streaming and gRPC transports
  • WebTransport support for browsers
  • HTTP and gRPC publish API
  • Official client SDKs
  • Embedded admin UI
  • Scaling out with Redis

Good fit for

  • →Live chat and comments
  • →Replacing Pusher or Ably with a self-hosted server
  • →Streaming AI responses to browsers
Built with
Go
Redis
Tags
real-time
websocket
pubsub
messaging
self-hosted
pusher-alternative
sse
golang
redis

Centrifugo: questions and answers

What is Centrifugo used for?
Centrifugo is a self-hosted, language-agnostic real-time messaging server that pushes messages to browsers and apps over WebSocket and other transports, an alternative to Pusher and Ably. It is a good fit for live chat and comments, replacing Pusher or Ably with a self-hosted server, and streaming AI responses to browsers.
Is Centrifugo open source?
Yes. Centrifugo is open source under the Apache-2.0 licence. Its source code is on GitHub at centrifugal/centrifugo and is written mainly in Go.
Is Centrifugo free?
Yes. Centrifugo is open source, so the software itself is free to use.
Can I self-host Centrifugo?
Yes. Centrifugo can be self-hosted on your own server or infrastructure.
What is Centrifugo an alternative to?
Centrifugo is an open-source alternative to Pusher, Ably, PubNub and Liveblocks. Other open-source alternatives to Pusher include Deepstream.io and Mercure.
Is Centrifugo actively maintained?
Yes. The most recent commit to Centrifugo was on 30 September 2026, and the latest release is v6.9.7, published on 29 September 2026. The project has 11k stars on GitHub.

Open-source alternatives to Centrifugo

See all

SaaS alternatives to Centrifugo

See all