Skip to main content
Business Day Calculator

By Barron Hansen, Founder · Updated October 8, 2026

How to Calculate Business Days in Excel

Excel has two built-in functions for business-day work: NETWORKDAYS counts the working days between two dates, and WORKDAY returns the date a given number of working days before or after a start date. Both exclude Saturdays and Sundays and any dates you list as holidays. Their .INTL variants let you choose which days are the weekend. Everything below follows Microsoft's own function reference, linked under the guide, and every example result was recomputed with this site's engine.

Counting business days between two dates: NETWORKDAYS

=NETWORKDAYS(start_date, end_date, [holidays])

Microsoft describes the result as "the number of whole working days between start_date and end_date", where working days exclude weekends and any dates identified in holidays. The count includes both the start date and the end date when they are working days. Microsoft's own example shows it: from October 1, 2012 to March 1, 2013 the function returns 110, which is the number of weekdays in that span counting both ends (it would be 109 if the start date were left out).

Example: with April 1, 2026 in A2, April 30, 2026 in B2 and a holiday list in E2:E10:

=NETWORKDAYS(A2, B2, $E$2:$E$10)

April 2026 has 22 weekdays from the 1st to the 30th, and no US federal holiday falls in it, so with US federal holidays in the list the result is 22. Each holiday in the list that falls on a weekday in the range takes one off. The holidays argument is optional; leave it out and the function counts every weekday.

To leave the start date out of the count, add one day to it: =NETWORKDAYS(A2+1, B2).

Finding a due date: WORKDAY

=WORKDAY(start_date, days, [holidays])

WORKDAY returns the date that is days working days after the start date, or before it if days is negative. The start date itself is not counted: Microsoft's example takes October 1, 2008 plus 151 working days to April 30, 2009, which is what you get by counting from the next weekday.

Example: with April 1, 2026 in A2:

=WORKDAY(A2, 30, $E$2:$E$10)

The result is May 13, 2026, with or without US federal holidays in the list, because none falls between April 2 and May 13, 2026. Microsoft notes that if days is not a whole number it is truncated.

WORKDAY counts business days. Read as calendar days, a "Net 30" term needs no function at all: =A2+30. The Net 30 guide explains the two readings.

Setting up a holiday list

Put each holiday in its own cell as a real date. Microsoft's guidance is that dates should be entered with the DATE function or as the result of other formulas or functions, because problems can occur if dates are entered as text: =DATE(2026,1,1) rather than the text "1/1/2026". For the US federal holidays in 2026 the list starts with January 1, January 19 and February 16; the US federal holidays 2026 guide has the full list with each date.

Working days exclude weekends and any dates in the holiday list, so a holiday that falls on a weekend changes nothing, and you can list holidays by their calendar date without checking the weekday first.

To reuse the list in many formulas, give it a name. Microsoft's steps: put a label such as Holidays2026 above the dates, select the label and the dates together, select Formulas > Create from Selection, and in the Create Names from Selection dialog box check Top row. Excel names the dates after the label, and the formula becomes:

=NETWORKDAYS(A2, B2, Holidays2026)

Other weekends: NETWORKDAYS.INTL and WORKDAY.INTL

=NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])
=WORKDAY.INTL(start_date, days, [weekend], [holidays])

The weekend argument is either a number or a seven-character string. The numbers are 1 (or omitted) for Saturday and Sunday, 2 to 7 for the other two-day pairs (7 is Friday and Saturday), and 11 to 17 for a single weekend day (11 is Sunday only, 17 Saturday only); there are no 8, 9 or 10. The string has one character per day starting with Monday, 1 for a non-working day and 0 for a working day: "0000011" is Saturday and Sunday, and "0000110" is Friday and Saturday.

For a Friday-Saturday weekend:

=NETWORKDAYS.INTL(A2, B2, 7, Holidays2026)
=NETWORKDAYS.INTL(A2, B2, "0000110", Holidays2026)

Both lines give the same result. The guide to the working week around the world covers which countries rest on which days.

Formatting the result

WORKDAY returns a date serial number: Excel stores dates as sequential numbers, with January 1, 1900 as 1 by default. If the cell shows 46155 instead of May 13, 2026, format it as a date. Microsoft's steps: select the cells, press Ctrl+1, choose the Number tab in the Format Cells box, select Date in the Category list and pick a format under Type. NETWORKDAYS returns a count and needs no date format.

When a formula is more than you need

For a single due date or a quick count, the Business Day Calculator is faster: it carries the holiday calendars of 25 countries, so there is no list to maintain. For the same calculation across many rows, the Excel functions are the better tool. The Google Sheets guide covers the same functions in Sheets.

FAQ

What is the difference between NETWORKDAYS and NETWORKDAYS.INTL?

NETWORKDAYS always treats Saturday and Sunday as the weekend. NETWORKDAYS.INTL takes a weekend argument: a number (1 to 7 for two-day weekends, 11 to 17 for one day) or a seven-character string starting with Monday, so a Friday-Saturday weekend is 7 or "0000110".

Does NETWORKDAYS include the start date and end date?

Yes, when they are working days. Microsoft's own example returns 110 for October 1, 2012 to March 1, 2013, the weekday count with both ends included. To leave the start date out, add one to it: =NETWORKDAYS(A1+1, B1).

What if my holiday list includes weekends?

Nothing changes. Working days already exclude weekends, and a holiday on a Saturday or Sunday is not a working day either way, so listing it does not reduce the count twice.

Need to calculate business days? Use our free Business Day Calculator.