How to use Excel COUNTIFS and COUNTIF with multiple criteria

The tutorial explains how to use COUNTIFS and COUNTIF formulas with multiple criteria in Excel based on AND as well as OR logic. You will find a number of examples for different data types - numbers, dates, text, wildcard characters, non-blank cells and more.

Of all Excel functions, COUNTIFS and COUNTIF are probably most often mixed up because they look very much alike and both are purposed for counting cells based on the specified criteria.

The difference is that COUNTIF is designed for counting cells with a single condition in one range, whereas COUNTIFS can evaluate different criteria in the same or in different ranges. The aim of this tutorial is to demonstrate different approaches and help you choose the most efficient formula for each particular task.

Excel COUNTIFS function - syntax and usage

The Excel COUNTIFS function counts cells across multiple ranges based on one or several conditions. The function is available in Excel 365, 2021, 2019, 2016, 2013, Excel 2010, and Excel 2007, so you can use the below examples in any Excel version.

COUNTIFS syntax

The syntax of the COUNTIFS function is as follows:

COUNTIFS(criteria_range1, criteria1, [criteria_range2, criteria2]…)
  • criteria_range1 (required) - defines the first range to which the first condition (criteria1) shall be applied.
  • criteria1 (required) - sets the condition in the form of a number, cell reference, text string, expression or another Excel function. The criteria defines which cells shall be counted and can be expressed as 10, "<=32", A6, "sweets".
  • [criteria_range2, criteria2]… (optional) - these are additional ranges and their associated criteria. You can specify up to 127 range/criteria pairs in your formulas.

In fact, you don't have to remember the syntax of the COUNTIF function by heart. Microsoft Excel will display the function's arguments as soon as you start typing; the argument you are entering at the moment is highlighted in bold. The syntax of the Excel COUNTIFS function

Excel COUNTIFS - things to remember!

  1. You can use the COUNTIFS function in Excel to count cells in a single range with a single condition as well as in multiple ranges with multiple conditions. If the latter, only those cells that meet all of the specified conditions are counted.
  2. Each additional range must have the same number of rows and columns as the first range (criteria_range1 argument).
  3. Both contiguous and non-contiguous ranges are allowed.
  4. If the criteria is a reference to an empty cell, the COUNTIFS function treats it as a zero value (0).
  5. You can use the wildcard characters in criteria - asterisk (*) and question mark (?). See this example for full details.

How to use COUNTIFS and COUNTIF with multiple criteria in Excel

Below you will find a number of formula examples that demonstrate how to use the COUNTIFS and COUNTIF functions in Excel to evaluate multiple conditions.

How to count cells with multiple criteria (AND logic)

This scenario is the easiest one, since the COUNTIFS function in Excel is designed to count only those cells for which all of the specified conditions are TRUE. We call it the AND logic, because Excel's AND function works this way.

Formula 1. COUNTIFS formula with multiple criteria

Suppose you have a product list like shown in the screenshot below. You want to get a count of items that are in stock (value in column B is greater than 0) but have not been sold yet (value is column C is equal to 0).

The task can be accomplished by using this formula:

=COUNTIFS(B2:B7,">0", C2:C7,"=0")

And the count is 2 ("Cherries" and "Lemons"): Counting cells with multiple criteria based on AND logic

Formula 2. COUNTIFS formula with two criteria

When you want to count items with identical criteria, you still need to supply each criteria_range / criteria pair individually.

For example, here's the right formula to count items that have 0 both in column B and column C:

=COUNTIFS($B$2:$B$7,"=0", $C$2:$C$7,"=0")

This COUNTIFS formula returns 1 because only "Grapes" have "0" value in both columns. COUNTIFS formula with identical criteria

Using a simpler formula with a single criteria_range like COUNTIFS(B2:C7,"=0") would yield a different result - the total count of cells in the range B2:C7 containing a zero (which is 4 in this example).

How to count cells with multiple criteria (OR logic)

As you have seen in the above examples, counting cells that meet all of the specified criteria is easy because the COUNTIFS function is designed to work this way.

But what if you want to count cells for which at least one of the specified conditions is TRUE, i.e. based on the OR logic? Overall, there are two ways to do this - by adding up several COUNTIF formulas or using a SUM COUNTIFS formula with an array constant.

Formula 1. Add up two or more COUNTIF or COUNITFS formulas

In the table below, supposing you want to count orders with the "Cancelled" and "Pending" status. To have it doen, you can simply write 2 regular Countif formulas and add up the results:

=COUNTIF($C$2:$C$11,"Cancelled") + COUNTIF($C$2:$C$11,"Pending") Counting cells that meet any of the specified criteria

In case each of the functions is supposed to evaluate more than one condition, use COUNTIFS instead of COUNTIF. For example, to get the count of "Cancelled" and "Pending" orders for "Apples" use this formula:

=COUNTIFS($A$2:$A$11, "Apples", $C$2:$C$11,"Cancelled") + COUNTIFS($A$2:$A$11, "Apples", $C$2:$C$11,"Pending") Another formula to count cells with multiple criteria and OR logic

Formula 2. SUM COUNTIFS with an array constant

In situations when you have to evaluate a lot of criteria, the above approach is not the best way to go because your formula would grow too big in size. To perform the same calculations in a more compact formula, list all of your criteria in an array constant, and supply that array to the criteria argument of the COUNTIFS function. To get the total count, embed COUNTIFS inside the SUM function, like this:

SUM(COUNTIFS(range,{"criteria1","criteria2","criteria3",…}))

In our sample table, to count orders with the status "Cancelled" or "Pending" or "In transit", the formula would go as follows:

=SUM(COUNTIFS($C$2:$C$11, {"cancelled", "pending", "in transit"})) A more compact formula to count cells with multiple criteria and OR logic

In a similar manner, you can count cells based on two or more criteria_range / criteria pairs. For instance, to get the number of "Apples" orders that are "Cancelled" or "Pending" or "In transit", use this formula:

=SUM(COUNTIFS($A$2:$A$11,"apples",$C$2:$C$11,{"cancelled","pending","in transit"})) Counting cells with multiple criteria_range / criteria pairs and OR logic

You can find a few more ways to count cells with OR logic in this tutorial: Excel COUNTIF and COUNTIFS with OR conditions.

How to count numbers between 2 specified numbers

By and large, COUNTIFS formulas for numbers fall into 2 categories - based on several conditions (explained in the above examples) and between the two values you specify. The latter can be accomplished in two ways - by using the COUNTIFS function or by subtracting one COUNTIF from another.

Formula 1. COUNTIFS to count cells between two numbers

To find out how many numbers between 5 and 10 (not including 5 and 10) are contained in cells C2 through C10, use this formula:

=COUNTIFS(C2:C10,">5", C2:C10,"<10") A COUNTIFS formula to count numbers between X and Y

To include 5 and 10 in the count, use the "greater than or equal to" and "less than or equal to" operators:

=COUNTIFS(B2:B10,">=5", B2:B10,"<=10")

Formula 2. COUNTIF formulas to count numbers between X and Y

The same result can be achieved by subtracting one Countif formula from another. The first one counts how many numbers are greater than the lower bound value (5 in this example). The second formula returns the count of numbers that are greater than the upper bound value (10 in this case). The difference between the first and second number is the result you are looking for.

  • =COUNTIF(C2:C10,">5")-COUNTIF(C2:C10,">=10") - counts how many numbers greater than 5 and less than 10 are in the range C2:C10. This formula will return the same count as shown in the screenshot above.
  • =COUNTIF(C2:C10, ">=5")-COUNTIF(C2:C10, ">10") - the formula counts how many numbers between 5 and 10 are in the range C2:C10, including 5 and 10.

How to use cell references in COUNTIFS formulas

When using logical operators such as ">", "<", "<=" or ">=" together with cell references in your Excel COUNTIFS formulas, remember to enclose the operator in "double quotes" and
add an ampersand (&) before a cell reference to construct a text string.

In a sample dataset below, let's count "Apples" orders with amount greater than $200. With criteria_range1 in cells A2:A11 and criteria_range2 in B2:B11, you can use this formula:

=COUNTIFS($A$2:$A$11, "Apples", $B$2:$B$11, ">200")

Or, you can input your criteria values in certain cells, say F1 and F2, and reference those cells in your formula:

=COUNTIFS($A$2:$A$11, $F$1, $B$2:$B$11, ">"&$F$2)

Please notice the use of absolute cell references both in the criteria and criteria_range arguments, which prevents the formula from being broken when copied to other cells. Using cell references in COUNTIFS formulas

For more information about the use of an ampersand in COUNTIF and COUNTIFS formulas, please see Excel COUNTIF - frequently asked questions.

How to use COUNTIFS with wildcard characters

In Excel COUNTIFS formulas, you can use the following wildcard characters:

  • Question mark (?) - matches any single character, use it to count cells starting and/or ending with certain characters.
  • Asterisk (*) - matches any sequence of characters, you use it to count cells containing a specified word or a character(s) as part of the cell's contents.

Tip. If you want to count cells with an actual question mark or asterisk, type a tilde (~) before an asterisk or question mark.

Now let's see how you can use a wildcard char in real-life COUNTIFS formulas in Excel. Suppose, you have a list of projects in column A. You wish to know how many projects are already assigned to someone, i.e. have any name in column B. And because we are learning how to use the COUNTIFS function with multiple criteria, let's add a second condition - the End Date in column D should also be set.

Here is the formula that works a treat:

=COUNTIFS(B2:B10,"*",D2:D10,"<>"&""))

Please note, you cannot use a wildcard character in the 2nd criteria because you have dates rather that text values in column D. That is why, you use the criteria that finds non-blank cells: "<>"&"" The COUNTIFS formula to count entries containing any text in one column and non-blank cells in another column.

COUNTIFS and COUNTIF with multiple criteria for dates

The COUNTIFS and COUNTIF formulas you use for dates are very much similar to the above formulas for numbers.

Example 1. Count dates in a specific date range

To count the dates that fall in a certain date range, you can also use either a COUNTIFS formula with two criteria or a combination of two COUNTIF functions.

For example, the following formulas count the number of dates in cells C2 through C10 that fall between 1-Jun-2014 and 7-Jun-2014, inclusive:

=COUNTIFS(C2:C9, ">=6/1/2014", C2:C9, "<=6/7/2014")

=COUNTIF(C2:C9, ">=6/1/2014") - COUNTIF(C2:C9, ">6/7/2014") The COUNTIF formula with 2 conditions to count dates in a specific date range

Example 2. Count dates with multiple conditions

In the same manner, you can use a COUNTIFS formula to count the number of dates in different columns that meet 2 or more conditions. For instance, the below formula will find out how many products were purchased after the 20th of May and delivered after the 1st of June:

=COUNTIFS(C2:C9, ">5/1/2014", D2:D9, ">6/7/2014") The COUNTIF formula to count dates with multiple conditions

Example 3. Count dates with multiple conditions based on the current date

You can use Excel's TODAY() function in combination with COUNTIF to count dates based on the current date.

For example, the following COUNTIF formula with two ranges and two criteria will tell you how many products have already been purchased but not delivered yet.

=COUNTIFS(C2:C9, "<"&TODAY(), D2:D9, ">"&TODAY()) The COUNTIF formula to count dates with multiple conditions based on the current date

This formula allows for many possible variations. For instance, you can tweak it to count how many products were purchased more than a week ago and are not delivered yet:

=COUNTIFS(C2:C9, "<="&TODAY()-7, D2:D9, ">"&TODAY())

This is how you count cells with multiple criteria in Excel. I hope you will find these examples helpful. Anyway, I thank you for reading and hope to see you on our blog next week!

2039 comments

  1. Dear Svetlana Cheusheva,

    I had emailed you already.
    I have attached a .jpeg worksheet in this comment with vertical data in it. In the column PRODUCT ID, there is different numbers start with CL00 and they repeat multiple times in the same column on the same sheet and also on the different sheet of the same file.I want to count them in a new sheet and also want the sum of consumption column in the same row.

    please help
    I have set an example in the attachment by manually.

    Sno. Orderid OrderDate BOM Productid Specid Consumption
    1 564084 4/3/2016 2 CL0039911 944518 3.2
    2 564084 4/3/2016 0.5 CL0038981 944519 3
    3 564091 4/3/2016 0.5 CL0038981 944534 3
    4 564093 4/3/2016 0.5 CL0038981 944536 3
    5 564099 4/3/2016 2 CL0039911 944545 3.2

    I have more than 30 sheets of the same data but with different consumption how to count them in like I said before.

  2. Dear Svetlana Cheusheva,

    I had emailed you already.
    I have attached a .jpeg worksheet in this comment with vertical data in it. In the column PRODUCT ID, there is different numbers start with CL00 and they repeat multiple times in the same column on the same sheet and also on the different sheet of the same file.I want to count them in a new sheet and also want the sum of consumption column in the same row.

    please help
    I have set an example in the attachment by manually.

  3. Hi Renat!
    Many thanks for your great help.
    I have this formula posted by Jeff at Excel University Website. It works very fine for me and i found helpful since it uses columns header and structured data reference.Above all the formula is very reliable and consistent.However, I tried to copy modify same formula in another cell to provide also for countifs function i.e to calculate the number of value items added in the SUMIFS function by simply replacing the word " SUMIFS" in the formula with "COUNTIFS" but it doesn't work. Need your help with this, if u don't mind.

    =SUMIFS(INDEX(tbl1,,MATCH(D$7,tbl1[#Headers],0)),tbl1[[Product]:[Product]],$B8)
    Thank you in advance
    Monas

  4. Quantity pcs/ctn Carton to be created Left over Quantity
    725 30 24 5

    What will be the formula used for "Carton to be created " and "Left over Quantity"?

  5. Hi,

    I have 2 columns, say equipment model & location name . I need to count the location name by the equipment model.

    model location
    aa 1a
    bb 2b
    cc 3c
    aa 4d
    cc 1a
    dd 2b
    bb 1a
    bb 2b

    I require the result as count of 1a in aa = 1, 1a in bb = 1, 2b in bb = 2. can you help me with the correct formula.

  6. I am trying to use CountIF to determine from a data dump the number a user has from different categories of work. For example Column A has various names, and column D has a category of Expenses, and Column F has Food as a category.

    I can't seem to get this to work it keeps giving me an error and the the totals I want are how many Barbara completed from Each category, then How many Sandra did from each category. The totals will be on a different worksheet in the workbook than where the action data is sort of a summary sheet.

    Can anyone please help?

  7. Hello,
    My data set consist of several sales entries like; date, rep name,location,region,item and if sales was done at POS which is depicted with a "Y" or an "N". In my analysis, i need to show the number times the letter "Y" appears for each sales person using entry date and reps name.
    E.g =countifs(b2:b50,12/03/16,D2:D50,JOHN,H2:H50,"Y").

    Regards

  8. I currently have a yes/no spreadsheet with approx 30 individual questions listed down the cells. 12 of these questions are mandatory and have a 0.3666 percentage weighting allocated to each (Total for all mandatory questions is 44%). The non-mandatory questions also have different percentages allocated to them totaling up to 56%.
    If a client does not answer one of the mandatory questions, then the spreadsheet should show 'FAIL' against that company, but because of the percentage number against the other questions, the result is showing #value!
    How do I get this field to say FAIL (text) if one of the mandatory field has 'no' in it and show a percentage (number) if all mandatory have 'yes' against them

    Currently have -
    =IF(COUNTIFS(R6C6:R43C6,"=Mandatory",R[2]C:R[39]C,"=No")>0,"fail",COUNTIFS(R6C6:R43C6,"=Mandatory",R[2]C:R[39]C,"=Yes")*"0.03666")+(COUNTIFS(R6C6:R43C6,1.5%,R[2]C:R[39]C,"=Yes")*0.015)+(COUNTIFS(R6C6:R43C6,3%,R[2]C:R[39]C,"=Yes")*0.03)+(COUNTIFS(R6C6:R43C6,4%,R[2]C:R[39]C,"=Yes")*0.04)

  9. I looking for a formula which could meet multiple criterias. I looking for a specific manufacturer (say dell) on first column, if the condition meets, i'm looking for specific model (say dell lattitude 630) on second column, if the condition meets, i want to count the number of windows 7 machines which is present on the third column. I'm using sumproduct to total across the sheets for one criteria, now i want to use it for multiple criteria. We use filter to filter column by column to get that. Please help me.

    • Hi Jayakumar Krishnamoorthy,

      Please try the following formula:
      =COUNTIFS(A1:A10, "dell", B1:B10, "dell lattitude 630", C1:C10, "windows 7")
      where
      manufacturer values are in A1:A10
      model values are in B1:B10
      os version values are in C1:C10

  10. How do I count from non-adjacent cells with multiple criterias?
    I am working on our schedule per week, I want to know the headcount present every four hours in a day including the overtime (criterias are advance, extend, training, blank etc.)I used the countif formula but it is so long due to multiple criterias and non adjacent cells.

  11. Hello,
    Can someone please help me with this?
    I'm looking for a way to count the occurrences in a column where two or more consecutive values are grater than 5.
    for example:

    Column A
    Row 1 0.61
    Row 2 0.62
    Row 3 5.12
    Row 4 6.34
    Row 5 3.58
    Row 6 5.8
    Row 7 0.62
    Row 8 13.62
    Row 9 5.09
    Row 10 7.65
    Row 11 0.61

    In this example the result from column A would be two (2). A3 and A4 is one and A8-A10 is another. Row 6 is not counted because the value right before or after is less than 5.

  12. Please all Excel Formula Example Send me

    Thanks

    Regards

    Mangalsingh
    9202267674

  13. Hi,
    I have Date and times for different days, eg
    3/6/2016 10:35
    3/6/2016 10:50
    3/6/2016 10:59
    3/7/2016 11:45
    3/7/2016 11:50
    3/7/2016 11:53
    3/8/2016 9:09
    3/8/2016 9:27
    3/8/2016 9:56
    3/8/2016 9:57.
    All This is Row A. in Cells
    C1 I have 3/6/2016
    C2 I have 3/7/2016 and in cell
    C3 Ihave 3/7/2016.
    in D1, I want to Say " countif,range A:A contents a date like in C1".
    i.e, count the cells in range A:A that contains the dates without time.
    How can I possibly do this??

  14. I have a range of Data from sap that I need to organise into work areas by centre.

    I have used COUNTIFS to gather one area work orders by work center which looks like:

    =COUNTIF('RAW DATA 1 LAST WEEKS Orders '!M7:M4394,"3001-320-3523*")+COUNTIF('RAW DATA 1 LAST WEEKS Orders '!M7:M4394,"3001-320-3563*")+COUNTIF('RAW DATA 1 LAST WEEKS Orders '!M7:M4394,"3001-320-3516*")

    Now I need to count the work orders that belong in the formula above, but also have *TECO* in the J column of the same page?

    Could you please help with this?

    Thanks in advance.

    • You should use the array formula to solve this task.
      For example:
      {=SUM(1 * (LEFT('RAW DATA 1 LAST WEEKS Orders '!M7:M4394, LEN("3001-320-3523"))="3001-320-3523") * (IF(ISERROR(FIND("TECO", 'RAW DATA 1 LAST WEEKS Orders '!J7:J4394)), 0, 1)))}
      To enter this formula press CTRL+SHIFT+ENTER.

  15. Please I have range with many numbers i want to count with excluding any cell starting with 6.

    Regards,

  16. Hi ,
    I have one situation where I am stuck. I have two columns, one with car name and 2nd with number of sales in a year.
    Can i use count if to get what car and how many units are sold.
    I tried giving criteria as Camary and range as the no of units sold, but that did not work. I tried selecting both columns as range, but that did not work either.
    Please help

    • Hi Gurpreet,

      You can use the following array formula:
      {=SUM(B1:B10 * (A1:A10 = "Camary"))}
      where
      "car name" values are in A1:A10
      "number of sales" values are in B1:B10
      To enter this formula press CTRL+SHIFT+ENTER.

  17. Hi

    i use this formula =COUNTIFS('Process Data'!$A:$A,Tally!$A3,'Process Data'!$C:$C,Tally!$B3,'Process Data'!$H:$H,Tally!C$2)

    I need to use in VBA how to use Countifs Function so please tell me code foe this

  18. Hi, Can you help me in generating a countif formula in my table? For example Cell-A states the Company Names, ex. A,B,C,D, then in Cell-B states the specific date they submit their reports, ex. 01/31/2015,02/12/206. The problem is I want to count the numbers of the report they submitted in a month. Many companies, Many reports submitted in 1 month, How can I use countif in this problem? please help me. I dont know how to use date in Countif.

    • Hi Gab,

      You can use the following formula to count reports, say, submitted in January 2016:

      =SUMPRODUCT(--(MONTH(B2:B100)=1), --(YEAR(B2:B100)=2016))

      Where B1:B100 are cells containing submission dates.

      To count reports for any other month / year, simply replace =1 and =2016 in the formula with the required numbers.

  19. Hi,

    How can i count no.of employees working in different departments year wise.
    For example total no. of employees is 100, how can i know that how many employees were working in different departments in different years.
    Total=100
    In year 2015, 10 were working in accounting, 20 were working in admn. etc etc
    In year 2016, 35 were working in accounting, 10 were in R&D, 20 were working in admn. etc etc

    Thanks.

  20. Hi
    Please help me i have TAT data of the employee were i required Acquired tat for individual employee who is falling in which range like -
    1) 0 to 5
    2) 6 to 10
    3) 11 to 15...
    required employee wise split

    kinldy help

Post a comment



Thank you for your comment!
When posting a question, please be very clear and concise. This will help us provide a quick and relevant solution to
your query. We cannot guarantee that we will answer every question, but we'll do our best :)