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

ejabberd

Open source

ejabberd from ProcessOne is an Erlang-based, scalable realtime messaging platform that includes an XMPP server, an MQTT broker and a SIP service.

process-one.net
ejabberd homepage screenshot
GitHub stars
6.7k
Last commit
yesterday
Repository age
16 years
Version
26.09
Licence
Custom
Self-hosted
Yes

About ejabberd

This entry covers ejabberd, the messaging server developed by ProcessOne. It is an open-source realtime platform built on Erlang/OTP that includes an XMPP server, an MQTT broker and a SIP service. It is aimed at running chat, presence and messaging infrastructure, and its topics also mention group chat, pubsub, STUN and TURN, IoT, VoIP and Matrix.

ejabberd can be installed in several ways: compiling from source, using installers and packages from the ProcessOne download page or GitHub releases, running container images for x64 and arm64, using operating system packages or Homebrew. After installation it is controlled with the ejabberdctl command and configured in an ejabberd.yml file. Documentation, a list of supported protocols and a features page are available on the project sites.

Bug reports and features are tracked on GitHub, translations are managed on Weblate, and nightly builds exist for the master branch and pull requests. It is written in Erlang, and the repository lists the license as Other, so review the licence file. It suits organizations and service providers that want to host their own messaging service.

Key features

  • XMPP server for instant messaging
  • MQTT broker for IoT messaging
  • SIP service for voice calls
  • Built on Erlang/OTP for scalability
  • Installers, containers and OS packages
  • ejabberdctl command-line control
  • Translations managed on Weblate

Good fit for

  • →Self-hosted chat and presence servers
  • →IoT messaging over MQTT
  • →Messaging back ends for apps and services
Built with
Erlang
Tags
xmpp
mqtt
sip
messaging
erlang
chat-server
realtime
self-hosted
voip

ejabberd: questions and answers

What is ejabberd used for?
ejabberd from ProcessOne is an Erlang-based, scalable realtime messaging platform that includes an XMPP server, an MQTT broker and a SIP service. It is a good fit for self-hosted chat and presence servers, IoT messaging over MQTT, and messaging back ends for apps and services.
Is ejabberd open source?
Yes. ejabberd is open source under a custom licence. Its source code is on GitHub at processone/ejabberd and is written mainly in Erlang.
Is ejabberd free?
Yes. ejabberd is open source, so the software itself is free to use under the terms of its own licence.
Can I self-host ejabberd?
Yes. ejabberd can be self-hosted on your own server or infrastructure.
What are some alternatives to ejabberd?
Similar open-source tools in the Team Chat category include MongooseIM, Asterisk and Openfire. SaaS products in the same category include imo, Troop Messenger and Vonage Business.
Is ejabberd actively maintained?
Yes. The most recent commit to ejabberd was on 1 October 2026, and the latest release is 26.09, published on 30 September 2026. The project has 6.7k stars on GitHub.

Open-source alternatives to ejabberd

See all

SaaS alternatives to ejabberd

See all