Threema

Best Self Hosted Alternatives to Threema

A curated collection of the 8 best self hosted alternatives to Threema.

End-to-end encrypted instant messaging service providing secure one-to-one and group chats, voice and video calls, and file sharing. Offers a managed business edition with an admin console (Threema Work) and an on-premises deployment option for data sovereignty.

Alternatives List

#1
Tinode

Tinode

Tinode is an open source instant messaging platform with a Go backend, web/mobile clients, JSON WebSocket and gRPC APIs, and support for one-to-one and group chat.

Tinode screenshot

Tinode is a full-stack instant messaging platform designed for building modern chat applications. It provides a Go-based server, official clients for web and mobile, and APIs that support custom integrations such as chatbots and automated agents.

Key Features

  • One-to-one messaging, group chats, and broadcast-style channels with read-only subscribers
  • Real-time delivery, read receipts, typing indicators, and presence notifications
  • Rich message content: markdown-style formatting, inline media, and file attachments
  • Voice and video calls, plus voice messages
  • Granular per-topic access control and server-side blocking controls
  • Extensible architecture with plugins for features like moderation and chatbots
  • JSON over WebSocket (with optional long polling) and Protobuf over gRPC
  • Pluggable database layer with support for PostgreSQL, MySQL/MariaDB, and MongoDB
  • Media/file handling via local filesystem or S3-compatible storage backends

Use Cases

  • Building a custom consumer or community chat app (mobile + web)
  • Adding in-app messaging, support chat, or anonymous chat to a product
  • Developing bot-driven workflows and integrations using the messaging APIs

Limitations and Considerations

  • Federation and end-to-end encryption are listed as planned features and may not be available
  • Some advanced capabilities (for example, full-text message search) are planned rather than included by default

Tinode fits teams that want an embeddable messaging backend with strong real-time features and multiple official clients. Its API options and extensibility make it suitable for both standalone chat products and messaging features inside existing applications.

13kstars
2kforks
#2
SimpleX Chat

SimpleX Chat

Open-source, decentralized messaging network built on a Haskell core with Kotlin Multiplatform and native iOS clients; end-to-end encrypted messaging without user IDs.

SimpleX Chat screenshot

SimpleX Chat is an open-source, privacy-first messaging network designed to operate without any user identifiers. It provides mobile, desktop and terminal clients built on a Haskell core, delivering end-to-end encrypted messaging and group/community features while letting operators run their own servers.

Key Features

  • Messaging without user identifiers: the network is designed to deliver messages and form connections without persistent numeric or textual user IDs.
  • Strong encryption: double-ratchet end-to-end encryption with an additional encryption layer and local database encryption (SQLCipher/SQLite for device storage).
  • Haskell core with native UI bridges: a Haskell-based core library exposed to client UIs via FFI, used by Kotlin Multiplatform (Android/desktop) and native iOS (Swift) apps.
  • Multiple clients and runtimes: Android (Kotlin Multiplatform), iOS (Swift), desktop builds and a terminal/CLI client for Linux/macOS/Windows.
  • Flexible storage backends: SQLite (default for mobile/desktop) and PostgreSQL support for server-side deployments; storage abstraction via a unified store interface.
  • Extensible platform: bots API, SDKs and a directory service for discoverable communities and group moderation tools.
  • Cross-platform build tooling: builds and cross-compilation support using Cabal/Nix and Docker-based build scripts, with prebuilt packages distributed via Play Store, F‑Droid, TestFlight and direct APKs.

Use Cases

  • Private one-to-one messaging and group conversations where participants do not want persistent user identifiers.
  • Community-run groups and moderated communities using the SimpleX directory and community voucher model for server funding.
  • Developers building bots, automations or integrations using the provided bots API and client SDKs.

Limitations and Considerations

  • Platform/build complexity: the Haskell core and cross-compilation workflow make local builds more involved than typical native apps; building from source normally requires Haskell tooling, Nix or Docker images.
  • Mobile support constraints: historically builds targeted newer Android versions and specific CPU architectures; current official builds require modern mobile OS versions (Android 8+ minimum is documented) and some legacy devices may need experimental APKs.

SimpleX Chat is focused on strong privacy guarantees, decentralization and developer extensibility. It is suited for users and communities that require encrypted messaging without traditional identifiers and for developers who want to build bots or host community servers.

10.2kstars
545forks
#3
Synapse

Synapse

Synapse is a Matrix homeserver implementation for running federated, secure real-time chat and collaboration on your own infrastructure.

Synapse screenshot

Synapse is a Matrix homeserver implementation that powers federated, end-to-end encrypted real-time communication using the open Matrix protocol. It provides the core server-side APIs needed for Matrix clients and for federation with other Matrix servers.

Key Features

  • Matrix Client-Server API for chat, rooms, presence, and device management
  • Server-to-Server federation to communicate with other Matrix homeservers
  • End-to-end encryption support via Matrix encryption primitives and device tracking
  • Moderation and administration capabilities for users, rooms, and server policy
  • Pluggable authentication options (commonly used with SSO/OIDC deployments)
  • Scales from small communities to large deployments with supported production setups

Use Cases

  • Running a private or community Matrix chat server with federation support
  • Operating an enterprise messaging backend for Matrix clients (including Element)
  • Hosting regulated or controlled-communication deployments with central administration

Limitations and Considerations

  • Requires careful operational tuning for larger instances (database, caching, and workers)
  • Feature completeness can depend on Matrix spec evolution and enabled server modules

Synapse is widely used in the Matrix ecosystem and is actively maintained, providing a stable foundation for self-managed, interoperable real-time communications. It is typically deployed alongside a reverse proxy and other Matrix components depending on the desired feature set.

3.4kstars
437forks
#4
Tox

Tox

Tox is a decentralized, peer-to-peer communication system for encrypted messaging, voice/video calls, screen sharing, and file transfers without central servers.

Tox screenshot

Tox is a peer-to-peer (serverless) communication network and protocol used by messaging clients to provide private conversations without relying on central servers. It focuses on end-to-end encrypted chat and real-time audio/video features while keeping user identities based on cryptographic keys.

Key Features

  • Peer-to-peer networking without central servers for message routing
  • End-to-end encryption and authentication implemented via libsodium/NaCl primitives
  • Instant messaging with friend requests and contact-style identities (public-key based)
  • Encrypted voice and video calls (A/V support depends on client build)
  • Screen sharing and file sharing support in Tox clients
  • Group chats supported by the protocol and ecosystem clients

Use Cases

  • Private one-to-one messaging and calls without a hosted backend
  • Building custom bots or automation around the Toxcore client library API
  • Secure team or community group chats in environments where central servers are undesirable

Limitations and Considerations

  • The core library and network have historically been described as experimental and not formally audited as a complete system
  • Bootstrapping into the network requires known bootstrap nodes and proper client configuration

Tox is best viewed as the underlying protocol and core library (Toxcore) powering multiple desktop and mobile clients. It is a strong fit for users who want decentralized communications with modern encryption and a client ecosystem rather than a single hosted service.

2.5kstars
307forks
#5
Databag

Databag

Self-hosted, lightweight federated messenger with end-to-end encrypted threads and optional WebRTC audio/video calling across independently hosted nodes.

Databag screenshot

Databag is a fast, lightweight self-hosted messenger designed to run on minimal hardware while still supporting modern messaging features. It is federated, allowing users on different independently hosted nodes to communicate directly with strong cryptographic identities and end-to-end encryption.

Key Features

  • Federated messaging between accounts on different nodes
  • Public/private key based identity that is not tied to a hosting domain
  • End-to-end encryption for sealed topics so the server admin cannot read content
  • Topic-based threads to organize conversations by subject
  • Unlimited participants in group threads
  • Low-latency push using WebSockets (avoids polling)
  • Optional audio and video calls using WebRTC (requires STUN/TURN for NAT traversal)
  • Multi-factor authentication via TOTP
  • Mobile push notifications (UnifiedPush, FCM, APN)

Use Cases

  • Private family or small-community messaging on a personal server or low-power device
  • Federated messaging between multiple organizations without a central provider
  • Secure group threads for projects where message privacy is required

Limitations and Considerations

  • WebRTC calls typically require configuring a STUN/TURN relay to work reliably behind NAT

Databag focuses on efficiency and decentralization while keeping the deployment simple enough for home servers. It fits best for users who want federated communication, end-to-end encryption, and optional calling without heavy infrastructure.

1.4kstars
92forks
#6
Snikket

Snikket

Self-hosted, open-source XMPP-based messaging server providing end-to-end encryption, multi-device sync, federation, secure backups, and integrated WebRTC audio/video calling.

Snikket screenshot

Snikket is an open-source, XMPP-based messaging server designed to give groups and organisations a privacy-focused alternative to centralized messaging platforms. It provides account and instance management, multi-device synchronization, secure backups, and integrated audio/video calling.

Key Features

  • Uses the XMPP protocol with a Prosody-based server stack and an admin web portal for account and invitation management.
  • End-to-end encryption for private messaging and groups; supports read/typing indicators and media/file sharing.
  • Multi-device support with synced conversations and invitation-link-based onboarding for new users.
  • Integrated WebRTC audio/video calling with built-in STUN/TURN support to improve connectivity across NATs and firewalls.
  • Secure encrypted backups for restoring conversations on new devices.
  • Federation support (server-to-server/XMPP s2s) so instances can communicate across the wider XMPP network.
  • Distributed as Docker images with an opinionated, easy quick-start using docker compose and configuration templates.

Use Cases

  • Small communities, families, or teams that need a privacy-respecting group chat and calling platform under their control.
  • Organisations wanting a standards-based messaging stack (XMPP) with federation and multi-device synchronization.
  • Projects or communities that prefer open-source, auditable server software with invitation-based onboarding and encrypted backups.

Limitations and Considerations

  • Requires control of network ports (HTTP(S), XMPP c2s/s2s and UDP port ranges for STUN/TURN); may need reverse-proxying if other web services run on the same host.
  • Not intended as a drop-in replacement for highly customised multi-domain XMPP deployments; advanced or niche XMPP features may require working directly with underlying Prosody configuration.
  • The project is actively developed and some features are marked as previews or feature-flagged; operators should follow release notes and upgrade guidance.

Snikket offers a focused, standards-based messaging server that balances usability with privacy and federation. It is suited for operators who want an integrated, well-documented XMPP stack with built-in calling and backup features.

356stars
38forks
#7
SAMA

SAMA

SAMA is a Node.js-based open-source chat server using uWebSockets.js, MongoDB and Redis, providing WebSocket/HTTP APIs, E2EE, clustering, and web/mobile clients.

SAMA screenshot

SAMA is an open-source messaging server designed as a modern alternative to legacy chat protocols. It provides real-time WebSocket and HTTP APIs for users, conversations, messages, activities and address books, and ships with reference web and mobile clients.

Key Features

  • High-performance WebSocket core powered by uWebSockets.js for low-latency messaging
  • REST and real-time APIs covering Users, Conversations, Messages, Activities, Address Book and Push Notifications
  • Persistent storage using MongoDB and ephemeral/state features backed by Redis (presence, caching/pubsub)
  • End-to-end encryption support and built-in push notification flows
  • Clustering and horizontal scaling primitives for multi-node deployments
  • Docker-friendly deployment and reference frontend (web) and Flutter mobile clients
  • GPL-3.0 licensed project with an emphasis on a compact, modern protocol alternative to XMPP

Use Cases

  • Add real-time chat, group conversations and activity streams to mobile and web applications
  • Build team chat or community messaging platforms with end-to-end encryption and push notifications
  • Implement lightweight, scalable messaging backends for consumer or enterprise apps requiring low latency

Limitations and Considerations

  • Uses a custom SAMA protocol (designed as an alternative to XMPP) which has a smaller ecosystem and fewer third-party clients
  • GPL-3.0 license can restrict embedding into proprietary products without complying with license terms
  • High-concurrency deployments require tuning and appropriate resources for uWebSockets.js, MongoDB and Redis

SAMA is a focused chat server for teams and apps that need a high-performance, modern messaging backend. It is suitable for projects that can adopt its protocol and license model and want a Docker-friendly, scalable real-time messaging stack.

147stars
12forks
#8
Jami

Jami

Jami is a distributed communication platform for private messaging, audio/video calls, and conferencing, designed to work without central servers and with end-to-end encryption.

Jami is a distributed communication platform for private messaging and real-time audio/video communication. It is designed to work without relying on central servers, aiming to keep user communications private and resilient.

Key Features

  • Peer-to-peer messaging and calling with a distributed architecture
  • Audio and video calls, including multi-party conferencing
  • End-to-end encryption for communications
  • Account creation without phone numbers and support for multiple devices
  • Contact management and conversation history synchronization between devices

Use Cases

  • Private team or family communication without depending on centralized services
  • Secure voice/video calling for communities with unreliable infrastructure
  • Self-managed communications for organizations with strict privacy requirements

Jami is a strong choice for users who want a privacy-respecting communications app with a decentralized design. It combines everyday chat and calling features with an architecture intended to reduce reliance on third-party servers.

Why choose an open source alternative?

  • Data ownership: Keep your data on your own servers
  • No vendor lock-in: Freedom to switch or modify at any time
  • Cost savings: Reduce or eliminate subscription fees
  • Transparency: Audit the code and know exactly what's running