How to Minifs Function in Excel
Learn multiple Excel methods to minifs function with step-by-step examples and practical applications.
How to Minifs Function in Excel
Why This Task Matters in Excel
Finding minimum values is something almost every analyst does, but doing so conditionally—“Give me the smallest sales figure for the East region in 2023” or “What is the earliest ship date for orders over 5 000 USD?”—adds a layer of complexity. Manually filtering data each time conditions change is tedious, error-prone, and doesn’t scale for dashboards or automated reports. That is where mastering a “minimum with criteria” workflow becomes essential.
In financial planning, teams frequently track the lowest cost supplier who meets quality standards; in manufacturing, engineers look for the smallest tolerance that still passes inspection; and in HR, analysts may need to identify the youngest employee at each site eligible for a training program. Across these scenarios, speed matters: dashboards refresh every minute, executives expect answers immediately, and month-end closes cannot slow down while someone rewrites formulas.
Excel excels (pun intended) at conditional aggregation because the grid can store both raw data and logic side by side. Functions such as MINIFS, introduced in Excel 2019 and Microsoft 365, allow analysts to build one dynamic formula instead of chaining together helper columns, manual sorts, or SUMPRODUCT monsters. The result is cleaner workbooks, smaller file sizes, and fewer opportunities for mistakes.
Neglecting this skill leads to cumbersome spreadsheets filled with hidden filters, static helper tables, and manual steps. Those workbooks break easily, frustrate colleagues, and erode confidence in the numbers. By learning to return the minimum value under multiple conditions, you also sharpen related skills: using structured references in tables, nesting Boolean logic, combining functions such as IF, AND, and FILTER, and even moving into array formulas or dynamic arrays. In short, mastering “minimum with criteria” is a gateway to writing more powerful, maintainable, and professional Excel solutions.
Best Excel Approach
Today the MINIFS function is the most straightforward, performant, and readable way to return the minimum value that meets up to 127 criteria pairs. It avoids array-entry keystrokes, supports wildcards for partial matching, and works natively with dynamic arrays, making it ideal for modern spreadsheet models.
You should use MINIFS when:
- You run Excel 2019, Excel 2021, or Microsoft 365
- You need one to several criteria columns (region, year, product line, etc.)
- You prefer a single, transparent formula that other users can audit quickly
Opt for alternative techniques (covered later) if you must support Excel 2016 or earlier, or when you need OR-type logic across criteria ranges that MINIFS does not natively accommodate.
The basic syntax is:
=MINIFS(min_range, criteria_range1, criteria1, [criteria_range2, criteria2], …)
Parameter notes:
- min_range – cells containing numbers from which the minimum will be returned
- criteria_range – the same size and shape as min_range
- criteria – text, number, expression, or cell reference that defines the filter
Example with two criteria:
=MINIFS([Sales Amount],[Region],"East",[Year],2023)
If you require backward compatibility you might use an array solution:
=MIN(IF(([Region]="East")*([Year]=2023),[Sales Amount]))
(confirmed with Ctrl + Shift + Enter in legacy Excel; regular Enter in Microsoft 365 because it is a dynamic array.)
Parameters and Inputs
- min_range (required) – A contiguous numeric range such as [D2:D1000]. Non-numeric entries are ignored; blank cells are ignored as well.
- criteria_range1 (required) – Typically [A2:A1000], [B2:B1000], etc. Must match min_range in both dimensions (same number of rows and columns). If dimensions do not match, MINIFS returns a #VALUE! error.
- criteria1 (required) – The condition applied to criteria_range1. It can be a text string (\"East\"), a number (2023), a logical expression using double quotes (\">1000\"), or a cell reference like F2. Wildcards * and ? are valid for text.
- [criteria_range2…criteria_range127] and [criteria2…criteria127] (optional) – Additional pairs for more conditions. All criteria pairs must be satisfied for a record to qualify (logical AND).
- Data preparation – Make sure no totals rows sneak into the ranges, avoid merged cells, and convert your dataset into an official Excel Table so ranges expand automatically.
- Input validation – Watch for data type mismatches (text numbers vs numeric numbers), leading/trailing spaces, and inconsistent date formatting. Use the TRIM function or value coercion where needed.
- Edge cases – When no records meet every criterion, MINIFS returns 0—not an error. If 0 is a possible valid minimum, wrap MINIFS inside IF or IFERROR to flag “No Match.”
Step-by-Step Examples
Example 1: Basic Scenario – Minimum Sales in a Single Region
Imagine a simple table named SalesData with columns: Date, Region, Rep, and Amount. You want the smallest sales amount in the North region.
-
Prepare sample data
Enter the following in [A1:D9], then convert it to a Table (Ctrl+T) and rename it SalesData:- Date: 2023-01-05, 2023-01-07, 2023-01-09, 2023-01-10, 2023-01-15, 2023-01-20, 2023-02-01, 2023-02-05
- Region: North, South, North, East, West, North, South, North
- Rep: Anna, Ben, Carla, Dana, Evan, Frank, Gina, Henry
- Amount: 450, 620, 520, 480, 600, 430, 500, 475
-
Insert the formula
In an output cell F2 type:=MINIFS(SalesData[Amount],SalesData[Region],"North") -
Review the result
The formula evaluates each row where Region equals \"North\" and returns 430—Frank’s sale on 2023-01-20. -
Why it works
MINIFS forms a Boolean array: [TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,FALSE,TRUE] based on the Region condition and then pulls corresponding Amounts [450,520,430,475], finally returning the smallest. -
Variations
- Change the criterion to a cell reference G1 so managers can type any region and the output updates automatically.
- Use wildcards:
"*th"would match North and South simultaneously (useful but remember MINIFS uses AND logic across different criteria ranges).
-
Troubleshooting tips
- If you see 0 yet expect a value, confirm the spelling of the region or check for hidden spaces (use TRIM on the dataset).
- Ensure Amount is stored as numbers; a single text entry causes that row to be ignored.
Example 2: Real-World Application – Earliest Ship Date for High-Value Orders
A logistics team needs to know the earliest (minimum) ship date for orders that exceed 10 000 USD and belong to the “Machinery” category within the current quarter.
-
Dataset description
Sheet Orders contains columns: OrderID, Category, ShipDate, OrderValue, Quarter. There are 7 500 rows spanning multiple fiscal years. -
Business context
Management wants to verify whether high-value machinery orders are shipped promptly. Failing to identify slow shipments could lead to penalties or lost customers. -
Build the formula
Output cell H5:=MINIFS(Orders[ShipDate], Orders[Category],"Machinery", Orders[OrderValue],">10000", Orders[Quarter],E2)where E2 contains a dropdown for “Q1-2023”, “Q2-2023”, etc.
-
Step-by-step explanation
- MINIFS creates three Boolean filters—Category equals Machinery, OrderValue greater than 10 000, Quarter equals the selected quarter.
- Only dates satisfying every filter remain.
- MINIFS returns the absolute earliest date among them.
-
Additional integration
- Conditional Formatting can highlight the specific row(s) whose ShipDate equals the result, giving a visual marker.
- Combine with NETWORKDAYS to calculate how many business days elapsed until that date.
-
Performance considerations
MINIFS is optimized and generally handles 50 000+ rows quickly. If the file slows:- Ensure calculation mode remains Automatic except for extremely large workbooks.
- Convert formulas referencing whole columns to sized ranges; [OrderValue] is fine in a Table because it auto-sizes, but plain columns [D:D] are slower.
- Turn off implicit intersection (@) in legacy compatibility mode to avoid surprises.
Example 3: Advanced Technique – Dynamic Array of Minimum per Group
Suppose you need to produce a list of the lowest sale per region, not just one value. In Microsoft 365 you can combine MINIFS with the unique dynamic arrays.
-
Objective
Return a two-column spill range listing each distinct Region alongside its minimum Amount. -
Dataset
Reuse SalesData from Example 1 but imagine you now have 20 000 records and 12 regions. -
Formula
In H2 type:=LET( rgns, UNIQUE(SalesData[Region]), mins, MAP(rgns, LAMBDA(r, MINIFS(SalesData[Amount], SalesData[Region], r))), HSTACK(rgns, mins) ) -
How it works
- UNIQUE returns a spill array of region names.
- MAP iterates each region r, computing MINIFS specific to that r, outputting an array of minimums.
- HSTACK places region names and their corresponding minimums side by side.
-
Edge cases
- If a region has no numeric sales (unlikely but possible), MINIFS returns 0. Wrap MINIFS inside IFERROR to display “N/A.”
- The spill range expands automatically when new regions appear, perfect for dashboards.
-
Professional tips
- Name this LET formula (Formulas ➜ Define Name) so you can call it elsewhere by a simple identifier, improving readability.
- Add number formatting inside the Table style so new data inherits the correct currency or date format.
Tips and Best Practices
- Convert raw data into Excel Tables. Table names enrich formulas (SalesData[Amount]) and expand gracefully as data grows.
- Cell references for criteria: use drop-downs (Data Validation) to prevent typos and to give managers interactive control without touching the formula.
- When criteria involve dates, store criteria cells as real dates and use
">="&StartDatepatterns in the formula to avoid misinterpretation. - For dashboards, wrap MINIFS in N( ) or IFERROR to avoid “#CALC!” messages and to coerce empty results to a friendly label.
- Document logic with comments or cell notes—future you (or a colleague) will appreciate seeing “Criteria 1 = Region, Criteria 2 = Year.”
- Minimize volatile functions (OFFSET, INDIRECT) around MINIFS; they force extra recalculations. Use static column references in Tables instead.
Common Mistakes to Avoid
- Range size mismatch – If min_range is [B2:B1000] but criteria_range is [A2:A500], MINIFS returns #VALUE!. Confirm sizes are identical; better yet, use Tables.
- Unintended text numbers – Order values imported as text cause them to be ignored. Use VALUE or multiply by 1 to coerce them to numbers.
- Expecting OR logic – MINIFS applies AND across each criteria pair. If you need minimum for “East or West,” use a helper column or alternative method like AGGREGATE.
- Assuming blank equals zero – Empty cells are excluded, but expressions like \">=0\" will include zeros and blanks differently than you think. Test with ISBLANK to distinguish.
- Using wildcards on numeric fields – Wildcards operate on text. Attempting \"*100\" on numbers produces no match. Convert the field to text first or revise the logic.
Alternative Methods
| Method | Excel Version | Pros | Cons | Typical Use | Formula Pattern |
|---|---|---|---|---|---|
| MINIFS | 2019 / 365 | Simple, readable, supports up to 127 criteria, no array entry | Not available pre-2019 | Most modern workbooks | =MINIFS(min_range, crit_range, crit) |
| Array MIN(IF()) | 2007+ | Works in all versions, flexible when OR logic needed | Requires Ctrl + Shift + Enter in 2016, less readable | Legacy compatibility | =MIN(IF(condition, values)) |
| AGGREGATE | 2010+ | Can ignore errors, handle OR via helper | More complex syntax, numeric only | Large datasets needing error handling | =AGGREGATE(15,6,1/(condition)*values,1) |
| SMALL/FILTER | 365 | Dynamic list of nth-minimums, spills automatically | 365 only, can slow if mis-used | Dashboards needing top/bottom lists | =SMALL(FILTER(values, condition),1) |
| Pivot Table | 2007+ | No formulas, drag-drop, handles thousands quickly | Not real-time if user forgets to refresh | Ad-hoc reports | Add field, set Value Field Settings to Min |
| Power Query | 2016+ | Handles millions of rows, reproducible ETL | Not live inside cell, requires refresh | Data transformations before Excel model | Group By → Minimum |
Choose the alternative when sharing with users on older versions, when you need OR logic across multiple criteria ranges, or when dataset size benefits from Power Query’s engine.
FAQ
When should I use this approach?
Use MINIFS whenever you have numeric data and need the smallest value meeting all specified criteria. It is perfect for KPI dashboards, compliance thresholds, or performance baselines where speed and transparency matter.
Can this work across multiple sheets?
Yes. Reference ranges on other sheets by qualifying them (Sheet2!A2:A100). All ranges still must be the same size. For criteria stored on another sheet, reference the cell directly (Sheet3!G2).
What are the limitations?
- No OR logic across separate criteria ranges.
- Not available in Excel 2016 or earlier.
- Returns 0 when no match is found, which can be misleading if 0 is a valid value.
Workarounds include array formulas, AGGREGATE, or nesting IFERROR.
How do I handle errors?
Wrap MINIFS inside IFERROR to replace 0 or errors with a descriptive label:
=IFERROR( IF( MINIFS(...) = 0, "No Match", MINIFS(...) ), "Error" )
For type mismatches, clean data with VALUE, TRIM, or SUBSTITUTE functions before running MINIFS.
Does this work in older Excel versions?
Directly, no. Excel 2016 and prior lack MINIFS. Use the array alternative:
=MIN(IF((criteria_range=criteria)*... , min_range))
Remember to confirm with Ctrl + Shift + Enter in those versions.
What about performance with large datasets?
MINIFS is highly optimized. Still, for files exceeding 200 000 rows:
- Store data in a Table and avoid entire-column references.
- Consider Power Query for pre-aggregation.
- Disable automatic calculation temporarily if editing multiple formulas.
Conclusion
Mastering the conditional minimum—through MINIFS or its alternatives—lets you answer critical business questions instantly, build cleaner dashboards, and eliminate manual filter fishing. This single skill dovetails into table management, dynamic arrays, and advanced logic, pushing you toward Excel mastery. Continue experimenting with LET, LAMBDA, and FILTER to create ever-smarter models, and you’ll soon handle even the most demanding analytical challenges with confidence.
Related Articles
How to Show the 10 Most Common Text Values in Excel
Learn multiple Excel methods to list the 10 most frequent text values—complete with step-by-step examples, business use cases, and expert tips.
How to Abbreviate Names Or Words in Excel
Learn multiple Excel methods to abbreviate names or words with step-by-step examples and practical applications.
How to Abbreviate State Names in Excel
Learn multiple Excel methods to abbreviate state names with step-by-step examples, professional tips, and real-world applications.