Two years ago we looked into Slack alternatives. Mattermost seemed like the most mature one that stage and I also remember being told that Ubisoft planned to switch from Skype for Business at that point. Rocket.Chat was super-rough and definitely not ripe enough for proper use way back. People in the team didn’t like the Zulip UI, but I gotta say that, to this day, Zulip probably has the best implementation of threading. (That’s a thing that still feels very tacked on in Slack and I’m not a big fan.)
None of the alternatives we evaluated then had the polish or maturity of Slack, and none of them could be as easily integrated with other tools and services like Slack. It has a better eco system in that regards. Some things certainly will have improved in the past two years though.
Discord is trying to push into the business segment stronger these days and move away from its image as gamer app. I know a smaller studio or two that use it as main tool for their internal real-time communication. Isn’t on the same level as Slack when it comes to tool pipeline integration, but I do like the functionality of setting up voice/video channels that people can simply jump in or out at will. That’s a neat feature in times of distributed teams and WFH because people can see who is in there and maybe just wants to socialize a bit. No self-hosting either though.