How to Fire Slack: Migrate Your Team to Mattermost in One Weekend
Slack charges per user and limits message history on free plans. Mattermost is free, self-hosted, and stores every message forever. Here is the migration plan.
Slack is expensive at scale. The free plan limits you to 90 days of message history. The paid plan at 7.25 US dollars per user per month costs a 15-person team over 1,300 dollars per year. Mattermost is free, self-hosted, and stores every message forever. Here is how to migrate in one weekend.
Friday Evening: Deploy Mattermost
- Deploy Mattermost via Docker: Use the official Mattermost Docker image with PostgreSQL. A docker-compose.yml is available in the Mattermost documentation. Deploy it behind your reverse proxy with SSL.
- Configure SSO: Connect Mattermost to your Authelia or Authentik SSO. This means your team logs in with the same credentials they use for everything else. No new passwords to remember.
- Create channels: Recreate your Slack channel structure in Mattermost. Public channels for general discussion, team-specific channels, and project-specific channels. Private channels for sensitive topics.
- Install Mattermost desktop and mobile apps: Have your team install the apps. They work identically to Slack. The interface will feel familiar immediately.
Saturday: Import Slack Data
- Export your Slack data: In Slack, go to Administration, Workspace settings, Import/Export Data. Export everything: public channels, private channels, direct messages, and files. Slack emails you a ZIP file when the export is ready. This can take several hours for large workspaces.
- Import into Mattermost: Mattermost has a built-in Slack import tool. Go to System Console, Import, Slack. Upload your Slack export ZIP. Mattermost maps users, channels, and messages automatically. The import preserves message timestamps, author attribution, file attachments, and threaded replies.
- Review the import: Spot-check a few channels. Verify that messages, files, and user mentions imported correctly. Fix any mapping issues. The Slack import is remarkably complete in Mattermost.
Sunday: Final Cutover
- Notify your team: Post a final message in Slack with the Mattermost URL and login instructions. Pin it to every channel. Set Slack to read-only if you want to prevent new messages from being posted there.
- Archive Slack: Do not delete your Slack workspace immediately. Keep it in read-only mode for one month as a safety net. After that, downgrade to the free plan or delete it entirely.
- Start using Mattermost: Your team picks up where they left off. Every Slack message is in Mattermost. Every channel exists. The desktop and mobile apps send notifications exactly like Slack did. The transition is seamless because the data came with you.
What You Gain
- Unlimited message history: Every message, forever, searchable. No more losing decisions made four months ago because Slack deleted them.
- Data ownership: Messages are stored in your PostgreSQL database on your server. Export them, back them up, or migrate them at any time.
- Fixed cost: One server, one deployment, unlimited users. Whether you have 5 users or 50, the cost is the same.
- Integrations that stay: Mattermost supports incoming and outgoing webhooks, slash commands, and bot accounts. Your n8n workflows can post to Mattermost channels just as easily as they posted to Slack.
The Cost Comparison
Slack Pro for 15 users: 1,305 US dollars per year. Mattermost self-hosted: zero software cost. The server hosting Mattermost costs the same whether it hosts one application or ten. For a business that already self-hosts other tools, adding Mattermost costs nothing additional in infrastructure.
VPS1 deploys Mattermost and migrates your Slack data. Your team shows up Monday morning and nothing has changed except the URL and the price tag.
More articles
How to Deploy BTCPay Server: Accept Bitcoin Payments with Zero Platform Fees
BTCPay Server lets you accept Bitcoin and Lightning payments with no platform fees. Only standard Bitcoin network fees apply. Here is how to deploy it with Docker Compose.
Self-Hosted Crypto Payment Processors: BTCPay Server, Bitcart, and SHKeeper Compared
Accept Bitcoin and cryptocurrency payments directly with no platform fees, no intermediaries, and no KYC. Here is how BTCPay Server, Bitcart, and SHKeeper compare.
How to Deploy SHKeeper: Accept Crypto Payments with WooCommerce in 30 Minutes
SHKeeper supports Bitcoin, Ethereum, USDT, USDC, and 19+ cryptocurrencies with a free WooCommerce plugin. Zero platform fees -- only standard network fees apply.