Messenger Comparison Table

This is not intended to be an extremely comprehensive list, but enough to get a grasp on the situation.

The only client for now that we recommend is Conversations, a top notch XMPP client, fully supports the OMEMO XEP, is easy on the battery, and doesn't force you into a walled garden. It is not the easiest thing getting your friends and family to switch apps, so at the very least any apps with end-to-end encryption (E2EE) support should always be preferred over apps without.
Remember to always verify your partner's E2EE keys when possible, as it is arguably useless otherwise.

For a much larger list of messengers see this overview and their "Why Not?" list.

Last updated: 2023/09/17

NameFOSS ClientNon-Free DependenciesFOSS ServerProtocolFederatedDecentralizedEncryptionE2EE by DefaultE2EE uses PFSDesktop ClientWeb ClientFile SharingVoice CallingVideo CallingMulti-Device SupportOffline MessagingPhone Number
ConversationsGPLv3F-Droid: No, Play: YesYes: prosody/ejabberdXMPPYesYesTLS + OMEMO E2EEIn private chatsYesYesYesYesYesYesYesYesNot needed
ElementApacheF-Droid: No, Play: YesYes: synapseMatrixYesYesTLS + Olm/Megolm E2EEIn private chats1:1 chats only?YesYesYesYesYesYesYesNot needed
SignalGPLv3Play/Website: Yes, GMSCode over wallCustomNoNoTLS + Signal E2EEAlwaysYesYesNoYesYesYesWith PhoneYesAs identifier
SimpleXAGPLv3NoYes: SimpleXMQ SMPCustomYesYesCustom E2EEAlwaysYesYesNoYesYesYesWIPYesNot needed
Jami/RingGPLv3F-Droid: No, Play: YesYes: opendhtCustomN/AYesTLS + Custom E2EEAlwaysUnknownYesNoYesYesYesYesNoNot needed
SessionGPLv3F-Droid: No, Play: YesUnclearCustomN/AYesCustom E2EEIn private chatsNoYesNoYesWIPWIPYesYesNot needed
Delta ChatGPLv3F-Droid: No, Play: YesN/AE-MailYesYesTLS + OpenPGP E2EETo contacts with AutoCryptNoYesYesYesNoNoYesYesNot needed
BriarGPLv3NoN/ACustomN/AYesCustom E2EEAlwaysYesWIPNoImages OnlyNoNoNovia Mailbox on 2nd deviceNot needed
Silence (deprecated)GPLv3NoN/ASMSYesYesSignal E2EETo contacts with SilenceYesNoNoImages OnlyNoNoN/AMaybeAs identifier
WireGPLv3F-Droid: No, Play: YesYesCustomNoNoTLS + Custom E2EEAlwaysYesYesYesYesYesYesYesYesNot needed
ThreemaAGPLv3F-Droid*: No, Play: YesNoCustomNoNoTLS + Custom E2EEAlwaysYesYesYesYesYesYesWith PhoneYesNot needed
TelegramGPLv2F-Droid: No, Play: YesNoCustomNoNoTLS + Custom E2EENoPer 100/msgs in secret chatsYesYesYesYesYesYesYesAs identifier
WhatsAppNoYesNoCustomNoNoTLS + Signal E2EEAlwaysYesYesYesYesYesYesWith PhoneYesAs identifier
Facebook MessengerNoYesNoCustomNoNoTLS + Signal E2EENoYesNoYesYesYesYesYesYesFor signup
Google ChatNoYesNoCustomNoNoTLSNoN/ANoYesYesYesYesYesYesFor signup
SkypeNoYesNoCustomNoNoTLS + Custom E2EENoUnknownYesYesYesYesYesYesYesFor signup

Criteria:

  • Offline messaging is the ability for a party to send a message to an offline party, go offline themself, and the other party to later receive the message when back online while the sending party was still offline.

2024 Fundraiser
Donate Now