Centrifugo vs Conduit vs ejabberd

Centrifugo, Conduit, and ejabberd are all free, open-source, self-hosted real-time servers, but they operate at different layers of the stack: Centrifugo is a…

Centrifugo

Open Source / Freemium · From Free (self-hosted)

Best for: Engineering teams building custom real-time features, such as chat, live feeds, dashboards, or multiplayer state, into their own application who want a lightweight pub/sub layer rather than a full chat protocol server.

Conduit

Free/Open Source · From Free

Best for: Privacy-conscious individuals and small teams who want the simplest possible self-hosted Matrix homeserver, running on minimal hardware without managing a separate database.

ejabberd

Open Source / Custom · From Free (Community Edition); Business Edition custom-priced

Best for: Organizations that need a proven, horizontally scalable messaging backbone across XMPP, MQTT, and SIP, especially at very high concurrency or in IoT and telecom contexts.

At a Glance

 CentrifugoConduitejabberd
Primary categoryTeam ChatTeam ChatTeam Chat
RatingNot documentedNot documentedNot documented
Pricing modelOpen Source / FreemiumFree/Open SourceOpen Source / Custom
Starting priceFree (self-hosted)FreeFree (Community Edition); Business Edition custom-priced
Free planYesNot documentedYes
Free trialNot documentedNot documentedNot documented
PlatformsNot documentedNot documentedNot documented
Team collaborationNot documentedNot documentedNot documented
AI featuresNot documentedNot documentedNot documented
Public APIYesYesYes

Standout Differences

Different Layers of the Real-Time Stack

Centrifugo is generic pub/sub infrastructure for building whatever real-time feature you need, while Conduit and ejabberd are complete chat protocol servers with federation, presence, and rooms already built in.

Centrifugo, Conduit, ejabberd

Battle-Tested at Extreme Scale

ejabberd has a documented history powering WhatsApp-influenced architecture, an early Facebook chat deployment, and the Nintendo Switch's friend and chat network, with a single node handling roughly one to two million concurrent users.

ejabberd

Simplicity-First Matrix Homeserver

Conduit ships as a single binary with an embedded database, explicitly targeting hardware as modest as a Raspberry Pi, in contrast to the more resource-heavy Synapse.

Conduit

Multi-Transport Flexibility

Centrifugo delivers messages over WebSocket, HTTP-streaming, Server-Sent Events, WebTransport, and gRPC, and scales horizontally using Redis, PostgreSQL, or NATS as the coordination layer.

Centrifugo

Free Open-Source Cores With Optional Paid Tiers

All three ship a free open-source core (Apache 2.0 for Centrifugo and Conduit, GPLv2 for ejabberd's Community Edition), with Centrifugo PRO and ejabberd's Business Edition available as custom-priced enterprise add-ons; Conduit has no commercial tier at all.

Centrifugo, Conduit, ejabberd

Feature-by-Feature

Protocol and Messaging Model

FeatureCentrifugoConduitejabberd
Dedicated federated chat protocol (Matrix or XMPP)UnavailableAvailableAvailable
Generic pub/sub channels over multiple transportsAvailableUnavailableUnavailable
Multi-user rooms and presence trackingAvailableAvailableAvailable

Scale and Deployment

FeatureCentrifugoConduitejabberd
Documented production scale at very high concurrencyAvailableNot documentedAvailable
Single-binary, low-resource deployment simplicityUnavailableAvailableLimited

Extensibility and Support

FeatureCentrifugoConduitejabberd
Non-chat protocol support (MQTT, SIP, or similar)UnavailableUnavailableAvailable
Official paid enterprise or support tierAvailableUnavailableAvailable

Pricing Compared

Starting price reflects the lowest paid tier, not the full cost for every team size or usage level.

Centrifugo

Open Source (Apache 2.0) — Free N/A
Centrifugo PRO — Custom N/A

Conduit

No individual plan breakdown documented yet.

ejabberd

Community Edition — Free N/A
Business Edition — Custom (contact ProcessOne) Annual
Fluux (managed cloud) — Custom (contact ProcessOne) Subscription

Pros & Cons

Centrifugo

Pros

  • Free, Apache 2.0-licensed core with no per-connection or per-message fees
  • Production-proven at scale by companies including VK, Badoo, ManyChat, and Grafana
  • Supports multiple transports and scaling backends rather than locking teams into one stack
  • Broad official SDK coverage across web, mobile, and backend languages

Cons

  • Requires engineering effort to deploy, secure, and integrate versus a plug-and-play hosted API
  • Centrifugo PRO pricing is not publicly listed, requiring direct contact for enterprise features
  • Self-hosted operation means the adopting team is responsible for uptime, scaling, and monitoring
  • No official company headquarters or large support organization behind the open-source core

Conduit

Pros

  • Much simpler setup than Synapse, with no external database to manage
  • Efficient enough to run on low-cost, low-resource hardware
  • Free and open source with no vendor or subscription
  • Full Matrix federation compatibility with other homeservers and bridges

Cons

  • Labeled beta and missing some smaller features found in Synapse
  • Smaller plugin/module ecosystem than more mature homeservers
  • Development has partly moved into community forks (Conduwuit, Tuwunel), which can create confusion about which project to use
  • Requires technical comfort with self-hosting and server administration

ejabberd

Pros

  • Proven at extreme scale, having powered WhatsApp-influenced architecture and the Nintendo Switch's chat network
  • Fully open-source Community Edition with no licensing cost for self-hosted production use
  • Multi-protocol support (XMPP, MQTT, SIP) in a single server reduces infrastructure sprawl
  • Erlang-based architecture provides strong fault tolerance and horizontal clustering

Cons

  • Erlang is a niche language, which can raise the learning curve for teams without prior experience
  • Business Edition and Fluux cloud pricing are not published and require direct sales contact
  • XMPP as a protocol is older and less trendy than newer alternatives like Matrix for end-to-end encrypted messaging
  • Community Edition support relies on community forums and documentation rather than a formal SLA

Use Cases

Choose Centrifugo: Engineering teams building custom real-time features, such as chat, live feeds, dashboards, or multiplayer state, into their own application who want a lightweight pub/sub layer rather than a full chat protocol server.
Choose Conduit: Privacy-conscious individuals and small teams who want the simplest possible self-hosted Matrix homeserver, running on minimal hardware without managing a separate database.
Choose ejabberd: Organizations that need a proven, horizontally scalable messaging backbone across XMPP, MQTT, and SIP, especially at very high concurrency or in IoT and telecom contexts.

Centrifugo

  • In-App Chat & Live Comments — Development teams use Centrifugo to power real-time chat and live comment features without depending on a hosted third-party API.
  • AI Response Streaming — Applications use Centrifugo to stream partial LLM/AI responses to clients as they are generated.

Conduit

  • Self-Hosted Personal or Family Chat Server — Privacy-focused individuals run their own Matrix homeserver instead of relying on a third-party chat provider.
  • Lightweight Community Server on Low-Cost Hardware — Small communities and organizations self-host federated chat on inexpensive infrastructure like a Raspberry Pi or small VPS.

ejabberd

  • In-app chat for consumer apps — Engineering teams embed ejabberd as the real-time messaging backend for chat features in mobile and web applications.
  • IoT device messaging — Companies use ejabberd's built-in MQTT broker to handle telemetry and command messaging between IoT devices and backend systems.
  • Large-scale gaming and telecom infrastructure — Gaming platforms and telecom operators deploy ejabberd clusters to handle millions of concurrent presence and messaging connections.

Frequently Asked Questions

Is Centrifugo a chat server like Conduit and ejabberd?

Not exactly. Centrifugo is a generic real-time pub/sub message broker used to build chat, live feeds, dashboards, or multiplayer features into a custom application, whereas Conduit and ejabberd are complete chat protocol servers with federation, rooms, and presence already implemented.

Which of the three has been proven at the largest scale?

ejabberd has the longest documented history at extreme scale, with reported use in WhatsApp-influenced early architecture, a modified deployment behind Facebook's early chat.facebook.com, and the Nintendo Switch's friend and chat network.

Which is easiest to self-host on minimal hardware?

Conduit, since it ships as a single binary with an embedded RocksDB database and explicitly targets hardware as modest as a Raspberry Pi, avoiding the need to separately manage PostgreSQL or another external database.

Do any of these support protocols beyond chat, like IoT messaging?

Yes. ejabberd bundles a native MQTT broker for IoT devices and a SIP proxy for voice signaling alongside XMPP chat. Centrifugo can carry IoT or dashboard data over its generic pub/sub channels, while Conduit is Matrix-only.

Are there paid versions of these open-source projects?

Centrifugo PRO and ejabberd's Business Edition and Fluux managed cloud service are both custom-priced enterprise options sold alongside the free open-source cores. Conduit has no company or commercial tier behind it.

Is Conduit production-ready?

Conduit's own documentation describes it as beta: usable in real deployments but still missing some smaller features found in more mature homeservers like Synapse, and its development has partly diverged into community forks such as Conduwuit and Tuwunel.

Read the full Centrifugo review · Read the full Conduit review · Read the full ejabberd review