I can imagine this situation coming up frequently on this site. What should we do when there are multiple helpful valid answers?

  • Accept the one we think is most helpful?
  • Accept the one that was posted first?
  • Accept neither?
  • Accept the one with the most upvotes?

I think we should have a documented recommendation to which we can refer new users faced with this situation.

  • 2
    \$\begingroup\$ An extremely valid question, in-fact I was about to post this when I noticed you already had done so. In my opinion accepting one true answer for review code doesn't make sense, because there might be multiple valid answers of feedback. Accepting an answer when there is an equally valid answer might cause outrage within the community. \$\endgroup\$ Commented Jan 20, 2011 at 2:27
  • 9
    \$\begingroup\$ perhaps the concept of "accept" doesn't always apply here \$\endgroup\$
    – LRE
    Commented Jan 20, 2011 at 5:40
  • 1
    \$\begingroup\$ @BenV It's good to see you didn't accept any answer(at the time I'm seeing) since all are helpful. You are sticking to your question. \$\endgroup\$ Commented Sep 11, 2013 at 13:37

3 Answers 3


We had this issue on programmers as well: What if I can't reasonably accept a single answer to a question?

To summarize, you don't need to accept an answer for a subjective question. You should, however, upvote all the answers that you found helpful. If one stood out above the rest, you can accept that one to show that it helped you the most. You can also award bounties.

Don't worry about accept rates. They shouldn't matter on subjective sites anyway. I ignore them completely on programmers! The voting should separate the good answers out, and there are still multiple ways to reward good answers. At the very least, vote them up!

  • \$\begingroup\$ +1 I agree with Michael on this one - as most answers will be subjective :) \$\endgroup\$
    – Aim Kai
    Commented Jan 21, 2011 at 10:54
  • 8
    \$\begingroup\$ Come on people, vote good answers up. I noticed that lately in Stack Exchange websites very good answers are rewarded with +2 or +3 points when they deserve +10 or +15. People are scared of upvoting because others will gain more points... sad \$\endgroup\$
    – Shoe
    Commented Jan 25, 2011 at 16:50

I'm for a win / win situation in this case.

If there are multiple valid answers, which all answer the question to the same degree.

  1. Give them all an up vote
  2. And then accept the one that is the easiest to understand, not to read, but to understand

The point here is to give newcomers good advice when the search for problems, it doesn't make much sense when there are 3 valid answers and one of them is extremely cryptically and one accepts that one, because it solved his problem the fastest, since he understands a ton of cryptic synonyms.

We should not think of this site as a "Complete refactoring pros" only site. It should be about teaching and spreading the concepts of refactoring, DRYing, testing and all the other stuff that makes code both good and maintainable.

So my above solution has the following outcomes:

  • Answerers are happy, they got some rep for their effort
  • The one who wrote it in the most understandable way gets the bonus, so we're encouraging good writing not only of code, but also of answers
  • New people coming to the site will most likely look for the accepted answers first, so if those are goodly written, they will also benefit from it
  • 6
    \$\begingroup\$ I'd add a provision here that when accepting one of several good answers, we should leave a comment as to why - and point out the other useful ones (though the votes will help). \$\endgroup\$
    – LRE
    Commented Jan 21, 2011 at 3:59

I'd actually say its best to accept the most helpful as per point 1. Comments on why you accepted the answer would also be really useful.

I've accepted this as I feel it really illustrates the best review. Its clear to read and it helps reduce unneeded complexity.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .