Team Chat Without Slack Per-Seat Pricing
Slack charges you per person, every month, forever. A 25-person team on Slack Business+ pays roughly $7,350 per year — and that bill only grows as you hire. Mattermost is an open-source team chat platform (GitHub | Official Website) that gives you channels, direct messages, file sharing, threaded conversations, screen sharing, and 700+ integrations — all hosted on your own server with zero per-seat fees.
Originally built for dev teams and the US Department of Defense, Mattermost is now used by enterprises and small businesses worldwide. It has native apps for iOS, Android, Windows, macOS, and Linux, so your team gets the same experience they'd have on Slack — without the recurring cost.
The Problem With Per-Seat Chat Pricing
Here's what Slack costs a 25-person team:
| Slack Plan | Per User / Month | 25 Users / Month | Annual Cost |
|---|---|---|---|
| Free | $0 | $0 | $0 (90-day message history limit, 10 app integrations) |
| Pro | $8.75 | $218.75 | $2,625 |
| Business+ | $12 | $300 | $3,600 |
Every new hire adds to the bill. You never stop paying. Mattermost flips this model: you run it on a single VPS for $5-10/month total. Whether you have 5 people or 500, the cost stays the same. Your data lives on your server — not on someone else's cloud.
What You Need
- A VPS with 2GB RAM minimum (4GB recommended for teams over 50). Hostinger, DigitalOcean, or Hetzner all work.
- Docker and Docker Compose installed on the VPS (we'll cover this)
- A domain name pointing to your VPS IP (e.g., chat.yourcompany.com)
- 45 minutes of setup time
- No coding skills required — just copy-paste commands
Step-by-Step Setup
Step 1: Prepare Your VPS
SSH into your VPS and update the system:
ssh root@your-server-ip
apt update && apt upgrade -y
Install Docker and Docker Compose:
curl -fsSL https://get.docker.com | sh
apt install docker-compose-plugin -y
Verify the installation:
docker --version
docker compose version
Step 2: Download the Mattermost Docker Configuration
Clone the official Mattermost Docker repository:
cd /opt
git clone https://github.com/mattermost/docker.git mattermost
cd mattermost
Copy the example environment file and edit it:
cp env.example .env
nano .env
Step 3: Configure Your Environment
Edit the .env file with these key settings:
# Your domain
DOMAIN=chat.yourcompany.com
# Timezone
TZ=Asia/Kolkata
# Database password (change this!)
POSTGRES_USER=mmuser
POSTGRES_PASSWORD=change_this_to_a_strong_password
POSTGRES_DB=mattermost
# Mattermost edition (team = free open source)
MATTERMOST_IMAGE=mattermost-team-edition
MATTERMOST_IMAGE_TAG=11.7.0
# Site URL
MM_SERVICESETTINGS_SITEURL=https://chat.yourcompany.com
Save and exit (Ctrl+O, Enter, Ctrl+X in nano).
Step 4: Set Up SSL with Let's Encrypt
The Mattermost Docker repo includes an nginx configuration. To get free SSL certificates, use Certbot:
apt install certbot -y
certbot certonly --standalone -d chat.yourcompany.com
Then create symlinks to the Let's Encrypt certificates:
mkdir -p ./volumes/web/cert
ln -s /etc/letsencrypt/live/chat.yourcompany.com/fullchain.pem ./volumes/web/cert/cert.pem
ln -s /etc/letsencrypt/live/chat.yourcompany.com/privkey.pem ./volumes/web/cert/key-no-password.pem
Step 5: Start Mattermost
Launch the containers:
docker compose up -d
Check that all services are running:
docker compose ps
You should see three containers running: postgres, mattermost, and nginx. If any are not running, check the logs:
docker compose logs mattermost
Step 6: Create Your First Team and Admin Account
Open your browser and navigate to https://chat.yourcompany.com. You'll see the Mattermost setup screen:
- Enter your email address and create an admin account
- Create your first team (e.g., "Company")
- Set the team URL (e.g.,
chat.yourcompany.com/company) - Invite team members via email or share the invite link
That's it — your team chat is live. Users can access it from the web browser or download the native desktop and mobile apps.
Step 7: Configure Email Notifications (Optional but Recommended)
For email notifications (mentions, DMs, etc.), configure SMTP in the Mattermost admin console:
- Go to System Console → Site Configuration → Notifications
- Set Enable Email Notifications to true
- Enter your SMTP server details (Gmail, SendGrid, or your mail server)
- Set the "From" and "Reply-To" addresses
- Click Test Connection and save
What This Gives You
- Unlimited users — no per-seat pricing, ever
- Channels and direct messages — organized team communication just like Slack
- Threaded conversations — keep discussions focused without cluttering the main channel
- File sharing — upload documents, images, and code snippets directly in chat
- Message history with no limits — Slack's free plan caps at 90 days; Mattermost keeps everything
- 700+ integrations — connect Jira, GitHub, GitLab, Jenkins, webhooks, and custom apps
- Screen sharing and voice calls — built-in audio/video for 1:1 and group calls
- Native apps — iOS, Android, Windows, macOS, and Linux desktop clients
- Full data ownership — your messages live on your server, not a third-party cloud
- Custom branding — add your company logo, colors, and custom theme
- Compliance ready — HIPAA, FINRA, and FedRAMP compatible (Enterprise edition)
Cost Comparison: Mattermost vs Slack
| Feature | Slack Business+ | Mattermost (Self-Hosted) |
|---|---|---|
| Price for 25 users | $300/mo ($3,600/yr) | $0 (just VPS: ~$10/mo) |
| Price for 100 users | $1,200/mo ($14,400/yr) | $0 (just VPS: ~$10/mo) |
| Message history | Limited by plan | Unlimited — you control retention |
| Data location | Slack's cloud | Your server — wherever you choose |
| App integrations | 2,600+ in Slack App Directory | 700+ in Mattermost Marketplace + custom webhooks |
| Custom branding | Enterprise plan only (custom pricing) | Free — built into Team Edition |
| Compliance controls | Enterprise Grid (custom pricing) | Available in open-source + Enterprise |
| Voice/video calls | Huddles (limited on free plan) | Built-in screen sharing and calls |
5-year cost for a 50-person team: Slack Business+ = $36,000. Mattermost on a $10/mo VPS = $600. That's a 98% savings.
Too Complex? We Can Set This Up for You
If you'd rather not deal with Docker, SSL certificates, and DNS configuration, we handle the entire setup. You get a fully configured Mattermost instance on your domain, with SSL, email notifications, and your team invited — ready to use on day one.
| Service | What's Included | Price |
|---|---|---|
| One-Time Setup | Full Mattermost installation on your VPS, SSL setup, domain configuration, email notifications, initial team creation, admin training session | $299 – $499 |
| Monthly Managed | Everything above + ongoing server maintenance, security updates, backups, uptime monitoring, user management support | $99 – $199/mo |
| 6-Month Bundle | One-time setup + 6 months of managed hosting and support — best value for teams that want hands-off operation | $1,499 |
Frequently Asked Questions
Is Mattermost really free?
Yes. The Team Edition (open source, MIT license) is completely free with no user limits. You only pay for your VPS hosting ($5-10/month). The Enterprise Edition adds features like compliance reporting, advanced permissions, and premium support — but you don't need it for a standard team chat setup.
Can I migrate from Slack to Mattermost?
Yes. Mattermost provides a Slack import tool built into the admin console. You export your Slack workspace data (available from Slack's admin settings) and import it into Mattermost. Channels, messages, and users are preserved. The import tool supports both Slack's standard export and workspace export formats.
Does Mattermost have a mobile app?
Yes. Mattermost has native apps for iOS (App Store) and Android (Google Play), plus desktop apps for Windows, macOS, and Linux. All apps are free and connect to your self-hosted server — your team gets the same push notifications and real-time sync they'd expect from Slack.
How many users can Mattermost handle?
The open-source Team Edition handles thousands of users on a single server. Mattermost's documentation shows deployments supporting 50,000+ concurrent users on enterprise infrastructure. For a typical small business (5-100 users), a single 2GB VPS is more than sufficient.
Is my data secure on a self-hosted Mattermost?
Self-hosting gives you more security control, not less. Your data never leaves your server. You control access, backups, and encryption. Mattermost supports TLS encryption, SSO via SAML/OAuth, multi-factor authentication, and role-based access control. For regulated industries, the Enterprise Edition adds audit logging and compliance certifications.
Can I integrate Mattermost with my existing tools?
Yes. Mattermost has 700+ integrations in its marketplace, including Jira, GitHub, GitLab, Jenkins, Zoom, and ServiceNow. It also supports incoming and outgoing webhooks, slash commands, and a full REST API for custom integrations. If a tool can send a webhook, it can integrate with Mattermost.
What happens if my VPS goes down?
Your team can't access chat until the server is back up — that's the trade-off of self-hosting. To minimize downtime, choose a reliable VPS provider (Hostinger, DigitalOcean, and Hetzner all offer 99.9%+ uptime), enable automatic backups, and set up the Mattermost container with a restart policy of unless-stopped (the default in the Docker configuration). Our managed service includes uptime monitoring and automatic recovery.
Can I customize the look and feel?
Yes. Mattermost supports custom themes, custom branding (logo, colors, and site name), and custom emoji. You can also build custom plugins using the Mattermost plugin framework — the same way Slack apps work, but running on your own server with no app store restrictions.
