Three open-source tools give you Slack's layout, with public and private channels, direct messages and threads, on a server you run. Where their free editions stop is what sets them apart. Mattermost and Rocket.Chat each have their own server, mobile and desktop apps, and two free editions: one keeps SSO but is sized for about 50 users, the other is MIT-licensed and takes more users with fewer features. High availability on Mattermost and Matrix federation on Rocket.Chat need a paid plan. OpenHive has no paid edition and no native app: it is a Next.js app wired to a Supabase project, at version 0.1.0 with no release yet.
Mattermost and Rocket.Chat each have two free editions
Mattermost and Rocket.Chat both pitch themselves at defense and critical infrastructure, yet their free editions are built for small teams.
Mattermost ships two binaries. The Team Edition binary is MIT-licensed, meant for fewer than 250 activated users, and has no SSO; the docs advise against it for government or sensitive workloads. The Enterprise binary has a free mode called Entry, which includes the features of the Enterprise Advanced plan, SAML, Entra ID and OpenID SSO among them. Entry is recommended for under 50 users, has no high availability or compliance features, and shows only 10,000 messages of history across the whole server. Older messages stay in the database, but they no longer appear and search can't find them. The docs announce more caps for a future release: 40-minute calls, 5 playbook runs, 250 AI agent queries and 10,000 push notifications a month.
Rocket.Chat puts every workspace deployed on version 6.5 or later on its Starter plan. Starter is free and capped at 50 users, yet it keeps LDAP and Active Directory sign-in, SSO, two-factor authentication, end-to-end encryption and unlimited push notifications. Past 50 users, the workspace refuses new accounts but leaves existing ones alone. The other free route is Community, the MIT edition: 100 concurrent users, 10,000 push notifications a month, video through Jitsi or BigBlueButton only, and a plans page that calls it unsuitable for organizations that rely on Rocket.Chat for business-critical operations.
OpenHive has a single edition and no hosted offer; its README only links to a public demo.
What the paid plans hold back
Mattermost's paid plans lift the Entry caps and add commercial support; Professional is meant for 250 users at most. High availability clustering, Elasticsearch or OpenSearch search, compliance export and message retention policies need the Enterprise plan. No prices are listed: the pricing page sends you to sales.
Rocket.Chat keeps federation, air-gapped installs and, since 8.9.0, the new custom sidebar categories for its paid plans. Those plans, Commercial, Government and Defense, are priced on request, and Pro has been closed to new buyers since 29 April 2026.
Both vendors have moved the line recently. With v11 in October 2025, Mattermost cut the Team Edition cap from 1,000 to 250 users and dropped GitLab SSO from it. Rocket.Chat warns that signing in through a custom OAuth provider, which works without a licence today, will need one from 9.0.0 on.
That line is written into each repository. Rocket.Chat releases all its code under MIT except the ee/ and apps/meteor/ee/ directories, which fall under the Rocket.Chat Enterprise Edition licence: you can modify them, but running them in production takes a subscription for the right number of seats. Mattermost stacks more layers. Its source code is under AGPL-3.0 or a commercial licence, the Team binary it builds is MIT, the webapp/ interface is Apache-2.0, and the server/enterprise directory is under a source-available licence that requires an Enterprise subscription in production. A Mattermost fork built by someone else therefore stays AGPL. OpenHive has no separate directory: the whole repository is MIT.
What each tool needs to run
Read from the repositories and documentation on 7 October 2026.
| Tool | Licence | What you run | Free editions | Calls | Latest release |
|---|---|---|---|---|---|
| Mattermost | AGPL-3.0; Team binary under MIT, server/enterprise source-available | a Go binary, PostgreSQL 14 or later; 1 vCPU and 2 GB up to 1,000 users | Team, under 250 users, no SSO; Entry, under 50 recommended | one-to-one audio and screen sharing; group calls on Professional, Enterprise or Cloud | 11.11.1, 24 Sep 2026; v12 due 14 Oct |
| Rocket.Chat | MIT, except the ee/ directories | Docker, Podman or Kubernetes; MongoDB 8.0 with three replicas; 2 vCPUs and 4 GB for the server, the same for MongoDB | Starter, 50 users at most; Community, 100 concurrent | video through Jitsi, BigBlueButton, Pexip, Google Meet or Zoom | 8.9.0, 5 Oct 2026, supported until 31 Oct 2027 |
| OpenHive | MIT | a Next.js app (Node.js 18 or later) and a Supabase project; memory not documented | a single edition, no paid plan | audio, video and screen sharing through LiveKit, optional | no release; 0.1.0 in package.json |
Mattermost runs as a single Linux binary on a 64-bit x86 processor. Its docs size 1 vCPU and 2 GB of RAM for up to 1,000 users, and 2 vCPUs and 4 GB for up to 2,000. Built-in search runs in PostgreSQL and is meant for fewer than 2 to 3 million posts and files; past that, the docs recommend Elasticsearch or OpenSearch, which means the Enterprise plan. MySQL has been deprecated since v11, and v12 will require PostgreSQL 15.
Rocket.Chat runs on MongoDB 8.0. The smallest profile on its system requirements page lists 2 vCPUs and 4 GB of RAM for Rocket.Chat, the same for MongoDB, with three MongoDB replicas. A manual install of 8.9.0 needs Node.js 24.15.0.
OpenHive has no server of its own: a Supabase project holds the PostgreSQL database, user accounts, realtime updates and file storage. Its setup wizard only accepts a Supabase Cloud project, with a xxxxx.supabase.co URL and an sbp_ access token, and the README doesn't cover a self-hosted Supabase. The Next.js app can run anywhere, but the repository ships no Dockerfile and no Compose file. Invitation emails go out by default through Supabase's mail service, which the README puts at 3 to 4 emails an hour on the free plan.
Calls, mobile apps and federation
Mattermost offers one-to-one audio calls with screen sharing in direct messages, which its docs open to all customers. For group calls of up to 50 people, the calls documentation asks for Professional, Enterprise or Cloud, and says nothing about Entry, even though Entry includes the Enterprise Advanced features and its calls will be capped at 40 minutes in a future release. Video is experimental and limited to direct message calls on the web and desktop app, and recording and transcription belong to the Enterprise plan. Rocket.Chat hands video off to outside services: Jitsi, BigBlueButton, Pexip, Google Meet or Zoom on Starter, and only Jitsi and BigBlueButton on Community. OpenHive uses LiveKit, if you add it: audio, video and screen sharing in a channel or a direct message, against LiveKit Cloud or your own LiveKit server, with credentials entered per workspace.
Mattermost and Rocket.Chat both have apps for Android, iOS, Windows, macOS and Linux, and their push notifications go through a service run by the vendor. Mattermost opens its hosted service (HPNS) to Professional, Enterprise and Cloud customers, announces a future cap of 10,000 notifications a month for Entry, and advises against using its test service (TPNS) in production, since it comes with no service level agreement. Rocket.Chat's gateway requires you to register the workspace and accept its cloud service terms; Starter puts no cap on push notifications, and Community stops at 10,000 a month. OpenHive is a responsive web app with no native apps, and PWA install sits among the unchecked ideas in its README.
Federation splits the two vendors as well. Rocket.Chat links independent workspaces over the Matrix protocol, provided you hold a paid plan licence with the Federation add-on; if that licence lapses, federated rooms go read-only. Mattermost only links Mattermost instances: its connected workspaces sync a channel's messages, reactions and files, and the docs limit them to the Entry and Enterprise editions. So the free Entry edition gets them, while Team and the paid Professional plan don't. OpenHive's README describes no federation, although its schema includes shared_channel_links and remote_profiles tables that it doesn't document.
Bringing your Slack history over
Rocket.Chat ships an importer in its MIT code that reads a Slack export archive (users, channels, messages), plus a second one for CSV files.
Mattermost uses two tools: mmetl converts the Slack export into its bulk import format, then mmctl loads it. You run the export itself on the Slack side. The docs offer this migration on Entry, Professional, Enterprise and Enterprise Advanced, not on Team. It carries over users, public and private channels, direct messages, group messages of up to 8 members (larger groups become private channels), message history with thread replies, reactions and attached files. Slack Connect channels, custom emoji images, user groups, profile pictures, integrations and workflows don't make the trip. On Entry, an imported history longer than 10,000 messages stays in the database, but only the most recent ones show up.
OpenHive's README mentions no import at all.
Where the projects stand
Mattermost ships a release on the 16th of every month, and an extended support release (ESR) every nine months, patched for twelve; the current ESR, 11.7, is maintained until 15 May 2027. Its v12 has been in release candidate since 18 September and is due on 14 October 2026; it will drop support for RHEL 7 and 8.
Rocket.Chat ships roughly one minor version a month, from 8.3.0 on 7 April 2026 to 8.9.0 on 5 October. 8.9.0 is a long-term support release, maintained until 31 October 2027, against six months for a standard one.
OpenHive has no releases or tags. Its whole codebase arrived in a single commit dated 11 March 2026, followed by three commits from an outside contributor, merged on 21 August. Its package.json has no test script, and the repository has no CI. The code also departs from the README in two places: search, billed as full-text, filters messages with ILIKE and returns the ten most recent matches, with no index, and scheduled messages are sent from their author's browser, so with the tab closed they wait until the workspace is opened again.
