Requirements and costs of downvoting

What does it take to unlock the privilege to downvote? Do you get it at the same time as the privilege to upvote, or later, or sooner?

Should there be a cost to downvoting, like there is for answers on Stack Exchange?


I think there should be a cost however small to downvoting, mostly just to try and get users to stop and think before they downvote, i.e. ask themselves is this worth the cost to downvote?

As far as when users get it, I would suggest the same time, most people only upvote anyways and getting it later leads to the unbalance in the HNQ questions were new visitors can upvote but not downvote and that skewes the scores mostly positive.

For the sake of not driving new users off, I think voting should come fairly soon in the listing.


This is a product of two quirks of SE that probably won’t show up in Codidact as such: the association bonus and the HNQ listing. In particular, if it’s eventually useful to have something analogous to the association bonus, it need not be specifically selected to include upvoting but exclude downvoting; it might leave out both, or include both.

I’d suggest the main focus should be getting a good, cheap estimate of when a user is likely to know how to downvote well.

1 Like

Upvoting should be available very early on. A new user comes in, asks a questions, gets answers, and should be able to say thanks for the answers by upvoting. This argues that asking a single (good, not getting into how to decide that right now) question should be enough to unlock the upvote ability.

Downvoting should come later. It takes a while to get used to how any site works, the norms of quality, on-topicness, etc. SE’s reputation system works well enough to measure that, then unlock various privileges as you get more attuned to the site.

Here is a very different idea on what the cost to downvoting should be: You can deduct some rep like SE does, but most importantly, SHOW ALL DOWNVOTES PUBLICLY. When you downvote, you should get a popup where you can write a short message explaining the downvote. You don’t have to fill it in, but even if you don’t, you are still shown as having downvoted, with a blank message in that case.

Public downvotes solve several problems:

1 - It kills vandalous downvotes. Vandals rely on anonymity.

2 - It kills revenge downvotes. When you have to stand up and explain why you downvoted (or admit you did it for no reason), you will be judged by your peers. Nobody wants to look like petty in front of the crowd.

3 - The author getting downvoted knows what to address.

4 - Misconceptions about why someone thought a post was wrong come to light and can therefore be fixed.

5 - If you’re not willing to stand behind your point that something is wrong, then you’re probably not worth listening too anyway. Put another way, the quality of downvotes will be better since the person’s reputation (I mean human, not fake internet points) doing the downvoting is on the line.

So to summarize the answer to this part of the question, the cost to downvoting should be appearing petty or looking like an idiot for doing it wrong or inappropriately.

I’ve cast a few 1000 downvotes (lots of upvotes too, but that doesn’t matter right now) on SE, and I’d be fine with every single one of them being outed as coming from me. On the other hand, I’ve seen a lot of vandalous or revenge downvotes. It’s one of the things I dislike about SE.


Strong disagree.

While I probably could justify every one of my downvotes on SE, the idea of requiring people to do so is not one I could get on board with - it’s already hard enough to get people to downvote low-quality content because it costs them precious reputation; asking people to write actual coherent words is going to reduce the downvote rate to almost nothing.

Likewise even if we don’t require explanations but make votes public; that leaves those votes hanging over your head in the sense that seven years down the line, someone might come across a post where they disagree with your vote, and draw you into an argument that you shouldn’t have to have, and where you don’t even remember your reasons for downvoting the post in the first place.


Note that I’m not requiring someone to explain a downvote. As I said, you aren’t forced to enter any text. However, the mechanism encourages it and makes it very easy. The real point is to make all downvotes visible.

Your point about downvotes “hanging over your head” applies to anything you write, particularly answers. Seven years after you write an answer, someone could disagree with the content and say so. So what? If someone disagrees with the content, they should say so. Nothing forces you to respond. You aren’t drawn into “an argument that you shouldn’t have to have”. It’s always up to you to respond or not. This process works just fine for answers. You haven’t given any reason it would somehow be a problem with downvotes.


In your scenario with public downvotes: How to protect the downvoter from the backslash of an unreasonable OP, who thinks it is their right to post low quality questions or answers?

On I dared to downvote an answer and explained in a comment why the answer has nothing to do with the question and as response I got a scary comment that they were thirsty for my blood.


That seems like an outlying issue of someone who sounds psychotic. I would not use this anecdote as good reasoning.

If an OP thinks it’s their right to post low-quality questions/answers, they get downvotes, because the questions/answers are low-quality. If they attack users for downvoting, then that falls under abuse/harassment and would be judged by moderators to see if further action is necessary, assuming the victim flagged the message.


Furthermore I think that publishing votes discourages them. This is will harm our site, as a healthy voting culture is important in order for the quality principles and management to work.

Publishing votes will also inevitably lead to cases of harassment/abuse. Either by the downvoted or by other users “complaining” about someone’s downvote behaviours. As you say, this could be handled by manual intervention/flagging, however I’d rather protect our users by default and by design, instead of requiring manual intervention in the most cases.

Reading through the prior posts, I think - without intending to offend anyone - that one goal of publishing downvotes would be to allow them to be reviewed by others. I am strongly convinced that this will harm the site, as it would lead to (escalating) disputes about downvotes. It would make revenge-downvoting easier and it doesn’t help anyone with regards to downvote reasons, unless you require downvotes to be accompanied by a statement of reason (comment etc.), which nobody suggested here.

Hiding who voted, seems to work fine on Stack Exchange. There are no really issues with it. Even voting rings/sock puppets can be dealt with. It would require some rudimentary SQL statement, showing the vote match between two users, which could be run by any mod/admin.


Note that a downvote comment would not require publication of the downvoter. The corresponding comment could be shown as written by a pseudo-user “downvoter”. If a downvoter doesn’t comment only for fear of losing the anonymity of the vote, this would give an opportunity to give a reason without identifying yourself.


This would clearly solve most of the problems of my prior post, however I think it must be designed carefully in order to prevent abuse (writing anonymously rude stuff, no option to find out who it was).

I could imagine a system, where moderators are able to see who wrote a comment. That would need a special column in the db, such as IsAnonymousVoteComment, however IMO that is certainly #non-mvp.


The database already contains who voted. All you would need is a field that links the comment to the corresponding vote (and is NULL for regular comments).

No it doesn’t. People who downvote in revenge don’t care that it’s obvious that they downvoted.

No, it’s common in my experience. Common enough that it makes me reluctant to comment when I downvote, or when someone else has downvoted a post.

Yes, this. Downvoting bad answers is essential.


I think we have enough skilled programmers and computing power to solve all the issues here with simple code.

Have 3 classes of downvotes. They are all available after registered user has received any upvotes for any purpose (same as upvote privilege which should both come very early)

Type 1: downvote and leave a comment as to why, earn 10 point
Type 2: downvote and leave no comment
Type 3: downvote and maintain anonymity must leave a comment as to why and pay 10% of current reputation

Make it clear to the user which type they are selecting and explain why the options exist the first few times and then let the user turn off the “Reason Why” pop-up box.

Incidentally the “Reason Why” pop-up box should appear for every thing that the user does so that they don’t have to feel like the rule is stupid (and it won’t be stupid because the coder asked the designer for the text to explain why) and won’t have to be pointed to a FAQ or CoC after they get angry or sad when a moderator has to intervene.

I agree with Olin’s reasons for public and commented downvotes but also see that anonymous can have value to some but it must come at a real cost to prevent frivolous abuses.

My main reason for having only serious downvotes is because I do not like or believe in closes or even worse deletion of any question. Even a pathetic question has SOME value and it costs NOTHING to leave it there for the future researcher or volunteer who wants to read or repair it. Downvotes should be used to hide bad questions, answers and comments from those who have better things to worry about but they should not be removed. Hate and illegal stuff should be moved into deep dungeons but this will be rare and easy to find in those with lots of downvotes.


That is probably because you decided not to leave a comment at the time when it was VERY fresh in your mind.

Make it so that a person has to click the “link to user” on the downvote comment at a COST and it will be very unlikely that anyone will ever bother to try and dig deeper than reading the downvote comments. There is not enough time in the world to worry about what others say. Just block the harassing user and ignore them in future.

Having it public is good for transparency. It is not a secret ballot where transparency can lead to vote rigging in any real way so I believe it is preferable to the abuse of hidden voting.

This is both unbalanced and highly biased against downvoters.

Voting, including downvoting, is an essential quality control measure. If you stifle the free use of up or down votes, you lose good quality control signal. The fact that downvotes cost reputation on SE is deterrent enough for many not to downvote unless it’s unavoidable; making people write words or pay percentages of their reputation will kill it off completely.


Assuming we have a granular numeric rep system broadly comparable to SE’s, this would be painful beyond belief. A single anonymous downvote canceling out the rep from potentially dozens or even hundreds of very valuable, highly-upvoted answers? Ridiculous. Imagine Jon Skeet losing a year’s worth of rep — more than most users ever get — because he decided to downvote one post without revealing his name.

Also, it would be very ineffective at preserving anonymity: just look for someone whose rep just dropped by 10%.

Ah, I suspect this is indeed the major point of departure. I’ve gotten 10k on a few sites and have been able to see the atrocious sorts of posts that end up deleted. Yes, there are lots that are negative-value-added for basically everyone: any time spent interacting with those posts is a dead loss. I’m not just talking about offensive posts or spam, although there are likely more of them than you think, but the distressingly common posts by people who just do not get it and are aggressively certain that they do, or (especially on SO) are simply desperate to get their problems solved in any way possible, with the sole exception of actually learning or thinking in the slightest. It’s inaccurate to say that these posts have “some value”. In a sense they do, but the value they have (barring schadenfreude) is smaller than the cost any conceivable reader would have to pay to see them. And we’re not building a clone. (Even then, most of them aren’t actually that funny.)


The loss of reputation once you have 100 points is not a factor to take into account.

I rarely need to downvote and normally it would only be for critical comments that could have been left unsaid.

I think we should become a community of upvotes first and downvoting as a act of desperation sort of like picking weeds and not something to tune for. If all neutral or negative answers and comments were in grey and only the upvoted ones were bright I think people would learn to upvote the good stuff in a couple of days. No other change would be required and downvotes would need to be used rarely.

No it doesn’t! Maybe that’s the point many of you aren’t getting. When you have a lot of rep, and when you generally comment why you downvote when you do, you end up the target of vandals and revengers that hide in the shadows.

I leave a comment with most of my downvotes on EE.SE because I think it’s the right thing to do. Some people don’t take that well and react childishly by going to your profile and downvoting several of your answers. I’ve had downvotes on my answers reversed by the system a number of times. However, the system catching downvote abuse is rare.

This wouldn’t be a problem if downvotes were public. Such vandalous or revenge behavior would be obvious, and could be dealt with. Because it’s obvious and likely to be dealt with, many of those doing it now wouldn’t.

The current system of anonymous votes has problems found from solid experience. The argument against open downvotes are only theoretical, with nobody being able to say for sure what would happen. Lets try it at least for a while. I think it will solve many of the existing problems, but if it turns out to be worse, we’ll actually know that, and can provide defensible reasons for reverting to secret downvotes.

1 Like

As Gilles said before:

Therefore publishing votes would only allow easier investigation of vote abuse, which could be dealt with by offering admins a simple investigation tool.

TBH I think that the fact that allowed the revenge-downvoters to start their campaign is that the vote ownership was published. As we will still want to have comments asking for clarification/critiquing the post, we need ways to revert revenge-downvoting if we detect it.

We need to do two things IMO to solve the revenge voting problem:

  1. Hide votes. When you don’t know who voted for your post, you can’t do revenge-downvoting. Of course it will be public sometimes, for example because of comments by downvoters, however that should always be a voluntary option.
  2. Detect and disallow/reverse targeted voting. This will make revenge-downvoting fully impossible, as all votes will be reverted.

I think this is the best option we have.