Zelfgehost Slack alternatief kiezen: vergelijking
Vergelijk Mattermost, Rocket.Chat, Synapse en Zulip op basis van RAM, databasebeheer, mobiele pushnotificaties en licentiekosten. Wij analyseren de werkelijke systeemeisen.
Welk zelfgehost alternatief voor Slack moet u draaien
De zelfgehoste Slack-alternatieven die de tijd van een klein team waard zijn, zijn Mattermost, Rocket.Chat, Matrix met Synapse en Zulip. Gebruik voor een interne teamtool op één server Mattermost. Gebruik voor een publieke community Zulip. Draai Matrix met Synapse alleen wanneer u moet communiceren met servers die eigendom zijn van anderen, en alleen dan, omdat federatie het enige is wat de anderen niet kunnen kopiëren en het tevens het aspect is dat uw werk als beheerder verandert.
Lijsten met functies maken geen onderscheid tussen deze vier. Ze ondersteunen allemaal kanalen, threads, zoekfuncties, bestandsuploads en mobiele apps. Wat hen onderscheidt, is wat ze maandelijks van u vragen: geheugen, een database die u in de lucht moet houden, een pad voor mobiele pushberichten waarover u mogelijk geen controle heeft, en een licentie die bepaalt of de functie die u nodig heeft achter een betaling zit. De onderstaande vergelijking is gebaseerd op deze assen, bij tien gebruikers en bij honderd.
Wat elk van de vier daadwerkelijk is
Mattermost is een Go-server met een PostgreSQL-database. Eén binary, één database, één configuratiebestand. Het gedraagt zich als Slack, inclusief threads en slash-commando's, en het is de minst interessante van de vier om te beheren, wat een compliment is.
Rocket.Chat is een Node.js-applicatie op MongoDB. Het beschikt over de breedste set functies in dit overzicht, inclusief spraak- en videogesprekken en een omnichannel-inbox die klantgesprekken uit e-mail en sociale kanalen naar dezelfde interface haalt. Als die inbox de reden is waarom u dit overweegt, weeg dit dan eerst af tegen een toegewijde Chatwoot-supportdesk, omdat een chatserver die supportwerkzaamheden uitvoert een andere taak heeft dan een chatserver voor teamcommunicatie.
Matrix is een protocol, geen product. Synapse is de referentieserver (Python, PostgreSQL) en Element is de client die de meeste mensen gebruiken. Dit is de enige optie in dit overzicht waarbij uw server kan communiceren met servers die u niet zelf beheert.
Zulip is een Python-server (Django plus Tornado) met PostgreSQL, RabbitMQ, memcached en Redis erachter, geïnstalleerd als één eenheid door een eigen script. Het model is gebaseerd op onderwerpen binnen kanalen, waardoor een gesprek van dinsdag op vrijdag nog steeds terug te vinden is. Versie 12.0 verscheen in april 2026.
Hoeveel RAM en welke database, bij 10 gebruikers en bij 100
Elk getal in onderstaande tabel is afkomstig uit de eigen documentatie van het project, geraadpleegd in augustus 2026. Niets hiervan is een eigen meting en niets is verzonnen. De basis is voor elke rij gelijk: de kleinste configuratie die het project publiceert, waarbij de database wordt meegeteld wanneer het project deze afzonderlijk dimensioneert.
The data behind this chart
[
{
"label": "Synapse",
"published_ram_gb": 1,
"notes": "Synapse install docs: at least 1 GB free RAM if you want to join large public rooms. PostgreSQL is required for production and is not sized."
},
{
"label": "Mattermost",
"published_ram_gb": 2,
"notes": "Mattermost requirements: 1 to 1,000 users on 1 vCPU and 2 GB RAM, single server, database included."
},
{
"label": "Zulip",
"published_ram_gb": 2,
"notes": "Zulip requirements: under 100 users on 1 CPU, 2 GB RAM and 2 GB swap. 100 users and above needs 2 CPUs and 4 GB."
},
{
"label": "Rocket.Chat",
"published_ram_gb": 8,
"notes": "Rocket.Chat requirements: smallest published tier is 4 GiB for the app plus 4 GiB for MongoDB, rated up to 500 concurrent users."
}
]De rijen hebben niet dezelfde opbouw, en dat is de eerste nuttige bevinding. De 1 GB van Synapse is een ondergrens voor het Synapse-proces met een voorwaarde: de documentatie vereist ten minste die hoeveelheid vrij RAM als u wilt deelnemen aan grote publieke ruimtes. PostgreSQL valt buiten dat cijfer. De 2 GB van Mattermost betreft de gehele machine, inclusief database, en dekt 1 tot 1.000 gebruikers op een enkele vCPU. Zulip documenteert 2 GB en één CPU voor minder dan 100 gebruikers, plus 2 GB swap, en vervolgens 4 GB en twee CPU's bij 100 gebruikers of meer. Rocket.Chat publiceert hier het hoogste getal, 8 GB, omdat het de applicatie op 4 GiB en MongoDB op 4 GiB dimensioneert, en die laag is geschikt voor maximaal 500 gelijktijdige gebruikers.
Bij tien gebruikers draaien alle 4 applicaties op hardware waar u niet twee keer over na hoeft te denken. Bij honderd gebruikers lopen de antwoorden uiteen: Mattermost valt nog steeds binnen de 2 GB-laag, Zulip vereist 4 GB en een tweede CPU, en de kleinste gedocumenteerde laag van Rocket.Chat blijft ongewijzigd op 8 GB, omdat de geheugenbehoefte van MongoDB wordt bepaald door de machine in plaats van door uw gebruikersaantal.
De keuze voor de database bepaalt uw toekomstige upgrades meer dan uw dagelijkse prestaties. Mattermost vereist PostgreSQL 14 of nieuwer en heeft de ondersteuning voor MySQL vanaf v11 beëindigd, dus een MySQL-installatie van vandaag betekent een migratie in de toekomst. Synapse draait op SQLite en de eigen documentatie stelt duidelijk dat SQLite alleen acceptabel is voor testdoeleinden, omdat de prestaties in grote ruimtes slecht zijn. Rocket.Chat 8 vereist MongoDB 8.0, wat betekent dat de database-upgrade en de chat-upgrade één project vormen in plaats van twee.
Wat krijgt u werkelijk bij een 2 GB VPS
Het 2 GB-abonnement is bij de meeste providers de instapgrootte, en het is een reëel antwoord voor twee van deze vier.
- Mattermost past. Dit is de enige waarvan de leverancier exact die grootte documenteert, voor maximaal 1.000 gebruikers, met PostgreSQL op dezelfde machine. Tien mensen op 2 GB is comfortabel.
- Zulip past, met swap. De documentatie adviseert swap bij alles onder de 5 GB en waarschuwt dat machines met minimaal RAM-geheugen out of memory-fouten geven tijdens upgrades, waarbij
tools/webpackde stap is die faalt. Dat is een reële fout die u tegenkomt tijdens het upgraden, niet tijdens de installatie. - Synapse past zolang het rustig is. De kosten bij inactiviteit zijn laag. De piekbelasting is het probleem, en het onderstaande gedeelte over federatie legt uit waar die vandaan komt.
- Rocket.Chat is de optie om te vermijden bij 2 GB, en de oorzaak is de storage engine van MongoDB. WiredTiger bepaalt de grootte van zijn interne cache op de grootste waarde van 50% van (RAM minus 1 GB) of 256 MB, dus op een 2 GB-machine reserveert het ongeveer 512 MB voordat Node.js is gestart. Het resultaat is geen nette weigering. Het installeert, het draait, het wordt trager naarmate de geschiedenis groeit, en uiteindelijk stopt de out of memory killer van de kernel het proces dat op dat moment het grootste was.
Controleer wat u daadwerkelijk heeft voordat u beslist, omdat providers RAM anders tellen dan free:
free -h
swapon --showOnthoud dat de chatserver niet het enige is op de machine. TLS (transport layer security) termination, back-ups en een container runtime vereisen allemaal geheugen. Plaats de server van uw keuze achter een reverse proxy die u begrijpt, Nginx, Caddy of Traefik, en als u implementeert met containers, zijn de Docker Compose basisprincipes voor een VPS het onderdeel dat u als eerste goed moet krijgen.
Hebben de mobiele apps een eigen push-server nodig?
Dit is het punt waar mensen achter komen nadat ze de software hebben uitgerold, en het is vaak de doorslaggevende factor voor de keuze.
Dit is het mechanisme. Apple Push Notification service (APNs) en Firebase Cloud Messaging (FCM) accepteren alleen notificaties van de partij die de ondertekeningsgegevens (signing credentials) voor die specifieke app bezit. Uw server kan geen notificaties sturen naar een app die u niet zelf heeft gebouwd. Een zelfgehoste chatserver die gebruikmaakt van de officiële app-versie uit de App Store, moet notificaties dus aanleveren bij de gateway van de leverancier, en de leverancier bepaalt de voorwaarden.
- Mattermost. De gratis optie is de Test Push Notification Service (TPNS) op
https://push-test.mattermost.com. De documentatie geeft aan dat deze niet wordt aanbevolen voor productieomgevingen en geen service level agreement (SLA) biedt. Deze werkt alleen met de officiële builds uit de App Store en Play Store. De Hosted Push Notification Service (HPNS) is geschikt voor productie en vereist een betaald abonnement. De derde route is het zelf compileren van de push-proxy, wat vervolgens vereist dat u uw eigen app-builds maakt met uw eigen APNs- en FCM-gegevens. - Rocket.Chat. Voor push-notificaties moet de werkruimte worden geregistreerd bij Rocket.Chat Cloud. Bij community-werkruimtes is dit beperkt tot 10.000 push-notificaties per maand. Dat zijn ongeveer 330 notificaties per dag voor de gehele werkruimte. Wanneer het quotum is verbruikt, stoppen de notificaties totdat de maand is gereset; gebruikers ervaren dit als een defecte app.
- Matrix met Element. Synapse verstuurt notificaties naar een push-gateway, en de officiële Element-apps zijn geconfigureerd om de gateway te gebruiken die matrix.org beheert op
https://matrix.org/_matrix/push/v1/notify. De payload bevat de event- en room-identifiers in plaats van de berichttekst; de app haalt de inhoud vervolgens op van uw server. De gateway ziet dus alleen metadata en geen gespreksinhoud. Het draaien van een eigen Sygnal-gateway wordt ondersteund, maar dit betekent dat u uw eigen apps moet bouwen en distribueren. Voor Android is er een tussenweg: UnifiedPush in combinatie met een ntfy-server die u zelf host. - Zulip. Het gratis abonnement bevat de mobiele push-service voor maximaal 10 gebruikers. Boven de 10 gebruikers heeft u een abonnement nodig, waarbij het gratis Community-abonnement veel niet-commerciële organisaties dekt. Zulip 12.0, uitgebracht in april 2026, heeft end-to-end-encryptie voor push-payloads toegevoegd.
Bij tien gebruikers bieden al deze opties kosteloos werkende notificaties. Bij honderd gebruikers verandert het beeld: Zulip vereist een abonnement, Mattermost blijft werken via de testservice zonder SLA of ondersteuning, de maandelijkse limiet van Rocket.Chat wordt de beperkende factor, en Matrix blijft ongewijzigd omdat de gateway gratis te gebruiken is.
Welke opties bieden gratis single sign-on
Single sign-on (SSO) is het punt waar het open-core bedrijfsmodel het duidelijkst zichtbaar wordt.
- Zulip bevat SAML (security assertion markup language) en LDAP (lightweight directory access protocol) in de zelfgehoste server zonder extra kosten. Er is geen afzonderlijke betaalde versie.
- Synapse ondersteunt OpenID Connect (OIDC), SAML en CAS in het eigen configuratiebestand, gratis. Nieuwere implementaties gebruiken in toenemende mate de Matrix Authentication Service, een afzonderlijke service met een eenrichtingsmigratie vanuit de klassieke Synapse-authenticatie; plan deze overstap dus in plaats van er achteraf achter te komen.
- Rocket.Chat community edition biedt standaard LDAP- en SAML-login. Het synchroniseren van uitgebreide gebruikerskenmerken, het koppelen van groepen en teams, en achtergrondsynchronisatie vereisen een enterprise-licentie.
- Mattermost gratis Team Edition biedt enkel GitLab OAuth. SAML, AD/LDAP en OpenID Connect zijn betaalde functies.
Als u van plan bent meerdere services achter één login te draaien, plaats dan een zelfgehoste Authentik identity provider voor deze services en controleer welke van de vier daadwerkelijk met deze provider kan communiceren op basis van de licentie die u bezit.
Wat federatie u werkelijk kost
Federatie is de bestaansreden van Matrix. Uw gebruiker treedt toe tot een kamer die op de server van iemand anders wordt gehost en spreekt met mensen wiens accounts daar staan, op dezelfde manier als mailservers e-mail uitwisselen. Geen enkele andere optie hier doet dit. Als u dit nodig heeft, is niets anders op deze pagina een vervanging.
Het is ook de reden waarom Synapse een ander type werklast is. Wanneer uw gebruiker toetreedt tot een gefedereerde kamer, neemt uw server een kopie van de status en de events van die kamer over, en slaat de media op die gebruikers op andere servers plaatsen: avatars, afbeeldingen en bestanden. Uw schijfgebruik wordt dan bepaald door kamers die u niet heeft aangemaakt en door mensen die geen account op uw server hebben. Dit is de reden waarom Synapse-installaties een media-opslag krijgen die veel groter is dan het volume aan berichten dat hun eigen gebruikers hebben verzonden. Het is ook de reden waarom het toetreden tot een grote publieke kamer de specifieke handeling is waarvoor de documentatie een geheugenvoorwaarde stelt.
Stel het retentiebeleid op de eerste dag in in plaats van op de dag dat de schijf vol raakt:
media_retention:
local_media_lifetime: 90d
remote_media_lifetime: 14dSynapse kreeg media_retention in versie 1.61, met afzonderlijke levenscycli voor lokale en externe media. Externe media zijn een cache, dus als een gebruiker opnieuw om een verwijderd bestand vraagt, vraagt Synapse dit opnieuw op bij de server waar het vandaan kwam. Lokale media zijn geen cache, dus een korte local_media_lifetime verwijdert de uploads van uw eigen gebruikers permanent.
De eerlijke samenvatting: als uw gebruikers alleen met elkaar praten, levert federatie u niets op en kost het u schijfruimte, bandbreedte en een zwaarder upgradepad. Schakel het uit of kies een andere server.
Hoe verlopen upgrades
Zulip is het eenvoudigst. Eén script, en de gedocumenteerde downtime is minder dan 30 seconden, tenzij er een grote databasemigratie nodig is. Installatie en upgrade zien er als volgt uit, door u uitgevoerd op de server:
cd $(mktemp -d)
curl -fLO https://download.zulip.com/server/zulip-server-latest.tar.gz
tar -xf zulip-server-latest.tar.gzVoer het installatieprogramma uit als root. De --push-notifications-vlag registreert de server tijdens de installatie bij de mobiele push-service. Op dat moment wordt u gevraagd de servicevoorwaarden te accepteren; lees deze dus voordat u begint.
sudo ./zulip-server-*/scripts/setup/install --push-notifications --certbot \
--email=YOUR_EMAIL --hostname=YOUR_HOSTNAMELatere upgrades gebruiken dezelfde tarball plus één commando:
curl -fLO https://download.zulip.com/server/zulip-server-latest.tar.gz
sudo /home/zulip/deployments/current/scripts/upgrade-zulip zulip-server-latest.tar.gzMattermost is voorspelbaar. Vervang het binaire bestand, herstart, en de migraties worden bij het opstarten uitgevoerd. Sinds de releases van augustus 2025 verschijnt het Extended Support Release (ESR)-traject elke 9 maanden met 12 maanden ondersteuning. Upgrades van ESR naar ESR vormen het geteste pad. Het overslaan van meerdere ESR-versies wordt ondersteund maar niet getest; in de praktijk betekent dit dat u zelf de tester bent.
Rocket.Chat koppelt drie upgrades aan elkaar. Sinds augustus 2026 is de 8.x-lijn actueel, met 8.7.0 uitgebracht op 6 augustus 2026. Deze vereist MongoDB 8.0 en een bijbehorende Node.js-versie. Het overslaan van een hoofdversie is de reden waarom gebruikers eindigen met een database die de applicatie weigert te openen. De Rocket.Chat Docker Compose installatiehandleiding koppelt deze versies voor u aan elkaar, wat hier het belangrijkste argument is voor de container-route.
Synapse vereist leeswerk. Elke release bevat upgrade-notities. U moet de notities lezen voor elke versie die u passeert, niet alleen voor de versie waar u op uitkomt. Na de upgrade voert Synapse achtergrondupdates uit op de database. Op een kleine server kan dit de machine urenlang traag maken; dit is verwacht gedrag en geen fout.
Licentievoorwaarden in begrijpelijke taal
Mattermost distribueert zijn gecompileerde Team Edition-builds onder de MIT-licentie, terwijl de broncode wordt aangeboden onder AGPLv3 of een commerciële licentie. Delen van de repository vallen onder de Mattermost Source Available License, waarvoor een betaalde licentie vereist is voor gebruik in een productieomgeving. Rocket.Chat is MIT-gelicentieerd, met uitzondering van de ee/-mappen, die hun eigen enterprise-licentie hebben. Synapse is vanaf versie 1.99.0 overgestapt van Apache 2.0 naar AGPLv3, en bijdragers ondertekenen een CLA die Element in staat stelt uitzonderingen op die licentie te verkopen. Zulip valt onder Apache 2.0 en bevat geen enterprise-directory; daarom is er bij de SSO-functionaliteit geen sprake van beperkingen.
De praktische interpretatie: de AGPL is alleen relevant als u van plan bent de server aan te passen en deze als dienst aan anderen aan te bieden. Wat voor een klein team veel belangrijker is, is het open-core-model: welke functies ontbreken in de gratis versie. Zulip heeft de minste beperkingen, Mattermost de meeste.
Welke optie moet u kiezen
Een interne tool voor teams. Mattermost. Het heeft de kleinste gedocumenteerde voetafdruk, de meest voorspelbare upgrades en een vertrouwde interface die geen uitleg behoeft. Houd rekening met een betaald abonnement vanaf de dag dat SSO een vereiste wordt, aangezien die dag voor de meeste teams aanbreekt.
Een community-server. Zulip. Onderwerpen houden een druk openbaar kanaal maanden later nog leesbaar, SAML en LDAP zijn kosteloos en upgraden vereist slechts één commando. Als uw community meer weg heeft van berichten en antwoorden dan van live chat, vergelijk dan eerst zelfgehoste forumsoftware, aangezien een forum beter indexeert in zoekmachines en helemaal geen push-infrastructuur nodig heeft. Kies voor Rocket.Chat wanneer u behoefte heeft aan spraak-, video- en omnichannel-functies, en u de 8 GB aan geheugen kunt toewijzen die in de eigen documentatie wordt gevraagd.
Een netwerk dat moet kunnen samenwerken. Matrix met Synapse en Element. Accepteer de groei van mediabestanden, stel vanaf de eerste dag retentiebeleid in, voorzie het van PostgreSQL en meer schijfruimte dan u denkt nodig te hebben, en profiteer van de waarde van communicatie met servers die u niet zelf beheert. Kiezen voor Synapse voor een team dat nooit federatie gebruikt, betekent dat u die kosten voor niets maakt.
FAQ
Wat is het beste zelfgehoste alternatief voor Slack voor een klein team?
Mattermost, voor de meeste interne teams. De documentatie ondersteunt 1 tot 1.000 gebruikers op één vCPU en 2 GB RAM met PostgreSQL op dezelfde machine, waardoor het past binnen het instapmodel VPS dat de meeste providers aanbieden. Het addertje onder het gras is single sign-on: de gratis Team Edition ondersteunt alleen GitLab OAuth, terwijl SAML, AD/LDAP en OpenID Connect een betaald abonnement vereisen. Als gratis SSO belangrijker is dan de Slack-achtige interface, gebruik dan Zulip.
Kan ik een zelfgehoste chatserver draaien op een 2 GB VPS?
Mattermost wel, en Zulip ook als u swap toevoegt, wat de documentatie van Zulip zelf aanbeveelt bij minder dan 5 GB. Rocket.Chat zal u teleurstellen, omdat de WiredTiger-engine van MongoDB de grootste waarde claimt van 50% van (RAM minus 1 GB) of 256 MB voor zijn cache; ongeveer 512 MB van een 2 GB-server is dus al in gebruik voordat de applicatie start. Het zal installeren en vervolgens verslechteren naarmate de geschiedenis groeit, wat uiteindelijk leidt tot een out of memory kill. De kleinste gepubliceerde tier van Rocket.Chat is 4 GiB voor de app plus 4 GiB voor MongoDB.
Hebben zelfgehoste chatservers een eigen server voor mobiele pushmeldingen nodig?
Meestal niet, omdat APNs van Apple en FCM van Google alleen meldingen accepteren van de partij die de app heeft ondertekend; de app van de leverancier gebruikt dus de gateway van de leverancier. De voorwaarden verschillen. Mattermost biedt een gratis testservice zonder SLA en een betaalde gehoste service. Rocket.Chat beperkt community-werkruimtes tot 10.000 pushmeldingen per maand, waarna de bezorging stopt tot de volgende maand. Zulip bevat gratis push voor maximaal 10 gebruikers en vereist daarboven een abonnement. Matrix-homeservers versturen pushmeldingen via de gateway die door de Element-apps wordt gebruikt, zonder extra kosten. U heeft alleen een eigen gateway nodig als u ook uw eigen app-builds verspreidt.
Moet ik Matrix en Synapse zelf hosten voor een team dat nooit met andere servers communiceert?
Nee. Federatie is waar Synapse voor bedoeld is, en het is ook wat de software zwaarder maakt om te draaien. Het deelnemen aan kamers op andere servers haalt hun status op en slaat hun media op uw schijf op, waardoor de opslag groeit om redenen die niets met uw eigen gebruikers te maken hebben. Stel media_retention in met een korte remote_media_lifetime voordat dat gebeurt. Een team dat alleen met zichzelf communiceert, krijgt de operationele kosten zonder de voordelen, en Mattermost of Zulip doen hetzelfde werk op minder hardware.
Welk zelfgehoste alternatief voor Slack heeft gratis single sign-on?
Zulip en Synapse. Zulip bevat SAML en LDAP in de zelfgehoste server zonder extra kosten, en Synapse ondersteunt OpenID Connect, SAML en CAS in de configuratie, waarbij nieuwere installaties overstappen op de afzonderlijke Matrix Authentication Service. De community-editie van Rocket.Chat ondersteunt standaard LDAP- en SAML-login, maar plaatst attribuutsynchronisatie, groepsmapping en achtergrondsynchronisatie achter een enterprise-licentie. De gratis Team Edition van Mattermost ondersteunt alleen GitLab OAuth.