Badges not being granted for restricted categories

So, in other words, the rationale behind this feature is that, for fairness and openness sake, and to enable public audit of these “achievements”, any user must be able to verify the badges earned by somebody so that there is no chance of favoritism.


Sorry to bump this up again.

I understand that badges are not awarded for topics in restricted categories, however this leads to a very strange user experience.

For example, my forum has both restricted categories and open categories. People mostly participate in restricted categories, where they would do a lot of things without being awarded badges.

Then they did something in an open category, and then suddenly they are awarded a “First Like” badge or something, although they probably have Like’d many many times before in the restricted categories. This caused my users to ask WTF?

Is there any alternative to mitigate this, other than opening up many categories to Everyone?


I really don’t know, as I recall this was a decision @sam made long ago, it is unclear to me why this is a desired behavior.

Cause the system is not auditable if we did that

Now anyone can see who has a badge and why they have said badge


And existing badges are removed, if topics / posts that originally triggered the badge are moved to secure categories, as I recall.

1 Like

Could a compromise be that actions related to a specific post in a restricted category just display as private or even better show to users with rights to see that post?

Alternatively just turn off the info displayed about the reason for the badge via a setting.

The admins can dig around in the database if needed. I know some users will game the system but who cares? The goal is to reward good behavior. The bad guys are winning under the current system.


Yes (though I’m not sure *exactly * what you mean here), I also think it would make sense to restrict information about the awarding post rather than not awarding the badge at all.

So, more specifically: from what I understand, the only problem is the link to the awarding post, because even if a user doesn’t have access to that post, the url would reveal information about the post, right? So what is needed is some mechanism that either renders or doesn’t render the link when it is displayed (probably too much effort) or that either includes or doesn’t include the link in the first place, i.e. when the badge is awarded.

If none of these compromises works, I would still welcome a setting that turns off the badge audit trail altogether and then awards badges regardless of restrictions.

1 Like

This I think will satisfy a lot of people running mostly-restricted forums.

1 Like

I can see a site setting, default off, for “allow badges on restricted categories”


Don’t see it… Where is this setting?

In my :massage_man:t3:In a future pr contributed by the community


is there any news about this? Our discourse is mostly internal.

Nothing new yet, it is a complicated piece so I am not sure I can even put a #pr-welcome on it.

Just to remember that this still exist, any plans to this?

I expect that this is not a simple change and it is worth considering some potential issues using it and developing it.

The proposed feature, a site setting, default off, for “allow badges on restricted categories”, is not inherently community-building for the entire community or forum.

So the current default makes sense for Discourse:

Some badges naturally force users to involve themselves outside their group simply because of the hundreds of users that need to be involved:

  • Good share badge
  • Great share badge

Awarding some badges can be weird for a team who all interact in a restricted category, more so if the team also see each other face-to-face:

  • First flag of a post - admittedly an unlikely situation?
  • New user of the month

The value of a topic/post badge earned among tens of users is probably less than for the entire community of hundreds or thousands.

I do have a private community which has a restricted category for each team’s group. We could use the proposed feature but we probably won’t because we want to encourage interaction and sharing between the teams.

This topic already shows, that the decision should be done by the admin of the used discourse.

The current behavior may fit to your community. But not to our gaming community. 99% of our topics are in private categories and people asking me why the not receive badges. For us set allow badges on restricted categories to true would be exactly what we need.

I’m not arguing against what you want. :slightly_smiling_face:

I am saying that there are issues with implementing and using such a setting. Other forum owners who read this topic should be aware of those issues.

The proposed feature has been awaiting a community PR for two years so far. I don’t expect any movement anytime soon because it doesn’t appear to be on any feature list or roadmap.

So you might be better off running queries to trigger manually-assigned badges because you can implement that right now.

1 Like

A custom plugin or badge sql might be your best short term solution.

1 Like

Anyone still look for a solution for this? Most users in my forum contribute to restricted categories and they cannot receive deserved badges due to this issue.

1 Like

Just adding my upvote for this function, as I’ve received a couple of complaints from my members of late about badges not being awarded (all of our categories are restricted).

Thank you!