In what seems to be a blatant violation of Sturgeon's Law, most of the answers on StackOverflow are clear, thoughtful, polite and accurate.

This may be largely due to the self-correcting nature of StackOverflow's voting system, which encourages us to review, comment, and edit each other's answers. So, in general, our combined expertise and desire to inflict share our knowledge forces "good" answers to percolate upward and opens "not-so-good" answers to discussion and correction.

However, I've found that an unsettling number of the answers to technical questions—including "accepted" answers with a large number of upvotes—are simply incorrect. What's more alarming to me is that, despite their technical nature, many of these answers can be checked simply by cutting and pasting them into a command line.

With this in mind, I'm interested to know:

What criteria do you apply before deciding to up-vote an answer?

  • Accuracy: Do you actually check it?
  • The "James Earl Jones" effect: Does it just need to "sound" right?
  • Peer pressure: Everyone else thinks it's good, so it must be right.

What "pushes you over the edge" from liking an answer to actually voting for it?

Meta-question: is there a common term for what I've called the James Earl Jones effect: the tendency to forgo your normal verification process and accept something that sounds right? A quick search returned nothing; however this could arguably be called the Avery Brooks effect, the Obama effect, or the Why I Still Like to Wake up Next to my Spouse effect. :-)

  • While we're at it. What are the criteria/advantages/reasons for suddenly turning a fresh question into a community wiki?
    – Deestan
    Commented Nov 7, 2008 at 13:13
  • Criteria: questions such as this don't deserve the astronomical increase in reputation they would generate. Advantage: poster doesn't appear to be soliciting reputation, fewer downvotes, more answers from experienced users.
    – Adam Liss
    Commented Nov 7, 2008 at 13:22
  • If they don't deserve reputation the community wouldn't vote them up. Commented Nov 7, 2008 at 13:29
  • @Bill The Lizard, to the contrary: stackoverflow.com/questions/262657/the-coolest-server-names stackoverflow.com/questions/84556/… And just about any "favorite" question. All gave huge increases in rep and no substance for programming whatever. Commented Nov 7, 2008 at 13:35
  • @Adam: Makes sense. Thanks for the answer.
    – Deestan
    Commented Nov 7, 2008 at 13:44
  • Interesting how some really stupid and/or incorrect stuff makes it to the point of being a community wiki as well! Commented Nov 7, 2008 at 16:07

9 Answers 9


I upvote something if it matches all of the following criteria:

  • It is obviously accurate or I verify it to be accurate
  • It differs from other posted answers
  • It is related to the question

I downvote the answer if it matches any of:

  • Someone has already given the almost exact same answer more than 10 minutes prior
  • It is plain wrong
  • It advocates a bad practice without giving due warning
  • I'm being an idiot and misunderstand either the question or answer without realizing it

Of course, it also all depends. If a question has received no good answers, and someone posts a creative suggestion, it might get upvoted, if an answer is excessively impolite, I may not upvote it, etc...

  • I agree with you on all but one point. I don't downvote duplicates, I just leave them alone, and upvote the earliest correct answer. We only get 30 votes per day. Commented Nov 7, 2008 at 13:18
  • 1
    +1 for an answer that, IMHO, should be promoted to the FAQ. It's a model of thoughtfulness, clarity, conciseness and honesty. Thank you!
    – Adam Liss
    Commented Nov 7, 2008 at 15:08
  • great answer, very neat
    – rpr
    Commented Apr 20, 2009 at 13:40

I always upvote when I see an unfair downvote.

  • 1
    +1: I upvote when a response answers the question correctly, even if I disagree with it. Thanks for your answer!
    – Adam Liss
    Commented Nov 7, 2008 at 19:37

I upvote anyone who tries to answer my question, except those who are answering the same thing or something that obviously isn't related. If someone took the time to try to help me I think it deserves a vote.

I upvote any answer that is smart or that I would have written.

  • Thanks for a very sincere and honest answer: +1 for sharing your thoughts. Note: in the spirit of helpfulness, I edited the grammar but tried to leave your content unchanged.
    – Adam Liss
    Commented Nov 7, 2008 at 15:12
  • I do the same, I think if someone spends the time reading my question and inputting thoughtfully it deserves an upvote so I try do this whenever reasonable.
    – cfeduke
    Commented Nov 9, 2008 at 1:34

I wouldn't call the answers here accurate. Maybe the questions with a lot of traffic get there after a few edits. More often, a confident and fast-typing bumbler hammers out some cheerful dross, which quickly bubbles to the top and gets accepted, while the terse one-liner which actually nails the OP's problem is left languishing on zero. Trouble is, if the best answer is to be found in an ISO standard, research paper or Usenet FAQ, you should just post a cite. If you try to paraphrase technical material in happy ego-soothing language, you'll introduce errors.

This is what the voting system should sort out. Unfortunately, the structure of the site and the volume of posts - and it's still the beta - seem to mean that questions have a very short lifetime. It's more like a mailing list than a wiki. Answer a question more than a day old and chances are you'll never hear about it again - no votes, no comments - even the OP loses interest. I can't help but conclude that earnest voting to redress imbalances will also be completely wasted.

Adding to the problem is the quality of questions, which seems to have slumped even over the short time I've been here. The last couple of days gave us the jaw-dropping 'I want to write sliding block puzzle for mobile phone. Tell me how to write sliding block puzzle for phone!' and lots of too-lazy-to-try-it syntax stuff like 'Where do I put the explicit keyword in C++?'.

Perhaps the best contribution is filtering the noise. I'll try a downvote rampage and see if I feel better.

  • Wow, I feel like my question was just rephrased through a bullhorn! I agree with many of your points--particularly about filtering the content--and realize that I've been using SO all along to solicit advice rather than facts. Google and Wikipedia handle facts quite well. Thanks!
    – Adam Liss
    Commented Nov 8, 2008 at 18:31

Generally, I use the following criteria for upvoting an answer:

  • Going beyond a stock "This is the X widget you should use for Y problem". If you look at this StackOverflow question about the Best 3D Graphics Engine, you'll notice that none of the answers really 'answer' the question, but some come close. The ones that are closer get upvoted. For instance:

  • Faulty's answer tells me something I didn't know (that they aren't of the same class), and he provides many links for me to research further. But he doesn't answer what I asked in the second part, which is a Project Triangle type of question (Fast, Cheap, Best). This is why I upvoted his answer, but didn't mark it as 'the answer'.

  • Giving me lots of pertinent information. Some answers aren't upvoted because they're only a sentence long, and as other posters mentioned, it's information I can get from a 3 minute search on Google.

    I come to StackOverflow for information that isn't readily available on Google.

  • Finally, I don't upvote 'feel good' answers. I don't care if you think platform A is nicer than platform B. That's subjective. What I care about is if there is definitive proof that beginners should use platform A because of ease of use, or if they should use platform B because it benchmark's and extends better. As an example, this question about Which .NET Language To Learn has an answer that's been upvoted 13 times, even though it gives a 'feel good' rudimentary answer without any evidence behind it. My answer provides thought, reason, and facts, yet it hasn't been upvoted as high.

So, in the end, it depends on the community. Does the community want more detailed answers? Or are quick 'one-liners' sufficient?

  • +1 for a perfect analysis of your own answer! Thanks for the feedback.
    – Adam Liss
    Commented Nov 7, 2008 at 15:01

I upvote an answer (or a question) if I think it adds someting of value. That can be any of the following:

  • A correct answer.
  • A new way to look at the problem.
  • A valid remark that is no answer to the question, but it has a point.
  • A bit of humor which is not that off topic.
  • A (better) example.

Besides that, I have the idea to encourage novice (rep < 50) users.

  • You mentioned a few reasons I hadn't thought of ... thank you. I particularly like the idea of encouraging newcomers!
    – Adam Liss
    Commented Nov 7, 2008 at 19:38

I vote for an answer if I believe it is correct. I'm not actually going to check if it is syntactically correct or has a small bug, I'm mostly concerned about the logic for programming questions.


A way to challenge an answer marked as Correct in a non-threatening, yet visible & accountable way is a possibility. I'm imagining an icon just below the Checkmark for this, that when clicked, requires you to enter an explanation and possibly redirects to a sub-thread. Or something along those lines.

I believe that a good part of stackoverflow's success is due to its self-regulating community, as someone above pointed out, and it would be nice if "Correct" answers could follow along that path.


I upvote an answer when it is pretty much what I would have answered (among other things).

No use in typing up the same thing again.

You must log in to answer this question.