Discourse and Slack (or other group chat apps like IRC, HipChat, Gitter, etc)

Discourse vs. Slack

Finding the right place for a discussion

  • On Slack, discussions are separated into different channels. This shares many of the same problems as groups in email - it’s not clear which channels exist, which ones are still active, and where a particular discussion should take place.
  • On Discourse, discussions will be visible to everyone so it doesn’t matter as much which category you choose when a topic is created. And if it seems like a topic should later be moved to another category, it’s easy to do so.

Keeping discussions focused

  • On Slack, discussions can get interwoven when there are multiple conversations happening at the same time. This makes them difficult to follow at best, but also puts a cap on the number of topics that can be discussed at any one time.
  • On Discourse, each topic has its own thread. Any number of topics can be discussed simultaneously. There may be some natural segues in and out of tangents, but indicators and the ability to quote other posts in-line help to show the flow of a discussion in a way that makes it easy to follow.

Discussions can evolve over a longer period of time

  • On Slack, discussions are pretty much over when they scroll off the page. WIthout that context, restarting a discussion that took place a few days ago is difficult, let alone a few months ago.
  • On Discourse, it is easy to continue discussions over any period of time. New members can even pick up on a conversation that was started by a someone who is no longer with the community. Indicators show when there are large gaps in time between posts to help make it clear when this takes place.

When would Slack still be preferred?

For getting ‘Quick Answers’

  • On Slack, discussions benefit from the high-frequency model of group chat, where each participant can help navigate with clarifying questions and responses. It serves as a great tool in this regard for getting a “quick answer” from the collective intelligence in the channel.

How can Slack and Discourse benefit each other?

There is a natural flow between Chat on Slack and Discussion on Discourse

  • Discourse and Slack can work well together though. The answers to a quick question may be an existing post on Discourse someone can link to.
  • A discussion that starts on Slack may generate deeper thoughts better expressed in a long-form medium like Discourse. After authoring a post on Discourse, a link can be dropped in the right Slack channel to inform people.

The above was originally posted on Feverbee

These are just some of my thoughts on how the different kinds of communication that take place on Discourse and Slack - and how both platforms can be leveraged by a single community.


That got me thinking. (You may probably smell my mind’s overclocking burn from where you be, haha.)

My biggest problem–and the one thing preventing me from using Discourse–is lack of online presence, especially in regards to knowing the actions of other users engaged upon a specific topic.

I would rather not split my users between two apps.

However, to use Slack (or Mattermost or Rocket.Chat) as a tagging field, coordinator and “drawing board” discussion spot to create long-form topics…that sounds feasible.

With Hubot Rest API integration, it may make things less about two separate apps and more about using Slack as a “lobby” for the bigger discussion Discourse-side.

Thank you for posting this.


Something I think worth mentioning is that Slack displays a preview of Discourse links posted, in a similar way Discourse’s onebox works. For Stonehearth, the community has access to the public Discourse, and the mods can have chats “offline” on Slack. We tend to use Slack in a similar way to how Meta staff seems to use whispers. Someone will copy a link to a post into Slack, everyone will have context, and we can have quick back and forth discussion before posting publicly on the Discourse.

I have been quite vocal against presence features but I feel like I would like to experiment with adding presence to private channels (in particular messages) no timeline for it yet.


See also:


I’d like to point out that the insightful posts in this topic so far apply to most/all brands of chat services (as subtly suggested by @purldator) and not just Slack. Hopefully people who are not Slack users will be insightful enough to give it a read, too. :slightly_smiling:


Where I work, we introduced Discourse and Slack around the same time. At that point, we were using HipChat and Slack was the new hotness, so we jumped on board. Discourse has been a rock solid platform, easy to control, easy to use, with relatively easy uptake. I describe it as “a shared email inbox” to the older non-technical folks around here. The email integration portion is excellent and allows us to pull in new users very easily.

Slack… the ease with which we can add and use integrations is the killer feature. My team is full of programmers, all of whom have figured out creative ways to use the Slack API for notifications, etc. Slack has helped us eliminate some of our insignificant emails.


:microphone: If I could turn back time…
:microphone: If I could find a way…

I would never have introduced Slack to my company/group. There’s something about the way people use it and interact with it that makes it FAR more prone to time wasting, NSFW content, embarrassing behavior, etc. It’s a giant distraction. I turn on the “do not disturb” feature at the beginning of each work day and leave it on all day. My boss pings me all the time. It seems like just because somebody is green on Slack that it gives others the right to intrude in their work. I can only imagine how much lost productivity we have from Slack. :confounded:

So why don’t we toss it? I like that we can get rid of lots of email with quick chats. Discourse doesn’t do that for us, yet. If Discourse ever integrates chat, online status icons, and “Jane Doe is typing…” types of messages, please please put options in to allow administrators to turn them off. At my company, perhaps Discourse works best for us when we actually do think of it as the shared email inbox. The ease of file sharing, the ability to have public and private categories, tagging people to get their attention, etc… I see MS putting many of those features into Outlook online/365 because they work and make email better.

For all of the articles that I’ve read that talk about how Slack is the email killer, after using it and Discourse extensively for the past 18 months, I have to say that I think that Discourse actually is closer to becoming the email killer to me. It’s on the right trajectory, though there are a few features missing that would allow it to become a full replacement. As for Slack, I’ll continue to use it for some hobby teams to which I belong, but I dislike it more each day as a productivity tool at work.


We use both Slack and Discourse, for very different purposes. It’s very unlikely that if one started picking up features from the other that we would use them in that way.

I go to great lengths with new staff members to emphasize that Slack is to be used for any real-time, ephemeral communication, the high-volume low value junk which will be irrelevant within a week. Beyond that it’s the home to our integrations, but again these are very much point-in-time, with no lasting value. For this reason it’s right that Slack has and relies on a local app, push notifications are what keeps people engaged.

Discourse, on the other hand, hosts all of our persistent discussion, knowledge, and article comments, and typically represents a lower volume of higher value stuff. We’ve also begun to use it for certain external communication. Partner organisations can register for accounts and participate in discussion directly on the site, or via email as they did before.

One big benefit of the above is the different pools of search, when I search Discourse I know I won’t get results from all of the cruft discussed day to day. Likewise when I search Slack, I’m not faced with the lengthier posts I’m typically not interested in.


This is indeed my biggest concern regarded to Slack.

At the moment we’re are working as a small team with 4 core members. Mostly via Discourse.
Slack failed in our daily workflow, because:

  1. An additional messaging App, requires special attention, (work-life-balance :stuck_out_tongue: )
  2. … costs extra battery life (smartphones).
  3. … is another gated community platform (no future export possibility)
  4. Safe Harbor issues / NSA / CIA US intelligence agencies @ Orwell 1984
  5. if you’re not paying for it you’re the product – and we won’t to pay for dozens of SaaS provides
  6. It’s not an good option for external partners.
  7. The own web portal implicates much more trust & less security concerns. **

My hope is, Discourse become more and more integrated, rich of features and my friends and colleges are feeling themselves pleasant and welcome with it.

Did I mention, I love Discourse a lot? :heart_eyes:

**Until someone is keeping Discourse daily up-2-date


I’ve been thinking a little bit more about what makes Slack fit some small niche that Discourse doesn’t. Quite simply, it comes down to how the UI supports quick hopping between channels. Members of my team easily could use specific topics in the same way that we use Slack channels. However, there’s no convenient way to have those topics of interest all lined up in the column on the left so that we can navigate quickly between them.

It would be interesting if Discourse had a UI view that takes all topics that you follow that are tagged with chat (or something) and aligns them in the same type of two-column view as Slack. I could be wrong here, but I think just having the ability to quickly hop between them and see which have new posts would enable people to move a lot of Slack conversation over to Discourse.


I can say, we’ve made the category view to our starting page. If you’re going to colorize sub-categories with the same color of the main one, you’re getting very clean and intuitive workflow. As long as the categories will be used for specific projects / processes of you’re work.

Therefore, we’re able to (un-)subscribe to relevant and non relevant work areas in every detail.

Partners could join our community portal with special group access. They just need to signup with a white listed mail address or by individual invite. This is absolutely great!

Last but not least, we’re using the badge system to reward & identify our involved visitors / members / colleges (> 200) with their individual (machine) qualifications. This is necessary to keep our place safe, prevent unprivileged access to those expensive prototyping machinery and also promotes an easy way to keep in touch with them. Unlike others, if someone wants to work with our machinery, we require a public profile picture. Nothing more and nothing less. Member badges and RFID tags for door locks and relais won’t work for real world problems like sharing them with others. Sure, the person who gives his/her “key” away will be responsible. But this didn’t prevents them by (maybe) doing it so. – By knowing each other in real person, we’ve got a much richer community experience. At least for our most active members.


I’ve thought about that, and I think it would work for some people at my company. However, we are 4000 people in 75 countries working on 700 - 1000 projects at any given time. Some of those last 2 weeks and some last 30 years. Many of the projects are under NDA and/or can’t be discussed widely. Even if they were, the discussion isn’t relevant to most people, so they don’t want to see it. The additional of group ownership was a lifesaver for us because we can give managers ownership of categories in which some of these projects are discussed and they can manage who can see what within their teams. At the moment, we have well over 100 categories, most for specific projects. Within the context of those projects, Discourse works very well. As a larger “public” discussion area, while we’re all at the same company and there are 1/2 dozen categories that are general enough to be of interest to everybody, most people just don’t want to see everything.

The reason why I said a slack style pane listing topics and not categories is because for any type of Slack replacement – chat at the category/channel level – the extra step of clicking a category and then clicking into a topic is enough of a barrier to quick communication that they’d likely avoid it. The use case I would see for this type of pane would be similar to slack… chat at the category level for quick Q&A where it’s not worth the effort/time to create an entire topic about the issue.

But… this isn’t a feature request thread, it’s a Slack &/or Discourse thread. My comments here mainly were to try to help bridge my own understanding of when/why we use one vs. the other.

Regarding integrations, we’ve already started to migrate more of this reporting to Discourse vs. Slack. The archival nature of it and the ability to more easily mention someone to trigger a focused email makes it work really well for this. Integrations aren’t automated, like with Slack, but devs with some API knowledge can create them easily enough.


Slack is a form of IM (Instant Messaging) whereas Discourse is where people contribute something/be productive…


:smirk: :flushed: :worried:


I use Slack and Discourse, I can say that the way we talk in both services are very different. :philosoraptor:

1 Like

My experience is that there is a significant group of people out who:

  • Are now very familiar with Slack
  • Use Slack on a daily basis
  • See how Slack has replaced email in many situations
  • Are not as familiar with Discourse

There are many here that believe Discourse is often simply a better solution than Slack. Some of us apparently think this is always the case - others like me think there are real benefits to having both.

If you’re working with a community or organization where Slack adoption is already a success, I think framing the idea of introducing Discourse as a complementary system makes sense pragmatically, technically, and socio-politically. The original post was drafted as a starting point for this discussion. Perhaps Slack eventually goes away in an community like this, but I would be surprised.

If, on the other hand, you are working with a community that has not yet introduced either system, then the question is, should you start with Slack? Discourse? Or both? And in this case, I think “it depends” my answer, but I’ll save you the details for now.

Finally, if you are a community that uses Discourse exclusively, the question of whether to introduce Slack is not-so-obvious, but I think there are good reasons to proceed with caution. The right answer here is probably also “it depends”. Perhaps the original post is a good starting point for this conversation too, but in this case, I could see making a case for starting with Google Chat / Hangouts, or one of the up-and-coming plugins here as a starting point before going all in on Slack.

For what it’s worth, I find myself in the first situation now, which is what originally motivated writing those thoughts down. And when I saw someone on Feverbee was considering replacing Slack with Discourse, I wanted to share this perspective.


I was thinking about filing a class action lawsuit against Slack on the basis of its misleading advertising as a time saver.

Sadly, my imagination fast-forward to the Motion to Dismiss hearing filed by Slack attorneys. The judge’s first question was:

“What’s the name of this thing again?”

Motion granted, case dismissed.


Prepare yourselves for some weekend reading!

This is spot-on, and I consider this to be the key differentiator between the two. On the one hand you have the ephemeral content of a chat, and on the other you have varying types of perennial content. (grab your thesaurus and suggest something better if you’d like).

Ephemeral content has greater social impact

A few select forums develop a culture that transcends their common subject matter. Their “Off-topic Discussions” category might be the most active one of them all, with members talking directly to one another, sharing the kinds of things they’d share on a traditional social network.

While this is a rare occurrence on a forum, this is the norm in chat. Give it a little time and I assure you, it’s about to get personal. There’s something about sharing that moment, being together in the now, that lends itself to Getting Real. Getting personal on a forum feels more like broadcasting, made even weirder by metrics (Likes, Replies, View) that can unintentionally imply that my piece of personal news didn’t “perform” as well as someone else’s.

From a data perspective, chat exchanges such as “Holy sh** I just became a dad!”, “where’s our invoice template again?” and “I need fresh eyes on this weird query” are entirely disposable in the long term. But used right (stating the obvious here), the value cannot be understated.

Perennial content has greater historical impact

If you add a new member to a 10-person team, there’s no way you can tell that person:

“Getting caught up is really simple, just look at the chatlogs for the past 30 days!”

Content posted to a forum on the other hand is expected to stand the test of time. Not usually in perpetuity like a static doc page - which is at the very end of the “perennial content” spectrum - but for the foreseeable future. You put in there any type of content that you expect you’ll refer back to at least once.

Here, in the case of adding a new member to your team, you can actually tell that person to check out the last 30 days worth of forum posts. Even at 200 topics, it’s remarkably easy in Discourse to skim through these and quickly figure out which ones pertain to you based on:

  • Categories
  • Titles
  • Participants
  • Top rankings
  • Strictly linear discussions in the topics you do check out.

Choosing the right communication stack

I think most projects benefit from a combination of ephemeral and perennial discussion platforms – that’s the real e-mail killer right there. However, there’s more diversity across the perennial platform stack, and that’s where I think forums are currently facing a greater challenge than chat. GitHub Issues, Kickstarter Campaign, Meetup, Google Groups, even StackOverflow tags; these are all perfectly viable discussion platforms for a small project.

Let’s take GitHub Issues for example

GitHub Issues might feel a bit awkward for longer discussions, but it gets the job done and it’ll take a lot of these discussions before you start seriously considering adding another piece to your communication stack. Add too many ways for users to open a dialogue with you and many prospective users won’t bother trying to figure out the right place to post.

So while Discourse only comes into play at a larger scale, GitHub Issues is immediately useful with 2 or more people, and it’s very low-commitment since it comes bundled with the Git repository you’re already using. I don’t see any reason nor way for the likes of Discourse to impose on this space.

The pitfalls of chat for discussions at scale

Similar to an issue tracker, chat scales all the way down to 2 people, but becomes somewhat unwieldy when you scale up into the tens of thousands, which is where Discourse excels. Specialised platforms like GitHub Issues fail to support discussions at scale because, well, they’re specialised for other things. The same goes for chat really, but since the distinction here seems more muddled for end users, I’ll elaborate.

  • Chat is not good at accommodating global discussions carried across multiple time zones
  • Chat only supports one primary topic at a time per channel, as opposed to discussions happening asynchronously
  • Chat is non-linear, which is poorly suited for troubleshooting that doesn’t culminate in a solution shortly after the problem is presented.
  • Chat discussions are difficult to leave and come back to because you have to time it just right for the discussion to pick up momentum again.
  • Chat is not very outward facing. It doesn’t produce link-able content or best-of aggregations. When’s the last time you heard of a chat “going viral”?

Natural growth rate of a distributed team’s communication stack

I think most digital collaborations should and do follow this model:

  1. You’ll start off with mostly perennial content, spearheaded by a platform specifically geared towards your line of work & strategy.

    • GitHub/GitLab/BitBucket
    • Email
    • ArtStation/DeviantArt
  2. If your initial prototype (by words, code, pictures etc) gets traction you’ll need to facilitate more effective coordination with your closest collaborators/users/peers by adding ephemeral discussions to the mix.

    • Slack/HipChat/Gitter/Mattermost
    • Hangouts/Skype
  3. Your project becomes popular to a point where you need to support discussions at scale.

    • Discourse / NodeBB / Vanilla
    • Mailing lists / Google Groups (I tend to advise against the big G here, because they don’t provide a sane export option)

I don’t see Discourse effectively inserting itself into step 1 or 2, nor should it try to. I’m fine with only being relevant at a certain scale.

edit: We should and will insert ourselves into Step 2! And in doing so we’ll inevitably be creeping into Step 1 a bit as well.


Just to add to this, we found that the paid version of Slack was significantly less useful to us in some regards. Free accounts only provide access to the last 10,000 messages. It forced people to think about the service they use for each communication.

Paid accounts have no such limitation, once that limit went away we would all referring back to Slack for months-old messages.


I enjoyed your post and agree with most of the points. I’ve also always told people to use Slack for ephemeral chat. There are very useful conversations that happen through Slack and improve efficiency of communication for my team.

Where your argument sort of falls apart is in enterprise environments. There are a few points to make here:

  • The fewer tools for communication, the better. There’s a huge inertia factor when you’re trying to get an organization to start using a tool. SSO is huge in this regard.

and the really big one…

  • I work at a company with ~4000 employees. Enterprise IT groups usually are supposed to find tech solutions that work for the entire company. If we were to pay Slack’s $6.67/month/user for the entire company, it would cost us over $320,000 per year to use Slack for chat. In my case, thankfully, we are a non-profit and get free Slack accounts.

another non-trivial point:

  • We work on a lot of USG contracts that requires us to have physical control of the hardware hosting files that we share. We can’t do that with Slack (though we could with HipChat or Mattermost, etc.)

So, from my perspective, the first bullet is the real point/problem here. The third point also comes into play.

Discourse is much closer to also providing the features that make Slack useful than Slack is to providing the features that make Discourse useful.

Let’s say that I went to my IT group with a proposal to use one of these tools.

A) Slack. $320k/yr. No forum for perennial content. Email integration is shit. Files are stored off-site.
B) Discourse. Free (see below). Stores perennial content, Email integration is fantastic. Files are on site. No chat.

IT are wary of free things, so let’s say that you guys agreed to support/manage Discourse on site for 10% of the cost of Slack. The only argument against going with Discourse, then, would be the potential need for another tool to fill the chat gap. The company could provide the best of both worlds and save ~$290k annually.

Figure out some way to fill the chat gap and the choice between these two is extremely clear for enterprise customers.

Probably too late for a ninja edit, but here’s Slack’s forthcoming enterprise solution, which is even more expensive:

If the $32/user/month is correct, it actually would cost a company the size of mine $1,536,000/year to use Slack. Enterprises pay this type of money for garbage like Salesforce. I’m currently battling against Salesforce Chatter as a corporate chat platform. We pay millions/year to use it and it is freaking terrible.