The biggest problem with Mattermost is that the mobile client cannot connect to multiple teams. You can add the beta client and connect to a second team, but more than two teams is impossible. This may be a function of living in the Bay Area but I'm on 4 or 5 different Slack groups for various communities.
All but my employer would be in great shape to switch to Mattermost but it's just not possible. Some have switched to Discourse but it's not great for real-time communication and people have a hard time with the UI.