
Return the rank of a number in a list. Useful for leaderboards, score positions, and classic tie handling.
RANK.EQ returns the rank of a number in a list. If you sorted the list, the rank would be that value's position in the sorted order.
This is useful for leaderboards, score reports, sales standings, and any sheet where you want position instead of just the raw value. RANK.EQ is the classic tie-handling version, so tied values get the same rank.
Shows where one number stands compared with the other numbers in a list.
Returns the position of the chosen value. Tied values receive the same top rank for that tie group.
=RANK.EQ(number, ref, [order])
number is the value you want to rank, ref is the full list, and order controls whether ranking starts from the largest or the smallest.
0 or omit it for largest-to-smallest ranking. Use a nonzero value like 1 for smallest-to-largest ranking.| Function | What it returns | Use it when |
|---|---|---|
RANK.EQ |
Traditional rank | You want tied values to share the same rank |
RANK.AVG |
Average rank for ties | You want tied values to receive an averaged rank |
LARGE |
The k-th largest value | You want a ranked value, not the position of a specific cell |
SMALL |
The k-th smallest value | You want a ranked low value, not the position of a specific cell |
Microsoft notes that if the order argument is 0 or omitted, Excel ranks the number as if the list were sorted from largest to smallest. If order is nonzero, Excel ranks it as if the list were sorted from smallest to largest. That means the same value can have a different rank depending on whether higher or lower numbers are considered better.
The tie behavior is what makes RANK.EQ distinct. If two values are tied, they both get the same top rank for that position. Microsoft also notes that this affects the next ranks. For example, in ascending order, if two values are tied at rank 5, the next value will be rank 7, not rank 6. This is the classic competition style ranking.
When you copy the formula down a column, it is usually best to lock the reference range with dollar signs like $B$1:$B$10. Otherwise the comparison range can shift and give the wrong ranks.
This is the default setup and works well for scoreboards, sales lists, and competition tables.
=RANK.EQ(B1,$B$1:$B$10) // Returns the rank of B1 from highest to lowest.
Find the rank of B1 in B1:B10. Formula: =RANK.EQ(B1,$B$1:$B$10).
Use the optional order argument when lower numbers should rank better, such as times, wait lengths, or error counts.
=RANK.EQ(B1,$B$1:$B$10,1) // Returns the rank of B1 from lowest to highest.
Find the rank of B1 from smallest to largest. Formula: =RANK.EQ(B1,$B$1:$B$10,1).
Tied values receive the same rank, and the next rank is skipped in the traditional way.
=RANK.EQ(B1,$B$1:$B$5) // Returns the shared rank for tied values.
See how RANK.EQ handles tied values in B1:B5. Formula: =RANK.EQ(B1,$B$1:$B$5).
This is useful when you want one cell to show the position of a specific result in the full list.
=RANK.EQ(B1,$B$1:$B$10) // Returns the position of B1 in the list.
Identify the rank of B1 in B1:B10. Formula: =RANK.EQ(B1,$B$1:$B$10).
1 when lower values should rank better.Tell your friends about this post