The default rule is no self-promotion, and it quietly forbids the most interesting thing your members have to say.
People join communities of practice because other people there are doing the work. A rule that stops them mentioning what they are doing removes the substance and keeps the small talk.
The distinction is not promotion, it is who the post is for
Two posts can carry the same link and be opposite objects.
"Here is what broke when we launched this, and what I would do differently" is a contribution that happens to mention a product. "Check out my new thing" is an advertisement that happens to be posted in a community. The link is identical; the intent is visible to everyone; and no rule written about links can tell them apart.
The test that works is whether the post is still worth reading to somebody who will never buy. If yes, it is a contribution and the link is incidental. If no, it is an ad, however politely it is phrased — and that test is one a member can apply to themselves before posting, which is the only kind of rule that scales.
Four shapes, and only one of them is spam
Most owners collapse these into a single category and then wonder why the rule keeps producing bad outcomes.
| What gets posted | What it actually is | What to do |
|---|---|---|
| "Here is what I learned building this" | A contribution with a link attached | Nothing. This is the good case |
| "Launching today, would love feedback" | A request, if the feedback is real | Ask what kind of feedback they want |
| A link with no context at all | An advertisement | Ask them to say why it matters here |
| The same link across nine spaces | Spam, whoever wrote it | Remove it, no debate |
Only the last row is a moderation problem, and it is the one your moderation basics already handle. The middle two are conversations, and the first one is the reason the community is worth being in.
The promo channel is where promotion goes to die
The standard compromise is a dedicated space for self-promotion, and it solves the owner's problem rather than anybody else's.
Nobody reads it. The only people who open a promotion space are people who want to post in one, so it becomes a room where members advertise to each other's indifference. It is a quarantine with a friendly name.
Worse is what it teaches. Sending a member's work to a side room says that what they made is contraband to be contained, which is a strange message to send to the people you most want to keep — and it is usually a structure decision made to avoid a judgement call.
Ratio rules turn contribution into currency
The popular fix is a ratio: post some number of helpful things for every promotional one.
It sounds fair and it fails in a specific way. People farm the ratio — five thin comments appear, the promotional post follows, and the rule has converted genuine participation into a toll you pay to advertise. The helpfulness is now transactional and everybody can feel it.
Judge the post, not the ledger. A member who has never posted before can share something genuinely useful on day one, and a member with a hundred comments can still be running a campaign — counting is a way of avoiding the judgement rather than making it.
The real problem is a membership problem
There is one person this whole question is actually about: the one who only appears to post their own thing.
They are not breaking a content rule. They are not a member in any sense that matters — they are using your community as a distribution channel, and the giveaway is not the promotion but the absence of everything else. No replies, no questions, no presence between launches.
Handle that as what it is: "you are not really here" rather than "that post broke rule four". It is a more honest conversation, it does not require a rulebook, and it is the same category as a difficult member rather than a moderation queue item.
Your own posts set the ceiling
Whatever you do about promotion, members calibrate against what you do, not what you wrote down.
An owner who posts a launch announcement every fortnight has established that promotion is acceptable here when it is theirs. The rule then reads as a rule about rank, and it is read that way immediately and permanently, no matter how it is worded.
Apply the same test to your own posts before you apply it to anybody else's: is this still worth reading to a member who will never buy? Sometimes the answer is no and you should post it anyway — but say that it is an announcement rather than dressing it as a contribution, because the dressing is what members actually object to.
Uneven enforcement costs more than any rule
The fastest way to lose the room is to apply the rule to a newcomer and not to a regular.
It is rarely deliberate. You know the regular, you know they mean well, you let it go — and to everyone watching, you have simply demonstrated that the rule applies to people without standing. That is a much bigger claim than anything about links, and it does not get forgotten.
If you cannot enforce it evenly, write a smaller rule. A narrow rule applied consistently beats a broad one applied by mood, which is the same principle behind a code of conduct that holds up.
Ask for it instead of tolerating it
The version that works turns promotion from something permitted into something requested.
A monthly thread where the whole point is to say what you are working on changes the social meaning entirely: the post is answering a question rather than interrupting one, nobody has to judge whether it was allowed, and the people who read it arrived expecting exactly this. Give it a rhythm and it becomes one of the more useful threads you run, which is exactly the kind of recurring slot a content calendar exists to hold.
It also solves the hardest case for free. The member who only shows up to promote now has a legitimate place to do it, and if they still will not participate anywhere else, you have your answer without needing a rule at all.
What software can and cannot do here
Some of this is automatable and it is worth being precise about which part.
Mateflow's automated rules match on keywords, patterns or spam signals, and each rule chooses for itself whether to flag, hide or delete what it catches. That is exactly right for the bottom row of the table — the repeated link, the known scam domain, the message posted across nine spaces — and flagging rather than deleting keeps a human in the loop for anything less clear-cut.
It can do nothing about the other three rows, and no configuration will change that. The difference between a contribution and an advertisement is context rather than content: the same sentence, the same link, from two different people with two different histories, is two different posts. A rule engine sees one string. That judgement stays yours, which is the argument in AI moderation for communities applied to the case where it bites hardest.
Three things not to do
Do not write a rule you will not apply to yourself. Members audit this automatically and the finding is permanent.
Do not ban links. It is the one rule that is easy to write, easy to enforce, and aimed at the wrong thing entirely — you will remove the useful posts and keep the empty ones.
Do not let it run silently. If promotional posts are drifting and you say nothing, the standard has already moved; the members who noticed first are the ones who quietly stop posting anything real.
The bottom line
Self-promotion is not a category of post. It is a question about who the writer was thinking of.
Ask whether the post is still worth reading to somebody who will never buy, and let the answer decide. Skip the ratio, skip the quarantine channel, and handle the person who only ever arrives to sell as a membership question rather than a content one. Then ask for it on a rhythm, so the good version has somewhere to go — because a community where nobody may mention their own work is a community that has quietly asked its most active members to be less interesting.