Simple idea to prevent spam and increase proposal quality

I like this idea a lot. It would disincentivize spam, but allow good proposals to surface even if they have a risk of rejection. The penalty of a spam proposal falls directly on the proposer, not on the voters, because you are not trying to nullify the proposal result or change voting rewards. I could see implementing a very high spam fee. I agree that designating a proposal as spam should require a little more effort such as confirmation of that selection.

The burden of the spam penalty is squarely on the proposer. There is no loss of voting rewards for the voter. The proposal is not cancelled and it is not hidden. There is no incentive for the voter to vote yes in order to get rewards. There is only a large spam fee for the proposer.

I think it also addresses concerns about high proposal reject costs…especially for people who think high proposal reject fee is a violation of freedom of speech. A rejected proposal could have a very low proposal reject fee because this idea introduces a new spam fee. Hence, those great ideas that come from community members who are not whales and don’t want to crowdfund their proposal can still surface without having to worry about the risk of a rejected proposal that is still a quality proposal that meets community defined standards.

I don’t agree with a lot of the details in the Proposals Should section though. I don’t think we should expect Governance proposal to rise to the level of implementable code. I fully agree that Governance proposals should be specific, actionable, and well reasoned, but full details of implementation don’t need to be worked out at the time of the initial Governance proposal. For example, I think Dfinity had a reasonable use case for the 25 Long Term R&D proposals back in Dec 2021 where they were specific about the scope and asked the community to approve the plan. That seems like a reasonable use of the governance system that isn’t about code changes.


Imagine that someday someone suddenly has a crazy genius idea that might be adopted but finally has to give up because of the high rejection cost or the fear of being considered to be Spam by the community.

It seems that everyone now wants the NNS to be perfect, not to be strong.

Really miss the old days when anyone can submit a proposal as long as he has 1 ICP.


hahahahahahahaha funny

1 Like

OP, your premise that large companies will be more willing to take on extra financial burden on the nns ‘just because’ is flawed. if anything they would be deterred from ICP because of that crap.

1 Like

Well, I think we already saw crowdfunding to resolve this and actually you’ll end up with same problem once ICP costs $$ 1200…

I agree that it won’t solve current spam, but it’s for sure the right path to go with proposals - there’s no reason to ‘punish’ anyone for a good-faith proposal (which might get rejected by 50.0001% majority)

Yes, you’re definitely right.

It just seems so hilarious that the Twitter, as a web2.0 app, wants more freedom of speech, while the NNS, as a web3.0 app, wants less freedom of speech.

It makes me a little sad, as a free speech absolutist.


If the idea is so good that it’s likely to pass, then it shouldn’t be hard to convince an organization/DAO to draft a formal proposal and submit it on one’s behalf. Or to secure enough funds from community crowdfunding to submit it oneself. If no organization will touch it, and nobody will donate to the proposal stake pool, then it’s unlikely that the idea would have passed an NNS vote anyway had it been submitted immediately.

I fail to see how the concept of freedom of speech comes into play here. If my idea were to propose banning certain topics from being submitted, then I could see the issue. Any ideas can still be discussed on forums and submitted for a vote. Increasing the financial risk is meant to limit users from cheaply spamming the NNS with useless proposals by making the very costly to do so. It doesn’t prevent legitimate proposals from being submitted because, as expressed in the OP, proposals that are rejected, but not voted to be poor quality or spam, will not incur a cost on the proposer.

If nothing is done to prevent low-quality spam proposals from flooding the NNS, then the NNS will become practically unusable in the future if someone, or a group of people, deliberately launches an attack against the network. The only sure-fire way of guarding against such an attack is to make it too costly to be worth doing. My idea avoids that outcome while also preventing legitimate users from being punished. Automated detection systems, or randomly selected human arbiters, can also work to prevent this, but a dedicated enough spammer will always manage to find a way around such systems.


Not companies, but organizations and DAOs, specifically those dedicated to the ICP network and its advancement. Already there is Dfinity, the ICA, as well as smaller DAOs. The NNS with its liquid democracy model seems to be deliberately designed to encourage the formation of these organizations. It’s likely that within the next 5-10 years, the NNS will almost entirely be driven by 2 to 3 dozen organizations and DAOs (and hopefully not fewer). These are non-profit organizations that don’t operate based on a profit motive, but are motivated to improve the network as a whole. An organization, especially a DAO, submitting a proposal would naturally gather funds via crowdsourcing from its members and supporters to add to the proposal stake. The proposal stake being the minimum amount necessary to submit a proposal, the funds being locked for the duration of the proposal, and either unlocked or burned depending if the proposal is voted to be spam.

Furthermore, these organizations would almost certainly put in the time and effort to draft high-quality proposals which, even if rejected, would not be voted as spam, and therefore there would be no cost for the rejection. The funds could even be returned to the donators automatically via secure smart contracts, so there would be no real cost and no risk of someone running off with the funds.

1 Like

Would you mind clarifying if and when you plan to submit this as an NNS motion proposal?

It seems like the Proposals Should section might take longer to develop and get input from the community, but the NNS dApp functional part is so simple and effective that it seems like you don’t need a multiweek deliberation. It would be nice if these are separate proposals and the first is submitted within the next week.

It is not that a good idea is likely to pass; it is that an adopted idea is good. There is a difference here.

Community crowdfunding might be dangerous; see the ICproposal Rug Pull.

Many tech geniuses are lone wolves, and some of them may come from the third world and may never join in this forum.

It is indeed about freedom of speech here; it is just you not fully understanding the essence of freedom of speech here.

Words can never hurt you without your permission. That is why I am a free speech absolutist.
That is, low-quality spam proposals can never hurt anyone as long as they are rejected. Of course, it may hurt your feelings, but that is not a real hurt; it is just your feelings.
It is hard to imagine that in a place like the NNS where everyone is actually anonymous there is any necessity that we should restrict freedom of speech.

Decentralization means that everyone can freely make any speech, whether it is good or bad. If there is no absolute freedom of speech, web3.0 will be meaningless.

I can repeat it here: No one can give a precise definition about what is good or bad; if a proposal is adopted, then it is good; if a proposal is rejected, then it is bad. Before the voting result comes out, we can never decide.

If one can submit spam proposals to flood the NNS at the cost of 1 ICP for each proposal, it does not mean that free speech is dangerous; it just means that ICP is so cheap that even burning very much ICP everyday is not enough anymore.

You should never try to prevent someone from submitting “bad” proposals in the NNS; you just should reject them.


We can see what side of the camp you are on and you will not prevail. It’s not about you and what you want but how we would like things. Instead of your ramming in down our throats why not try listening and understanding others point

Ok, you can say that. :rofl: :rofl: :rofl:
I just want to freely express myself, but I am not very interested in changing anything, and that is all. :rofl: :rofl: :rofl:
Of course, the community can shut me up if they want. I am from China, you know, so I already get used to that. :joy: :joy: :joy:

1 Like

Your a person and I would prefer to be a mate, I don’t want to send you anywhere.

Originally I wasn’t planning on submitting a proposal myself, simply sharing the idea, but since there’s interest, I’ll work on drafting a formal proposal in the near future. There’s still some details to work out, especially in regards to the guidelines. I agree with your feedback from previously regarding how detailed proposals need to be. Requiring implementable code and complicated technical details to be worked out is going a bit too far, especially for highly complex and long-term features like those on Dfinity’s roadmap, so there needs to be a balance between “vague idea with no supporting details” and “ready to immediately implement.” I’ll think on it and do do some research to see if I can come up with better guidelines. Any feedback or ideas are appreciated.


I’m an advocate for freedom of speech and against censorship as well, which is why I see so much potential with the Internet Computer to protect the rights of people to speak freely and openly without fear.

However, when it comes to freedom of speech, one needs to consider the issue of venue. A public discussion forum is a great place to allow anyone to discuss and express any sort of ideas they want. Although even then there are generally going to be some guidelines in place to prevent illegal content. And perhaps even guidelines to prevent low-quality spam. On a traditional website, that’s up to the site owners to decide, and on Web 3.0 it’s up to the DAO that controls the service to decide. In general, I’m in favor of very minimal moderation, but not a total lack of it. But I’m getting off-topic, back to the point.

The NNS is not and was never intended to be a public discussion forum. The venue is completely different. It is a governance platform. As I stated in the OP, good governance demands close attention and consideration form all governors, in this case, NNS voters. That is impossible if there’s a flood of low-quality proposals to wade through, because after a certain point there’s simply not enough time to go through all of them and the rewards aren’t high enough to justify the effort.

Imagine this hypothetical:

The U.S. Congress suddenly opens up the floor to the public, so that any American citizen can digitally submit any proposal for the low price of $10 that the house and/or senate are, by law, required to read and vote on. How soon would the legislative branch cease to function due to complete overload? A month, a week, a day? Most likely, within hours.

The NNS is the legislature of the Internet Computer. Do you see the parallel? The system will grind to a halt and cease to function properly if something is not done to address the imminent threat of low-quality spam proposals.

You’re correct that it’s not possible to give a precise definition of what’s considered “good” or “bad,” but a precise definition is not needed when a generally accepted definition is good enough, as is the case with guidelines everywhere.

1 Like

The U.S. Congress example is not very appropriate, since the NNS should be infinitely designed like the Internet Computer, i.e., infinitely scalable. The blockchain world is a digital world, and thus many concerns in the real world do not matter anymore; as for now, I don’t see any real problems of absolute freedom of speech in the NNS.

I think that in the end every proposal should be just a piece of code so that every proposal can be implemented automatically as soon as it is adopted. That is, everything should be precisely defined so that it can be realized or implemented in code.

Guidelines for submitting good proposals are definitely necessary, but it is better to put those guidelines in the Internet Computer Wiki or some other official websites. The Dfinity or the community leaders should educate people on many things, but should not force people to do anything.

I presented a simple idea to deal with the Spam proposal issue yesterday that you might be interested in:

If a listed followee finds a “Spam” proposal, then she can immediately fold this proposal so that her followers will not automatically see it. If a follower wants to see what she folds, then he can just click some button to see the folded; if he think she always folds proposals maliciously, then he can unfollow her or even submit a proposal to unlist her.

I think this idea can cause minimal distortion of the voting market. It is so simple that someone must have already recommended it elsewhere.

1 Like

You may be interested in this response from @diegop at Dfinity regarding what they are looking for in a proposal. I think it is a really good list of expectations as an alternative to your Proposals Should section.

1 Like

Hi @Jarred-Sauce , all,
please find below a draft assessment of this proposal against our design goals . Feedback on this assessment is very welcome!

  • Decentralized & active: Neutral.
  • Secure & available: Neutral.
  • Long-term thinking: Neutral.
  • Efficient & scalable: Neutral. Potentially could become positive by making use of the spam label for filtering, so that users can choose not to see proposals which are labelled as spam by others.
  • Reactive: Neutral.
  • Purposeful: skew rewards, bad content
    • Bad content: Neutral
    • Skew rewards: There seems to be still an incentive to submit spam proposals as it will increase the rewards paid out to active voters.
  • Simple & accessible: Neutral.

There is a potential for valid proposals to be listed as spam with a user spam button.