Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've got a website with voting system where people can vote a review either up or down. For example: “Did you find this review helpful? [Yes] or [No]?”

In order to order the reviews by how much they were appreciated I'd like a single number to order them by. Just using the percentage of up votes doesn't cut it because it doesn't take the total number of votes into account. A review with 2 up votes and 0 down votes (100%) should not be shown before a review with 95 up votes and 5 down votes (95%).

Any ideas on which formula to use? Thanks.

share|cite|improve this question
Since the percentage of upvotes obviously takes the total number of votes on a question into consideration, maybe you mean that you do not want questions with low total votes to match percentages with high total vote questions. How about you first order all questions by raw vote total, then sort those by percentages? – rschwieb Nov 8 '12 at 16:27
See also this similar problem (different context). NOT intended to imply post-duplication. – amWhy Nov 8 '12 at 16:37
up vote 3 down vote accepted

You need only assign the value of $ 0$ to a downvote, and $1$ to an upvote, or, $(-1)\to \;$downvote, $1 \to\;$upvote. Then any review's score could be the sum of those upvote/downvote assignments.

You can play around with such assigned "weightings", to end up with a single numeric score to represent the quality of the review.

E.g. questions and answers here at computes the "score" of both answers and questions using the assignment: $(-1)\to \;$[downvote], $1 \to\;$[upvote].

EDIT: As @gt6989b, the above scheme, does not take into account the distribution of scores, etc.

It all depends on what criteria you consider to be most relevant to the determination of the value of the rank of a given review.

share|cite|improve this answer
would be much more preferable to use not just the expected value of the random variable in question, but also the standard deviation. – gt6989b Nov 8 '12 at 15:50
@amWhy Good suggestion, but doing it that way still doesn't take the total vote count into account, does it? For example: 6 up, 4 down = +2; while 90 up, 89 down = +1. Yet, I'd like the latter one to be ordered first because the total vote count is much higher. – Geert Nov 8 '12 at 15:58
@gt6989b I agree; I was simply thinking of, e.g., both the "scores" of questions/answers used on, as well as the weighted assignment of 5 to a user's rep for upvoted question, and -1 to user's rep for downvoted question...etc. – amWhy Nov 8 '12 at 15:58
@Geert, that's why I suggested the assignment of $0$ to a downvote, and $1$ to an upvote, or perhaps upvote $\to +2$, downvote $\to -1$. It all depends on what criteria you consider to be most relevant to the determination of a given ranking. – amWhy Nov 8 '12 at 16:00

Some examples have already been given, but a quite simple yet general way to do this would be to say +x for an upvote and -y for a downvote. On SO the weights are +10 and -2 for questions and +2 -1 for comments (if im not mistaken).

This is based on how people behave and what they would like to reward.

So, now you can just play around a bit with x and y untill you see the result that you like.

Edit: another commonly used system is to use the percentage, but exclude the ones with fewer than z votes.

share|cite|improve this answer
And for questions on the SE network, including, weights of +5 for an upvote on a question, -1 for a downvoted question. – amWhy Nov 8 '12 at 16:23

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.