The tech industry has been awash with modern team collaboration platforms for years, but the recent rise of Slack has put a renewed focus on the ultimate question: what makes such a platform simultaneously effective and fun to use? Given Slack’s recent push against supporting large OSS communities, I embarked on a research journey to find out what makes a great collaboration platform. Check out my platform comparison article for more details about the apps I considered, and then come back here to find out about the important features that added value to each platform.
To create my comparison, I first looked at whether each feature was supported, identifying the most important features to help shape decisions of which platform to use. I weighted each feature from 1-4, with 4 being the most important features, creating a total possible score of 50. Furthermore, each product was given a multiplier indicating their support for that feature:
- 1x: Fully Supported
- 0.5x: Partially Supported
- 0.25x: Coming Soon
- 0x: Not Supporting
Subsequently, it was possible to achieve a multiplier of 0.75 if the platform had a partial implementation with improved features coming soon. At the end of the day, the resulting score won’t necessarily have a ton a meaning unless you would rank the features in the same way I would, but it provided good insight for me to get a high-level view of which platforms had great feature support across the board. I won’t go over every single feature I considered, but if you’re interested you can see my notes in this Google Spreadsheet.
Multi-Organization
Weight: 4
Supported: ChatGrape, Discord, IRC, IRCCloud, Slack
Partial: Gitter, HipChat
Coming Soon: Rocket.Chat
In this age of constant online communication, people need access to a number of different teams they belong to. As such, it’s vitally important for a team collaboration platform to support easy org-switching so that you can manage all of your teams from the same interface without having to open multiple tabs or constantly log in and out of each team. About half the platforms I looked at had great support for Multi-Org, while the others struggled to provide a solid experience.
Hosting
Weight: 4
Supported: ChatGrape, Discord, Gitter, HipChat, IRC, IRCCloud, PureCloud, Ryver, Slack
One thing most teams don’t want to deal with themselves is hosting. You just want a platform that works and lets you be productive; you don’t need the headache of hosting the product on your own servers. This is especially true for large OSS communities, where reliability of the chat is critical to handling the huge user influx. It’s generally much preferable to have a platform where hosting is taken care of for you, rather than having to find someone within your team who can dedicate their time to upkeep of the service. Nearly every platform came with hosting, except for the fully Open-Source platforms Rocket.Chat and Let’s Chat.
Channel Organization
Weight: 4
Supported: ChatGrape, Discord, HipChat, Let’s Chat, Rocket.Chat, Slack
Partial: Gitter, IRC, IRCCloud, Ryver
Coming Soon: PureCloud
Channels are core to team collaboration; every great chat program has a way to create separate streams of messages where you can discuss different topics. In order to be considered as fully supporting this feature, I required platforms to expose an easily viewed list of channels for the team that makes room discovery effortless. Several of the platforms supported obtaining this list, but it wasn’t implemented in the most user-friendly manner, so I marked them as Partial.
Mobile Apps
Weight: 4
Supported: ChatGrape, Discord, HipChat, IRC, IRCCloud, PureCloud, Rocket.Chat, Ryver, Slack
Partial: Gitter
Communication on the move is essential to modern collaboration, so having a great mobile app is important for any platform. I will admit that my evaluation here is incomplete; I don’t own a smartphone on every platform, so I was unable to personally verify the quality of mobile offerings by each product. However, I have heard pretty consistent feedback that Gitter’s mobile offering is subpar and buggy, hence their Partial rating. I would be happy to downgrade other platforms whose mobile experiences are confirmed to be less-than-stellar; just leave your comments in this article for consideration.
Desktop
Weight: 3
Supported: ChatGrape, Discord, Gitter, HipChat, IRC, PureCloud, Rocket.Chat, Ryver, Slack
Partial: IRCCloud
Web apps are great, but in an age where many users have dozens of browser tabs open simultaneously, the ease of access provided by a desktop app vastly improves the user experience. Nearly every platform evaluated has a solid desktop app for Windows/OSX; many support Linux as well! IRCCloud received Partial marks for having some unofficial third-party apps, but they are working on their own solution, so I gave them a 0.75x multiplier.
History
Weight: 4
Supported: ChatGrape, Discord, Gitter, HipChat, PureCloud, Rocket.Chat, Ryver
Partial: IRCCloud, Let’s Chat, Slack
Ah, history…I bet you were wondering when I’d get to this one, weren’t you? As you likely already know, Slack’s free offering falls short here (at 10,000 messages) while many other platforms preserve full history for your perusal. IRCCloud’s free tier can preserve chat history from while you are connected to a channel, but it automatically disconnects you from the channel after being offline for 2 hours, so you lose the advantage of offline history collection that the other platforms have.
Search
Weight: 3
Supported: ChatGrape, Gitter, HipChat, Rocket.Chat, Ryver, Slack
Coming Soon: Discord, IRCCloud, PureCloud
What goes hand-in-hand with chat history more than search? Only about half the platforms evaluated are currently able to search their indexed history, though it’s important to note that this search is limited to how much history they’ve made available. PureCloud has search landing in an imminent release, and Discord has it on their roadmap (I’d be shocked if it wasn’t here by the end of the year). IRCCloud has this feature listed as Coming Soon as well, but the free tier will only allow searching back 1 week into the past, so I reduced their multiplier to 0.125x.
Roles & Permissions
Weight: 2
Supported: Discord, PureCloud
Partial: ChatGrape, Gitter, HipChat, IRC, IRCCloud, Rocket.Chat, Ryver, Slack
Moderating a large team is crucial to having a respectful and productive collaboration. Discord and PureCloud were the standouts in this category, with incredibly flexible action-based permissions that can be assigned to different roles, allowing an amazing granularity of moderation. Most of the other platforms had some basic admin roles that cover the common use-cases.
Markdown
Weight: 1
Supported: ChatGrape, Discord, Gitter, PureCloud, Rocket.Chat, Ryver, Slack
Coming Soon: IRCCloud
Markdown, for most users, is simply a way to easily make test into bold or italics. That said, it has a ton of great features, and technical teams especially find markdown an essential addition to their chat program. The next two “features” could be considered a subset of great markdown implementation, which is why I’ve weighted them each 1 to give the overall feature a weight of 3 to reflect its true importance.
Code Blocks
Weight: 1
Supported: ChatGrape, Discord, Gitter, HipChat, PureCloud, Rocket.Chat, Ryver, Slack
Partial: IRCCloud
Code blocks allow developers to easily share snippets of code in chat while making them distinct form the surrounding messages. This feature is essential for any technical team or OSS community; without it, much of the utility of the platform is lost for developers. Nearly every platform supports code blocks via markdown (single ` or triple “`), with two exceptions. HipChat uses a slightly awkward “/code” command, though the result is nearly the same. IRCCloud does not support an easy way to produce code blocks quickly, but it does have an integration with PasteBin to create new bins on the fly and link them within the chat.
Syntax Highlighting
Weight: 1
Supported: Discord, Gitter, IRCCloud, Rocket.Chat
Partial: HipChat, PureCloud, Slack
Reading code blocks can be made much more efficient by adding syntax highlighting for the language being used. Only four platforms seemed to fully support this feature within their code block implementation, while HipChat and PureCloud supported some but not all of the languages I tested. Slack, strangely enough, does not support syntax within code blocks, but it has a “snippet” feature (not unlike IRCCloud’s pastebin support) that includes syntax highlighting. Ultimately, since that is not the most common way to create code blocks, I decided to mark their support as Partial.
Editing Messages
Weight: 2
Supported: ChatGrape, Discord, Gitter, Rocket.Chat, Slack
Coming Soon: PureCloud
A more recent trend in group chat platforms has been a strong preference for the ability to edit messages after they’ve been sent. This is especially helpful for correcting typos on the fly, and a number of platforms have great support for this feature. Additionally, I’ve confirmed with the PureCloud team that this will be coming in their next update, along with a number of other features I’ve listed.
Integrations
Weight: 2
Supported: ChatGrape, Gitter, HipChat, Rocket.Chat, Slack
Partial: Discord, PureCloud, Ryver
Third-party integrations are incredibly useful to a collaboration platform; teams want to be able to hook their chat platform into other tools they utilize. Several of the platforms I looked at had a wide number of integrations available, while a few more had a small (but growing) count. Nearly all of the platforms, however, have a confirmed API by which teams can build bots and other custom integrations they might need.
Other Features
The above list is not exhaustive, but it does cover a wide variety of value-adds that modern team collaboration platforms must have to be competitive in today’s market. Here’s a quick list of some other important features I didn’t mention:
- Voice Chat
- Video Chat
- File Upload
- Message Quoting
- Emoji (standard and custom emoticons)
- Fuzzy Name Completion (find/mention users from partial inputs)
- IRC Bridge (for old school users who prefer to pipe everything to IRC)
- Open Source repos (so teams can contribute features to the platform)
- Data Portability (import/export team data for archive/platform migration)
None of the platforms I considered supports every one of these features. In fact, out of a possible weighted score of 50, no platform scored 40 or better. Additionally, each product has unique features that differentiate them form the pack in different ways. It is my hope that each platform in this space will continue to challenge each other and improve, as the end user is the one who benefits most from the increased competition and race to innovate. Ultimately, though, it comes down to which features are most important to each individual team in order to determine a best fit.
A Note About IRC:
I included IRC in my comparison even though it’s not a “platform”, per-se, because it often gets mentioned as an option in these discussions. However, scoring it proved difficult due to client fragmentation; many of these features are more client sugar than anything else, so while an individual user could customize their experience to get these features, I tried to consider the cross-section of what an average user would have access to by picking one of the many available IRC clients. IRCCloud, on the other hand, is a specific platform that merited a separate consideration given its more modern feature set.