Unlocking the upvote privilege

That goes against any ideas of consistency. I will sometimes for various reasons do something in a system and then view it in a different browser not logged in to see how things looked. I’m doing it deliberately to test (generally), but similar things could happen if someone upvotes on a computer and then pulls out their phone later to look at the site and doesn’t login first - they would then see something different and wonder what is going on.

1 Like

To add on this, the first impression users will be the one of someone who never voted at all (it can’t be different, for purely logical reasons). And it is the first impression that is most important. It doesn’t matter if you stop seeing the spam after the first few votes; if you get to the page and the first thing you see is lots of spam, you’ll not bother to log in and figure out whether there are ways to change that, you’ll just go away, and furthermore tell others about that spam-infested site, which is a total waste of time to go to.

The most important view of the site is that which you get if you are not logged in.


I think that would be a nice feature, but it’s separate from deciding when you earn that trust.

Stack Exchange does have this feature: anonymous feedback. If you vote on a post without having the privilege or even while not logged in, the “vote” is added to a database field which is basically not shown anywhere. 10k users can see some statistics and outliers (e.g. Meta.SE). As an example, Stack Overflow has about 27M anonymous pseudo-upvotes, 0.8M pseudo-upvotes from accounts without the upvote privilege, and 133M actual upvotes; 17M anonymous pseudo-downvotes, 0.1M logged-in pseudo-downvotes, and 7M actual downvotes. (Anonymous visitors are much more negative than logged-in users!) Ask Ubuntu has more anonymous feedback than actual votes, and again a lot more more negative feedback than actual downvotes. Feedback on a given post is generally correlated to votes.

The problem with giving visibility to anonymous feedback is that you can’t prevent vote stuffing.

Would it? Stack Exchange already does it, except for the conversion to votes part, which has been requested.

The primary audience for scores is anonymous visitors. It’s meant to be a quality indicator, not a poll.


Oh, spam certainly should be deleted. The spam-lover example was just to illustrate that under a local reputation system, a voter can make terrible choices and it doesn’t affect anyone who doesn’t have the same bad taste.

There are three advantages of a local reputation system:

  1. Bad actors that no one trusts can vote all they want and it won’t affect the outcome.
  2. Some are provably sockpuppet proof.
  3. You don’t run into people complaining about the way other people vote as much, because you tend to only see the votes from people with similar voting standards to you.

Notably, there are global reputation systems with the first two of those properties.

I’m not aware of any local reputation systems that have a concept of a non-participating observer, but there are solutions for bootstrapping new users and that involves similar issues. Probably the most practical system would be to have a curated list of “good” voters and run the numbers for the view of someone who trusts them, and show that for the logged out view.

1 Like

That raises the question of who curates those lists. Note that being a curator of that list is a position of power, since it effectively determines what people see. Indirectly it also gives power to the users with accounts, because you can promise people to put them on that list, or threaten to take them off the list.

Also, at least from my observation, there is little complaining about votes. Note that I don’t count complaints about not commenting on downvotes here, as that doesn’t dispute the vote as such, but the lack of information. It’s hard to improve if you don’t know what you’ve done wrong.

Also, I definitely want to see all votes I get on my posts. I don’t want the voting system to “protect” me from people disagreeing with me, I want to know if people disagree with me. After all, maybe I am wrong in that point. I’ll never know if the system hides all the votes from me that don’t come from like-minded people.

We’ve talked about filter bubbles before. Only or prominently seeing votes of “vote-alikes” is about the worst filter bubble of all. We don’t want to build a feel-good site, we want to build a useful site.

So in summary, if a global voting system can solve points 1 and 2, then the only difference between global and local voting systems is point 3. But point 3 is a minor problem anyway, and in my opinion certainly doesn’t outweigh the disadvantages.


It actually could be an earned privilege or determined algorithmically somehow.

It’s rare to hear complaints about votes on the questions themselves, but I’ve certainly seen them in meta discussions and outside criticism.

This is a very reasonable thing to want, and should be implemented regardless of how you see votes on other posts. Do you want the voting system to “protect” you from seeing the in someone else’s post the votes from that posters’ voting ring?

I agree. A local reputation system could be interesting, but a global system seems more useful.

1 Like

For a long time, back in SE, I’ve wondered if it were possible to have two rating systems for upvoting answers:

One would be along the lines of ‘no expertise here, but this answer is clear and seems accurate’ (Or a ‘cool, just learnt something new’) and another along the lines of ‘some expertise here, this answer is accurate’. Because I have found myself upvoting answers which seem so logical and well-explained and which give me the feeling I’ve just learnt something (World-building and History, especially)… only to later (sometimes MUCH later) come across an answer that questions that accuracy.

I think that it is important to upvote when you feel you’ve learnt something from an answer, but being a very upvoted answer doesn’t mean it’s accurate. Maybe a lot of less experienced users simply think ‘I’ve just learmt something new!’ and how can I tell if I’m not experienced in the topic and simply see all those upvotes?

Besides, I have had a couple of answers upvoted like crazy in Writers which I don’t feel deserve such hype (one of them was due to some puns, even if they did make perfect sense in the answer). It’s one thing to upvote an answer that you can verify yourself (like in programming) but if I go to Astronomy and the explanation sounds logic, or if I go to History and there’s an answer filled with pics and quotes (from places I’ll never be able to check myself) and then someone challenges that view with other quotes a month later… In the meantime, a lot of users who think ‘oh, I didn’t know that!’ will have upvoted and the most accurate answer will be lost at the end.

Of course this varies a lot in between topics… but would having the option to ‘like - this is new and interesting to me’ and to ‘upvote - this is accurate AFAIK’ be possible?

I’m sorry I got side tracked and forgot to mention my main point: I see two types of new users:

  1. those who come for a quick answer and disappear
  2. those who come in and are eager to participate even if they don’t have questions to ask right now or little expertise to answer.

For the second group, upvoting is the easiest way to show their enthusiasm and support. Therefore, having ‘like - learnt something new’ and ‘I know what I’m talking about and this is accurate’ buttons would encourage such newbies to participate responsibly. Of course, I’m assuming good faith voting.


It’s a good intention, but why would people do that? Average person doesn’t really recognize the difference between the two things, so it’s likely a lot of posts will get an even split of likes/upvotes anyway, aka you can’t tell if it’s actually accurate.

Hmm… assuming we reuse the same voting system…

Imagine if you could click on the total vote score and see a detailed graph breakdown of what range of rep users had when they voted up or down, like this:

Detailed votes (on say a +15 total score post) where rep range means a user’s total reputation on the site:

          Total  +26 −11 = +15

   0 …   15 rep   +8  −0
  16 …   50 rep   +7  −1
  51 …  150 rep   +6  −1
 151 …  300 rep   +4  −2
 301 … 1000 rep   +1  −3
1001 …    ∞ rep   +0  −4
  • What does this tell you?
  • How would you use this data?
  • Which votes should “count”?
  • Should they all be visible to anyone who wants to see the vote breakdown?

I think the discussion on votes from newbies vs votes from experts is off-topic here: it’s not an MVP feature. Handling "misvoted" content would be a good place for it.

Beware that this compromises vote anonymity. If there’s only one user with 1001+ karma who’s active on the question’s main tag, chances are that the one upvote in the 1001+ bucket is from that user.


If an answer is bad, it is sometimes possible for anyone to see that. But in order to say that an answer is good, I would say that that ALWAYS requires knowledge within the field.

My spontaneous thought is something like a tag badge on SO. For those who does not know, You’ll get a tag badge when you have received enough upvotes on your answers. So in order to get the privilege to upvote, it is reasonable that you somehow prove some knowledge about the topic first. A similar approach is making votes from people with proven knowledge within the field count higher.

1 Like

Nah. I don’t like that.

Besides what I call “detail questions” (how to determine expert-status? what on a new site without posts?), there are IMO fundamental flaws with this proposal.

  1. It has a high likelyhood IMO to lead to feedback cycles, which cause elitism and group think.
  2. If we limit the upvote privilege to “experts”, we’d need to do the same with the downvote privilege. Otherwise voting will be skewed and posts will be downvoted much more than upvoted.
  3. This limit would be bad, because it would reduce the amount of people able to moderate questions, resulting in overall lower quality.
  4. Such limits are often harmful to smaller subcommunities, because they don’t have enough people to reach this limit.

Hence I oppose this suggestion. On the other hand, having something like “x experts approve of this answer” might be useful in some cases. Therefore it was suggested (and I now agree with that, even if I didn’t before) to allow for votes being “unanonymized” voluntarily by the casters to give them special weiht.


I don’t see why that would be absolutely necessary. At least not when it comes to answers. An answer with flaws should be downvoted. “Fairness” is not really a part of the equation.

Not necessarily true. Possibly, but not necessarily. Upvoting bad answers does also result in overall lower quality.

That’s a valid point. But as I said in my answer here above yours, it could be done so that downvotes from experts counts as two or something.

It’s not about “fairness”, but about votes being proportionate. If 100 users view a post and 20 of them decide that it’s worth an upvote and 10 that it’s worth a downvote, and in both groups there are 5 users designated as “experts” by the software, the post will have a score of +5/-10 (negative score), although in fact it should have +10/-20 or any other positive or neutral score (because it is quite contentious). Your proposal tends to favour downvotes and not a neutral score for contentious or low-visibility posts, which is IMO not good for a Q&A system.

True. Hence I don’t oppose/favour having some limit before being able to cast upvotes (as on SE, where 15 rep is needed) to prevent abuse and people without any on-site activity, but it shouldn’t be conflated with “expertize” or “expert status”, which should be a much higher privilege, if any (=if we decide to have something like [tag] topic expert status, which I favour).

I don’t think that’s a good idea for a voting system. Votes have the problem of being not qualified to express problems with post. There’s a difference between saying “I don’t like this option” and “This option is wrong”. This can only be done via some kind of “vote comment”, which I think is planned (after MVP) in combination with the voluntary disclosure idea.


I would say that if an answer contains serious flaws, then any upvote is almost per definition wrong.

Agreed. I was think in terms of being able to raise “issues” with an answer. I guess it’s similar to the idea of “threads” I read about somewhere. Anyway, I think it would be good if whenever you look at an answer, you could see something like “This answer has 3 issues. Click here to read about them.”

Pure reputation does not tell much. But if you instead look at tag badges, then you’ve got something. If you have a tag badge, then you have at least some proof that you have some relevant skill.

Actually, in some way I would say that if a question has both upvotes and downvotes, it’s means that some people are voting wrong. Granted, people can do mistakes, but if a post has 5 downvotes, that’s a very good indication that it should not have any upvotes. At least if people are trying to vote “right”.

That may be true for some technical questions, but not for all and definitely not for most non-technical questions. Every question invites some kind of “opinion-basedness”, even the most simple one, such as the following question:

How do I square every number in a list in Python?

I can imagine three different, equally correct answers to this question (for loop, map, list comprehension). I assume, that they are all “good” and explanative. All solutions have advantages and disadvantages. For example “experts” might favour the list comprehension, because it’s the most “pythonic”, whereas the for loop would be the most simple and clear solution.

Hence “wrong” upvotes and downvotes are quite seldom IMO, differing opinions and use cases are much more often. I think they are a bad assumption for a Q&A website, therefore.


While I agree that some questions may be a bit opinionated than others, Actually, I would not say that this example is. Irregardless of which of the methods you choose from these, provided that the answers are well written and correct I’d say that all of them deserves an upvote. Or at least not a downvote. However, a very non idiomatic solution without an explanation to why it’s used would deserve a downvote, even if it is correct. Like this:

def square(x):
    if len(x) == 1:
        return [x[0]**2]
        return [x[0]**2] + square(x[1:])

That would be a very bad solution in almost all cases. It’s slow, non idiomatic, overly complex and would run into maximum recursion depths for reasonably small lists. I cannot think of any case where it would be an acceptable answer unless the question specifically says that the solution needs to be recursive.

I guess my opinion about this is that it should be quite clear guidelines on how to vote. Sure there will be cases where it’s not clear, but not that many. Well, provided that we will allow questions that would be closed as too opinionated on SO.

After thinking about this for some time, I would like to see user’s reputation breakdown by site and each tag they’ve participated in, so I could have a better idea about this “obviously very high rep user, but do they really know much about C# or are they mostly an expert in PHP or something else”.

Just the gold tag badges like on SE is a very vague source of that information, and isn’t really as useful as it could be.