# Limit # topic posts / user / month

**URL:** https://meta.discourse.org/t/limit-topic-posts-user-month/139269
**Category:** Feature
**Created:** [January 21, 2020, 7:45am UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269 "2020-01-21T07:45:16Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![zeroexcuses](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/zeroexcuses/32/167108_2.png) [@zeroexcuses](https://meta.discourse.org/u/zeroexcuses)
#### Post date: [January 21, 2020, 7:45am UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/1 "2020-01-21T07:45:16Z")

</div>

This is a followup to [Limit # of posts / month - #2 by sam](https://meta.discourse.org/t/limit-of-posts-month/139041/2) , in realizing that the original question had little to do with patreon and more with discourse in general.

I would like to be able to limit the # of new posts a user can make / month, based on their trust level. Are there any recommended existing plugins / features I study to get started on this?

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [January 21, 2020, 2:47pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/2 "2020-01-21T14:47:56Z")

</div>

That doesn’t seem like a good idea. If the user uses all of their monthly posts the first day, they’ll be unable to post for the rest of the month. If I couldn’t post for a month, I would not be back.

---

<div class="post-metadata">

### Author: ![tobiaseigen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tobiaseigen/32/539204_2.png) [@tobiaseigen](https://meta.discourse.org/u/tobiaseigen)
#### Post date: [January 21, 2020, 3:12pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/3 "2020-01-21T15:12:31Z")

</div>

Sounds a bit like the voting plugin, where you get a limited number of votes.

Maybe this could be a category setting? Eg you can’t ask for support or post in the jobs board but you can join discussions elsewhere in the community?

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [January 21, 2020, 3:42pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/4 "2020-01-21T15:42:29Z")

</div>

I’m not a huge fan of blocking people from creating content on my site, but perhaps there are use cases where this would be important.

---

<div class="post-metadata">

### Author: ![zeroexcuses](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/zeroexcuses/32/167108_2.png) [@zeroexcuses](https://meta.discourse.org/u/zeroexcuses)
#### Post date: [January 21, 2020, 4:04pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/5 "2020-01-21T16:04:14Z")

</div>

@pfaffman : The use case here is a paid QA/support site. The paying users likely incur a zipf’s law type distribution. The goal is to prevent a few users from taking up everyone’s time.

@tobiaseigen : Yes, it would be nice to have this be category based rather than site wide.

@merefield : I believe the traditional assumption is that questions/answers make the site more valuable – and thus encouraging questions/answers is good. However, in situations where responding to questions is (1) beneficial to the asker and (2) incurs a cost to the community/company, it may be useful to have the ability to limit the # of questions posted into certain categories per unit time.

---

<div class="post-metadata">

### Author: ![Tris20](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tris20/32/264639_2.png) [@Tris20](https://meta.discourse.org/u/Tris20)
#### Post date: [November 17, 2023, 8:53am UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/6 "2023-11-17T08:53:20Z")

</div>

> [@merefield](#):
>
> I’m not a huge fan of blocking people from creating content on my site,

Same but in some cases this is useful. For example, we’re thinking about creating an “Announcements” sub-category. Some people in our company have shown a prepensity to spam announcements. This would damage our Discourse instance as a whole, because users would associate Discourse with spam/noise. Consequently users would be less inclined to explore the platform and find the real value.

Putting a hard limit on the Announcements sub-category of one Topic per month would be a good solution here. It would force the poster to really think “Is this actually _that_ valuable?”. Or even better, it would force them to create a more comprehensive/refined monthly newsletter.

@tobiaseigen I’m reviving a very old topic here 😅 was there ever any movement on this? I’ve seen this plugin:

> [@Limit the amount of topics per user in a specific category](https://meta.discourse.org/t/limit-the-amount-of-topics-per-user-in-a-specific-category/84907):
>
> Originally got the idea from this topic: [Limit one post per person?](https://meta.discourse.org/t/limit-one-post-per-person/80072) though I had a slightly different use case for it. On a community that I’m a forum moderator for, I got tired of people creating multiple advertisement topics in the advertising section. At first, I created a feature request on these forums, but after some trial and error I came up with my own plugin that does the job. play_button Current features list Of course there are plenty of things that can/need to be improved but considering this…

But it’s not quite what we are looking for.

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [November 17, 2023, 10:25am UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/7 "2023-11-17T10:25:51Z")

</div>

> [@Tris20](#):
>
> Some people in our company have shown a prepensity to spam announcements.

Should such situation handle internally, not limiting software?

---

<div class="post-metadata">

### Author: ![Tris20](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tris20/32/264639_2.png) [@Tris20](https://meta.discourse.org/u/Tris20)
#### Post date: [November 17, 2023, 11:29am UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/8 "2023-11-17T11:29:30Z")

</div>

_It’s much easier to justify a well considered technical restriction than it is to justify a retroactive judgement call._

If I moderate announcements after the fact, and the author is higher up in the company, then I get a lot of heat. This is made harder when you consider that most of our management teams are intentionally as loud as possible.

 ![image](https://global.discourse-cdn.com/meta/original/4X/a/0/7/a07d6cda7fd60b2a4a7a07a6c020fd8633f4f53c.jpeg)

However if it’s just an automatically enforced feature, which is consistent, then they are empowered to work around these restrictions and we don’t have to worry about them being too noisey/disruptive.

---

<div class="post-metadata">

### Author: ![tobiaseigen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tobiaseigen/32/539204_2.png) [@tobiaseigen](https://meta.discourse.org/u/tobiaseigen)
#### Post date: [November 17, 2023, 3:00pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/9 "2023-11-17T15:00:51Z")

</div>

Like I said above, I can see the benefit of a category setting limiting the number of topics a user is allowed to post in a category in a given time period. But there is no such setting currently, and I am not aware of any other customers requesting it or having rule of three.

Have you tried the “slow mode” category setting? I’ve not used it but it seems to be what you are looking for? You could set it to 30 days, so users are only allowed to post in the category once every 30 days. Though it appears to not slow down the starting new topics in the category, only replies. You can also auto-close topics so there are no replies permitted at all.

![Screenshot 2023-11-17 at 6.53.26 AM](https://global.discourse-cdn.com/meta/original/4X/a/6/6/a66e917b435d30a4c21175ce90c218198d82e1a1.png)

![Screenshot 2023-11-17 at 7.00.28 AM](https://global.discourse-cdn.com/meta/original/4X/a/6/1/a61f58a909653d3c2664fc6066c4aca38d32cd8e.png)

More about slow mode:

> [@Discourse 2.6.0.beta5 Release Notes](https://meta.discourse.org/t/discourse-2-6-0-beta5-release-notes/168756/1):
>
> ### Topic slow mode
> 
> We added a new slow mode for topics that are heating up. Staff can enable slow mode from the topic admin wrench. When enabled, users will have to wait for a staff configured period of time before being able to post again.
> 
> ![image](https://global.discourse-cdn.com/meta/original/3X/e/3/e35630833ea6b43b433b4a37e6123ac6a332e38f.png)
> 
> ![image](https://global.discourse-cdn.com/meta/original/3X/9/6/966a83b3d4c8663ef3fc3de3bfb5280645cb7bd3.png)

---

<div class="post-metadata">

### Author: ![MikeNolan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mikenolan/32/297597_2.png) [@MikeNolan](https://meta.discourse.org/u/MikeNolan)
#### Post date: [November 17, 2023, 3:27pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/13 "2023-11-17T15:27:13Z")

</div>

We used to have a forum that used a formula based on the number of posts and their length, over the last 24 hours. So someone could make, for example, a half dozen short posts or two long ones. It tended to help reduce overquoting and it also cut into the A-B-A-B-A-B-A-B threads where neither party was willing to let the other person have the last word. The way it was implemented was to adjust the flood time per user.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 17, 2023, 11:57pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/14 "2023-11-17T23:57:25Z")

</div>

If having a rule will solve the problem then tell the people to follow the rule. This is a problem with people who want to behave badly. It’s hard to imagine that “well, the computer won’t let your post go through” is going to be a solution.

But if you’re self hosted and want a plugin to do this, post in #Marketplace or contact me.

---

<div class="post-metadata">

### Author: ![Tris20](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tris20/32/264639_2.png) [@Tris20](https://meta.discourse.org/u/Tris20)
#### Post date: [November 18, 2023, 1:41pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/15 "2023-11-18T13:41:04Z")

</div>

These are all very thoughtful replies ❤

> [@tobiaseigen](#):
>
> You could set it to 30 days, so users are only allowed to post in the category once every 30 days. Though it appears to not slow down the starting new topics in the category, only replies.

I think the second part of this is the significant part. I’ll play with it later in the week, but I’m also pretty sure this is only for replies rather than creating new topics.

> [@MikeNolan](#):
>
> The way it was implemented was to adjust the flood time per user.

Was this in Discourse? Was it a site wide restriction or Category specifc?

> [@pfaffman](#):
>
> If having a rule will solve the problem then tell the people to follow the rule.

The problem is that this requires resources to enforce it. At our org it’s resource intensive each time that happens. The conversation looks like this:

1. I reach out privately – “Hey, keep announcements to one per month please. We need to take this one down”
2. The response is either  
a. “Ok fine” – then complains to boss who complains to my boss and I lose a week justifying this decision to _not_ spam users and dilute the usefulness of our platform  
b. “No we can’t do that, this fire is the biggest fire everyone must know!” – I don’t even want to imagine that one right now. It’s always draining ☹

Either way, I end up having a bunch of meetings where I need to _perfectly_ justify this design decision to the type of people I illustrated above. They do not care at all about the impact on the user, so long as their voices are the loudest.

> [@pfaffman](#):
>
> But if you’re self hosted and want a plugin to do this, post in #Marketplace or contact me.

Sadly not, we’re enterprise customers.

### Possible work around

I’m thinking, maaaybe lean on this:  
 ![image](https://global.discourse-cdn.com/meta/original/4X/6/5/5/655daa914d4be47ff5b107c006316395bdc2385d.png)

That means posts in that category need manual approval, and if I make it that only admins and global moderators can approve these topics we are at least a little further ahead of the problem.

One step further would be to

1. setup a dummy account,
2. add it to an “announcement\_moderator\_bot” group
3. Set the “announcement\_moderator\_bot” group as category moderators
4. Write a python script that runs when an approval request is detected. The script checks who created the topic, and if they posted to the Category in the last 30 days, reject; else approve.

They could get around this by simply getting someone else to post the topic on their behalf, but that step of resistance at least encourages some degree of internal moderation between that group – “Hey, do we really need to send this? I have other stuff to do…”

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 18, 2023, 1:58pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/16 "2023-11-18T13:58:27Z")

</div>

> [@Tris20](#):
>
> They do not care at all about the impact on the user,

This is the problem. Technology can’t fix that.

> [@Tris20](#):
>
> posts in that category need manual approval,

This is your best bet. And don’t do any fancy automatic approval stuff. You log in every day.

And if they post too many then wait until the next meeting and ask everyone if this is so important that the rules need to be violated. Or if they won’t have any posts next month.

Obviously, I work alone.

---

<div class="post-metadata">

### Author: ![JammyDodger](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jammydodger/32/254611_2.png) [@JammyDodger](https://meta.discourse.org/u/JammyDodger)
#### Post date: [November 18, 2023, 4:47pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/17 "2023-11-18T16:47:45Z")

</div>

> [@Tris20](#):
>
> > [@tobiaseigen](#):
> >
> > You could set it to 30 days, so users are only allowed to post in the category once every 30 days. Though it appears to not slow down the starting new topics in the category, only replies.
> 
> I think the second part of this is the significant part. I’ll play with it later in the week, but I’m also pretty sure this is only for replies rather than creating new topics.

I’m not sure the Slow Mode category setting will help here. It’s for adding slow mode automatically to all new topics created in that category. It definitely doesn’t restrict how many new topics someone can create in the category, but it also has no direct effect on how many times someone can post in a category either (ie. It’s not a slow mode for the category itself, but one per topic).

Having a rate limit/restriction is an interesting idea. Though I think the Announcement situation is going to cause you grief no matter what as I can imagine it’s the ‘I want to say this and you’re not letting me’ friction whatever shape it takes that’s going to keep landing you in those meetings. 🙂

The marketplace use case is an interesting one though.

---

<div class="post-metadata">

### Author: ![MikeNolan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mikenolan/32/297597_2.png) [@MikeNolan](https://meta.discourse.org/u/MikeNolan)
#### Post date: [November 19, 2023, 4:04am UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/18 "2023-11-19T04:04:23Z")

</div>

> [@Tris20](#):
>
> > [@MikeNolan](#):
> >
> > The way it was implemented was to adjust the flood time per user.
> 
> Was this in Discourse? Was it a site wide restriction or Category specifc?

This was in an old version of phpbb a number of years ago. It was site-wide, what was done was that code was added to the flood time check to adjust the flood time based on the number and length of posts made by that user in the last 24 hours. (The rejection message was also modified.)

IMHO, a posting limit that is reset after 24 hours is something our users paid more attention to than a ban for multiple days, weeks or months. But that may not be true for every type of online community.

I haven’t checked to see how flood time works in Discourse, a similar tool might be possible.

---

<div class="post-metadata">

### Author: ![Aizada\_M](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/aizada_m/32/352050_2.png) [@Aizada\_M](https://meta.discourse.org/u/Aizada_M)
#### Post date: [November 21, 2023, 3:34pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/19 "2023-11-21T15:34:55Z")

</div>

> [@tobiaseigen](#):
>
> But there is no such setting currently, and I am not aware of any other customers requesting it or having rule of three.

Hello, maybe I’ll be the third 😅 if I support the idea of ​​limiting the number of posts (in my case, I would like to limit not only topics but also messages (replies)) and the length of posts in a certain category per user

> [@JammyDodger](#):
>
> Having a rate limit/restriction is an interesting idea. Though I think the Announcement situation is going to cause you grief no matter what as I can imagine it’s the ‘I want to say this and you’re not letting me’ friction whatever shape it takes that’s going to keep landing you in those meetings. 🙂

You noted correctly, this idea has the right to life  
🙂

---

<div class="post-metadata">

### Author: ![tobiaseigen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tobiaseigen/32/539204_2.png) [@tobiaseigen](https://meta.discourse.org/u/tobiaseigen)
#### Post date: [November 21, 2023, 5:55pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/20 "2023-11-21T17:55:31Z")

</div>

> [@Aizada\_M](#):
>
> I would like to limit not only topics

My takeaway from this conversation is that setting community rules/norms and enforcing them is part of the day to day job of site moderators and only in extreme cases needs to be enforced through the discourse software itself. Slowing down replies _is_ such an extreme case because it helps foster more thoughtful discussion, and gives breathing room to allow more people to join in. I think most communities that use it actually only use it via the topic admin wrench in specific topics that need it. I suspect not many even use the category slow mode setting, and I haven’t heard about it being used to limit the number of announcements being posted to e.g. one per month per user.

Preventing users from posting _new topics_ too often should be enforceable by moderators along with other rules e.g. what topics to allow in each category, etc. I’m sorry @tris20 that you struggle with this in your community! 🤗

Such enforcement could be added to Discourse but I don’t think it’s likely to be prioritized unless an enterprise customer sponsors it or several enterprise customers request it. You could also post to #Marketplace to get it through a plugin. Then if enough sites adopt it then it might eventually make it into core.

> [@Aizada\_M](#):
>
> but also messages (replies))

It’s already possible to limit replies using the category slow mode setting.

> [@Aizada\_M](#):
>
> length of posts

This is new to this topic. What problem are you seeking to solve by limiting the length of posts just in specific categories? There is the `max post length` admin setting but that affects all posts on the site.

---

<div class="post-metadata">

### Author: ![MikeNolan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mikenolan/32/297597_2.png) [@MikeNolan](https://meta.discourse.org/u/MikeNolan)
#### Post date: [November 22, 2023, 3:52am UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/24 "2023-11-22T03:52:19Z")

</div>

I think there’s less value in limiting the length of individual posts than in limiting the cumulative length of posts over some reasonable time period.

But there might be a use case for a category-specific post size limit rather than a site-wide one.

---

<div class="post-metadata">

### Author: ![Aizada\_M](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/aizada_m/32/352050_2.png) [@Aizada\_M](https://meta.discourse.org/u/Aizada_M)
#### Post date: [December 10, 2023, 4:38pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/25 "2023-12-10T16:38:34Z")

</div>

> [@tobiaseigen](#):
>
> This is new to this topic. What problem are you seeking to solve by limiting the length of posts just in specific categories? There is the `max post length` admin setting but that affects all posts on the site.

Sorry for the long response, I didn’t notice the notification 🙈  
I think the introduction of AI in discourse is a game changer. On my instance of the forum, I use AI plugins, thanks to which a zone (category) of communication between people and people with AI appears on the forum. As we know, unlike people, communication with AI is paid and uncontrolled communication between people and AI can cost site administrators a lot of money. Existing AI plugins do not provide the ability to fine-tune the characters entered and the number of requests. In this connection, I think it’s time to add the `max post length` function to the ability to select categories, user groups, and even the ability to configure maximum characters for personal messages. Since most users prefer to communicate with AI in private messages.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [December 10, 2023, 6:38pm UTC](https://meta.discourse.org/t/limit-topic-posts-user-month/139269/27 "2023-12-10T18:38:46Z")

</div>

I think what you might want (until your feature request becomes a reality) is a plugin that would limit the number of posts in a category by some counter, perhaps by removing the user from the group required for posting after that counter gets to zero. Then the user could, say, pay for access to the group and `counter` number of posts (or wait until the end of them month when everyone’s counter got reset?) . When the user posted in that category the counter would be reduced.

The automation plugin could help, but I don’t think it’s got means to manage a counter.

[Next page](https://meta.discourse.org/t/limit-topic-posts-user-month/139269.md?page=2)
