Chat app showdown

Back by popular demand!

This page is still being updated

There are dozens of chat apps to choose from for team collaboration. They’re all difficult to test out before fully committing, and like to hide features across price levels. This has been an ongoing discussion at the NTC for some time, and I hope this page keeps the important data points in one place. Some priors:

  • We have ~80,000 members. Only a fraction of these are on the forum or their local Slack/chat server, but paying for these users at even $2 per month would be too expensive. Nobody prices below this; they don’t price close to this. We therefore have to rely on free services or self-host.
  • We have the resources to self-host only one server. We do not have the money or labor hours to set up each chapter with a self-hosted solution, unless there is a coordination tool that reduces this (like Gridpane for WordPress).
  • We can afford cost-effective solutions to manage open-source projects that allow us to replace an expensive vendor or hacked-together solutions with something better (like how Gridpane, at a single yearly fee, is replacing dozens of individual servers, or how we pay for Open Slides a relatively small amount for hosting)
  • Users will be in more than one organization/server (National DSA, their local chapter, a working group) so the ability to switch between these is essential
  • DSA has many members from a wide array of backgrounds, many without office jobs or prior exposure to collaboration technology. Usability is therefore critical.

This chat only includes features you can get for free, or in the case of self-hosted applications, after self-hosting the app.

SlackDiscordZulipMattermostMatrix/ElementRocket Chat
Open-source❌Open Core❌Open Core
Hosting methodCloudCloudSelfSelfSelfSelf
Message history90 daysUnlimitedUnlimitedUnlimitedUnlimitedUnlimited
Single Sign-On w/Keycloak
Multi-account/server supportNo multi-account support
Mobile App with Multi-account/server supportNo multi-account support
Encrypted messagingYes, in encrypted rooms
SearchGood, but only 90 daysIt’s badFull-text search (PostgreSQL)Full-text search (PostgreSQL)Channels only
Emoji Reacts✅CustomCustom, with limitations✅Custom✅CustomFixed set
ThreadingBad✅(Topics-based)In beta
Add users to only specified channels on join❌ all channels😭
Integrations❌ capped at tenOK❌ not many
Shared / Guest channels (add user without an account to channel)No, but accounts are public anyway?

I’m a big fan of Zulip as it hits all of our requirements, and it’s funded by a mix of grant money and paying cloud customers. But its biggest feature is also its biggest pain point – the threading model is powerful, great for knowledge retention, and keeps conversations cleaner, but can be challenging for new users to understand.

If we don’t want to use Zulip’s thread model, Mattermost is the only feasible option left. If we’re lucky, we could get some kind of huge bulk discount on Mattermost enterprise. If we aren’t, I wouldn’t see any reason to move away from free Slacks.

Discord is popular, especially with younger and more tech-forward people, but the extremely poor first join experience is a huge reason not to choose it. Discord is also still trying to monetize (they aren’t profitable just from Nitro subs), which is leading to unexpected behavior (like popups for a $4.99 holiday themed profile frame) and I think this is a huge risk to Discord’s long-term usability.

Every other app on this list is an enterprise product or a pure open-source project – neither of those categories tend to have their apps change drastically overnight. Discord is a consumer product from a massive tech company that doesn’t turn a profit – those do not have good track records for long-term survival.