In Excel: put the cut-offs in a small table sorted ascending and use approximate-match VLOOKUP: =VLOOKUP(B2,$E$2:$F$6,2,TRUE).
On this page7
Build a two-column table: the lower bound of each band on the left, the label on the right.
Sort it ascending by the bound, and start it at zero so no score falls below the table.
Enter =VLOOKUP(B2,$E$2:$F$6,2,TRUE) beside the first score and fill down; the dollar signs keep the table fixed.
On Microsoft 365, use XLOOKUP with match mode -1 instead, which does not require the table to be sorted.
For plus and minus grades, add the extra rows to the table — the formula needs no change at all.
Need it as an auditable file?
Ships inside the linked template — formula-driven, unlocked, audit-ready.
What this does
Approximate-match lookup is built for banded conversions. Given a sorted table of lower bounds and their labels, VLOOKUP with TRUE as the last argument finds the largest bound not greater than the score and returns its label. Compared with a chain of nested IFs, the boundaries live on the sheet where anyone can see and change them, and adding a grade is a new row rather than a rewritten formula. Most people learn this as a sequence of clicks and forget it by next week; learning it as a pattern instead is what lets you apply it to the next, slightly different version of the problem without starting from scratch. That is the difference this page is trying to make. For “grade formula in excel”, the reliable version is a short checking loop, not just the first command that appears to work. Run it on a deliberately small range first, watch how the affected formula change, and only then apply the same setup to the full sheet. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. That is what makes a calculation you can defend to a CFO or an auditor useful in real work: repeatable, auditable, and not dependent on memory or luck.
A worked example
E2:F6 holds 0/F, 60/D, 70/C, 80/B and 90/A. A score of 87 in B2 with =VLOOKUP(B2,$E$2:$F$6,2,TRUE) returns B. The modern equivalent is =XLOOKUP(B2,$E$2:$E$6,$F$2:$F$6,,-1), where match mode -1 means exact match or the next smaller item. The cut-offs are the policy, and a lookup table puts them where they can be reviewed instead of burying them inside a formula nobody re-reads. If there is any chance you will reuse this, drop it into a small template tab right now: a labelled input area on the left and the formula beside it, checked once against the tool above. Next time the same question comes up, the answer is a single paste away instead of a rebuild from memory.
In Google Sheets
Some functions on this page are newer additions to Excel: they are in current Microsoft 365 and Excel for the web, while older perpetual Excel versions return #NAME?. Google Sheets maintains its own function list, so confirm each function exists there before relying on the same formula. The aim was to get you unstuck fast and leave you a little more capable than a copy-paste would. The answer is at the top and the detail above shows why it holds — so the next time a colleague asks, you can answer without reaching for search. The short version of “grade formula in excel”: the answer is at the top of this page, the tool proves it on your own numbers, and the sections above explain why it holds so the next variation does not stump you. Excel rewards people who reference cells instead of typing values and who keep inputs separate from formulas, because that is what makes a result you can audit months later. Build it once, deliberately, with the live tool as a check, and you convert a one-off lookup into a reusable skill — which is the whole point of learning the why and not just the what.
Common mistakes
- Leaving the cut-off table unsorted while using TRUE, which returns wrong grades with no error at all.
- Omitting the zero row, so any score below the lowest bound returns
#N/A. - Using FALSE for an exact match, which only ever matches a score that equals a cut-off exactly.
- Nesting IFs in the wrong order — testing >=60 before >=90 gives every high score a D.
Frequently asked questions
How do I write it with IF instead?
=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",B2>=60,"D",TRUE,"F"). The tests must run from the highest boundary down.
How do I add plus and minus grades?
Add rows to the lookup table at 87, 83, 77 and so on. The formula is untouched.
What if the scores are percentages stored as text?
The lookup silently misbehaves. Convert them first with Data ▸ Text to Columns ▸ Finish, or wrap the lookup value in VALUE.
How do I grade on a weighted total first?
Compute the weighted score with =SUMPRODUCT(scores,weights)/SUM(weights), then feed that cell to the lookup.
Other ways people ask this
On the way here you may have searched this as “excel grades formula” and “formula for grades in excel” — it is all the same task, and this page is the single, complete answer to it.
Why do people search for this in so many different ways?
Because the same task has many names. “excel grades formula”, “formula for grades in excel” all point at the one operation explained on this page, which is why they all lead here.