Nested If Alternatives
Long nested IF formulas are hard to read and easy to break. Discover the best nested IF alternatives in Excel and Google Sheets — IFS, lookup tables, and XLOOKUP.
Introduction
A formula like =IF(A1>90,"A",IF(A1>80,"B",IF(A1>70,"C","D"))) works, but stack five or six IFs together and it becomes almost impossible to read, debug, or edit. This guide shows three cleaner nested IF alternatives — the IFS function, a lookup table, and XLOOKUP with approximate match — so you can replace tangled logic with formulas that are shorter and far easier to maintain.
Prerequisites
- Basic IF syntax
- Comfort with cell references
- IFS/XLOOKUP require Excel 2019+, Microsoft 365, or Google Sheets
1Why Nested IFs Become a Problem
IF only handles one test at a time, so testing several conditions means nesting one IF inside another. Each extra level adds another closing parenthesis and another chance to misplace a bracket. Classic Excel also caps nesting at 64 levels, but readability breaks down long before that. The goal of every alternative below is the same: keep the logic but flatten the structure.
If you find yourself counting parentheses, it's time to switch approaches.
Nested IFs are fine for two or three conditions — the pain starts at four or more.
2Alternative 1: The IFS Function
IFS evaluates a list of condition/result pairs and returns the value for the first condition that is TRUE. It reads top to bottom like a rulebook, with no nesting. Put your most specific test first, since IFS stops at the first match. Add a final TRUE condition to act as the catch-all 'else'.
List conditions in order
Write each test and its result as a pair, highest threshold first.
=IFS(A1>90,"A", A1>80,"B", A1>70,"C")Add a catch-all
Finish with TRUE so any remaining value gets a default result.
=IFS(A1>90,"A", A1>80,"B", A1>70,"C", TRUE,"D")Example
=IFS(A1>90,"A", A1>80,"B", A1>70,"C", TRUE,"D")IFS checks A1>90 (FALSE), then A1>80 (TRUE) and stops, returning "B". The final TRUE catches anything 70 or below and returns "D".
Without a final TRUE, an unmatched value returns #N/A.
IFS works identically in Excel 2019+, Microsoft 365, and Google Sheets.
3Alternative 2: A Lookup Table with XLOOKUP
When your logic is really a set of thresholds, move it out of the formula and into a small two-column table (lower bound + result). XLOOKUP with match mode -1 finds the largest value that is less than or equal to the lookup value — perfect for banded grading, tax brackets, or shipping tiers. Editing a threshold now means editing a cell, not rewriting a formula.
Build the table
In two columns list the lower bound of each band and its label, sorted ascending (e.g. 0/D, 71/C, 81/B, 91/A).
Look up the band
Search the bounds and return the label using approximate (next-smaller) match.
=XLOOKUP(A1, E:E, F:F, "n/a", -1)Example
=XLOOKUP(A1, E2:E5, F2:F5, "n/a", -1)Match mode -1 finds the largest bound not exceeding 85 (which is 81) and returns its label "B". Add rows to the table instead of nesting more IFs.
In Google Sheets XLOOKUP works the same; on older Excel use =VLOOKUP(A1, E2:F5, 2, TRUE) with the table sorted ascending.
A lookup table scales to dozens of bands without touching the formula.
4Alternative 3: Combine Conditions with AND / OR
Sometimes people nest IFs only because a single branch depends on two things being true. In that case you don't need a new function — you need AND or OR inside one IF. This keeps a single, readable IF instead of stacking them.
Example
=IF(AND(A1>=70, B1="Pass"), "Qualified", "Review")AND collapses two tests into one condition, removing an entire nested IF layer. Use OR when any one of several conditions should trigger the result.
AND returns TRUE only if every argument is TRUE; OR needs just one.
Combine with IFS for the cleanest results: one row per rule, each row using AND/OR as needed.
5Which Alternative Should You Use?
Pick IFS when you have a handful of unrelated conditions and want a quick, in-cell rewrite. Pick a lookup table with XLOOKUP (or VLOOKUP) when your logic is threshold-based and likely to grow or change — it's the most maintainable option. Reach for AND/OR when a single decision simply depends on multiple facts. In every case you trade fragile nesting for logic that's easy to read and safe to edit.
Threshold logic that changes often? Always favor the lookup table.
Only two or three fixed outcomes? A single IF or IFS is perfectly fine.
Functions Used
IF
IF performs a logical test and returns one value if true and another if false.
IFS
IFS checks multiple conditions and returns the value for the first condition that is true.
XLOOKUP
XLOOKUP is the modern replacement for VLOOKUP. It searches a range or array for a value and returns the corresponding item from a second range or array. It supports exact and approximate matching, wildcards, and can search in any direction.
Related Guides
Master INDEX/MATCH for Two-Way Lookups
Learn how to use INDEX and MATCH together to create powerful two-way lookups that work in any direction, unlike VLOOKUP.
VLOOKUP with Multiple Criteria
VLOOKUP only matches one column, but real lookups often need two or more. Learn four reliable ways to do a VLOOKUP with multiple criteria in Excel and Google Sheets.
Calculate Age From Birthday
Learn how to calculate age from birthday in Excel and Google Sheets using DATEDIF, YEAR and TODAY — get exact years, or years, months and days, that update automatically.
Summary
Nested IFs get unreadable fast, but you have cleaner options. Use IFS to flatten a list of condition/result pairs, move threshold logic into a lookup table with XLOOKUP (or VLOOKUP) for maximum maintainability, and use AND/OR to fold multiple tests into a single IF. Match the tool to the shape of your logic and you'll never fight a wall of parentheses again.
Next Steps
- Rewrite your longest nested IF as an IFS formula and compare readability
- Move a grading or bracket formula into a two-column table and drive it with XLOOKUP
- Practice AND/OR inside a single IF to eliminate an unnecessary nesting level