Tinode
Matrix & XMPPOpen-source instant messaging server
Replaces WhatsApp, Slack
Self-hosted Matrix and XMPP servers, clients, and bridges for federated real-time messaging.
59 self-hosted apps · 345 comparisons
Open-source instant messaging server
Replaces WhatsApp, Slack
Glossy Matrix client for the web and desktop
Replaces Slack, Discord
Robust, scalable XMPP messaging server
Replaces Slack, WhatsApp
Second-generation Matrix homeserver written in Go
Replaces Slack, Discord
Reference homeserver for the Matrix network
Replaces Slack, Discord
Simple, elegant and secure Matrix client
Replaces Slack, Discord
Web-based XMPP/Jabber chat client
Replaces Slack
Cute, cross-platform Matrix messenger
Replaces WhatsApp, Telegram
Real-time collaboration XMPP server written in Java
Replaces Slack, Microsoft Teams
Simple, fast and reliable chat server powered by Matrix based
Replaces Conduit, Dendrite
Desktop Matrix client with native Qt interface
Replaces Slack, Discord
Modern XMPP chat client for the desktop
Replaces Skype, Slack
Simple, fast and reliable Matrix homeserver in Rust
Replaces Slack, Discord
Advanced and flexible IRC bouncer
Replaces IRCCloud
Social and chat platform built on XMPP
Replaces Facebook, Slack
Matrix-WhatsApp puppeting bridge
Replaces WhatsApp official client
Scalable, robust XMPP messaging platform
Replaces Slack, WhatsApp
Terminal-based Matrix client written in Go
Replaces Slack, Discord
Console-based XMPP client inspired by irssi
Replaces Slack
Always-online web IRC client you can self-host
Replaces Slack, IRCCloud
Privacy-focused Matrix client built with Flutter
Replaces WhatsApp, Discord
Encrypted group video calls on Matrix
Replaces Zoom, Google Meet
Second-generation Matrix homeserver written in Go
Replaces Slack, Discord
Next-generation fast Matrix client for mobile
Replaces WhatsApp, Signal
GNOME-native Matrix messaging client
Replaces Slack, Discord
Plugin-based bot framework for Matrix chat rooms
Replaces Slack bots
JavaScript XMPP client for the browser
Replaces Slack
Web client for Matrix
Python library for building Matrix clients and bots
Replaces Slack bot SDK
Community-maintained Rust Matrix homeserver
Replaces Slack, Discord
Bridge connecting Signal messaging to Matrix
Replaces Signal
Secure desktop XMPP client with OTR encryption
Replaces Skype
Full-featured XMPP client with plugins
Replaces Skype, Slack
Matrix-Discord puppeting bridge
Replaces Discord official client
Admin UI for Matrix homeservers
Element-based Matrix client with extra usability tweaks
Replaces Slack, WhatsApp
Moderation bot for Matrix communities
Replaces Discord moderation bots
Lightweight C implementation of the XMPP server
Replaces Slack
High-performance Matrix homeserver written in C++
Replaces Slack, Discord
Highly scalable XMPP/Jabber messaging server
Replaces Slack, WhatsApp
End-to-end encryption-aware Matrix reverse proxy
OAuth 2.0 and OpenID Connect provider for Matrix homeservers
Matrix-Slack bridge application service
Replaces Slack official client
Standalone sync proxy enabling fast Matrix clients
Pure-Python XMPP client library and toolkit
Replaces Slack bots
Console XMPP client modeled after IRC clients
Replaces Slack
XMPP-to-anything puppeteering bridge framework
Replaces Beeper, Matrix bridges
Reference push notification gateway for Matrix
Replaces Firebase Cloud Messaging
Lightweight, fork-based XMPP communication server
Replaces Slack, WhatsApp
Reconciliator and gateway for managed Matrix homeservers
Replaces Slack admin tools
Plugin adding live chat to PeerTube streams
Replaces Twitch chat
Cross-platform Matrix client built with Flutter
Replaces Discord, Slack
Privacy-focused XMPP messenger for Android
Replaces WhatsApp, Signal
Command-line tool to send XMPP messages
Replaces Slack incoming webhooks
Beginner-friendly framework for Matrix bots
Replaces Slack bot framework
Meetings and messaging plugin for Openfire
Replaces Zoom, Slack
XMPP client for team messaging
Replaces Discord, Facebook Messenger
Well-maintained fork of the Conduit Matrix homeserver
Replaces Slack, Discord
Modern XMPP communication server
No apps match these filters.
Last reviewed Aug 26, 2026 · 444 words
Pick the protocol before the software. Matrix and XMPP both give you federated, encrypted chat on your own domain, but they attract different operators. Matrix is where the momentum is: modern clients, end-to-end encryption by default in private rooms, and bridges into networks you have not managed to leave yet. XMPP is where the efficiency is: ejabberd has been shipping since 2002 and will run a user count Matrix homeservers only dream about on the same hardware. Everything else in this category is a client or a bridge orbiting that one decision.
The axis that matters most is RAM against maturity. Synapse is the reference Matrix implementation, the one every client and feature is tested against, and it wants 1 GB minimum plus Postgres plus real operational attention. Dendrite, the second-generation Go homeserver from the same team, runs in about half that but still has gaps against Synapse and less large-scale mileage. On the XMPP side, ejabberd is the scalability monster of the whole category, with clustering, MQTT, and SIP built in, and a config surface to match. The second axis is who you are serving: a family of 5 will never notice Synapse's overhead, while a community of 500 will make you care about every one of these trade-offs.
A homeserver has no user interface. Budget from day one for hosting a client too: Element Web is the mature choice and runs in 128 MB as a static-ish web app next to your homeserver, with Cinny as the lighter, prettier alternative and FluffyChat covering mobile-first households. XMPP is the same story with Converse.js in the browser. Plans that end at "install the server" produce servers nobody logs into.
One more honest note: federation means the metadata of a room lives on every participating server. Self-hosting Matrix gives you control and ownership, not invisibility.
Synapse for anyone who wants the mainline Matrix experience and has 1 GB to spare, because every guide, bridge, and client assumes it. Dendrite for a Raspberry Pi or small VPS where memory is the constraint and missing edge features are tolerable. ejabberd if you already live in the XMPP world or need one server to carry thousands of users.
My default for a first-timer: Synapse with Postgres, Element Web in front, both in Docker on a 2 GB box. It is the heaviest option and still the right one, because being on the well-trodden path counts double in a protocol this young.
345 head-to-head comparisons in this category.