Menu

NETWORKDAYS and WORKDAY in Excel: Count Working Days

=NETWORKDAYS(A2,B2) counts the working days (Monday to Friday) from A2 to B2, both dates included. =WORKDAY(A2,10) returns the date 10 working days after A2. Both can skip a list of holidays.

Every sheet on this page is live: change a number or a formula and it recalculates.

=NETWORKDAYS(A2,B2) counts the working days from the date in A2 to the date in B2, both included, where a working day is Monday to Friday. =WORKDAY(A2,10) goes the other way: it returns the date 10 working days after A2.

Working days in each project
C2
ABCD
1StartEndWorking daysCalendar days
22026-03-022026-03-131012
32026-03-022026-03-312230
42026-03-062026-03-0924
52026-03-072026-03-0802
Click a cell to see its formula. Change a number or a formula and the sheet recalculates.

The first project runs from a Monday to the Friday of the next week: 12 calendar days, 10 working days. All of March 2026 from the 2nd has 22 working days. A Friday to the following Monday is 2, and a weekend alone is 0. Change an end date to see the count move. (For plain day counts see days between dates.)

NETWORKDAYS with holidays

The third argument is a range of dates to skip on top of weekends. Keep the holidays in their own column (or on another sheet) and lock the range with $ so it stays put when the formula is filled down.

Working days minus holidays
C2
ABCDE
1StartEndNo holidaysWith holidaysHolidays
22026-03-302026-04-101082026-04-03
32026-04-012026-04-3022202026-04-06
42026-04-272026-05-081092026-05-01
Click a cell to see its formula. Change a number or a formula and the sheet recalculates.

March 30 to April 10 has 10 weekdays, of which two are holidays (Good Friday and Easter Monday 2026), so 8 working days. Only holidays inside each period are subtracted: the last row loses May 1 and nothing else. Delete a holiday in column E and the counts go back up.

WORKDAY: a due date in working days

WORKDAY(start_date, days, [holidays]) returns the date a number of working days after the start. The start date itself is not counted, and the result is never a weekend or a holiday.

Due dates in working days
C2
ABCDE
1ReceivedDaysDueDue (holidays)Holidays
22026-03-27102026-04-102026-04-142026-04-03
32026-04-0232026-04-072026-04-092026-04-06
42026-04-2452026-05-012026-05-042026-05-01
Click a cell to see its formula. Change a number or a formula and the sheet recalculates.

A request received on Friday 2026-03-27 with 10 working days is due 2026-04-10, or 2026-04-14 once Good Friday and Easter Monday are skipped. With a negative number of days WORKDAY counts backwards: =WORKDAY(A2,-5) is the working day a week before. To find "the next working day" use 1, and to keep a date that is already a working day, use =WORKDAY(A2-1,1).

Other weekends: NETWORKDAYS.INTL

Where the weekend is not Saturday and Sunday, NETWORKDAYS.INTL takes a weekend code as its third argument and the holidays as its fourth.

WeekendCode
Saturday, Sunday1 (default)
Sunday, Monday2
Friday, Saturday7
Sunday only11
Saturday only17
Any pattern7 characters, Monday first, 1 = day off: "0000011"
Working days in March 2026 by weekend
C2
ABCDEF
1WeekendCodeWorking daysStartEnd
2Saturday and Sunday1222026-03-012026-03-31
3Friday and Saturday723
4Sunday only1126
5Mon, Wed, Fri only010101113
Click a cell to see its formula. Change a number or a formula and the sheet recalculates.

March 2026 has 22 working days with a Saturday and Sunday weekend, 23 with a Friday and Saturday weekend, and 26 when only Sunday is off. The last row is a part-time pattern: 0101011 gives Tuesday and Thursday off as well as the weekend, which leaves 13 days. In a cell, a code like 0101011 must be text (type it with a leading apostrophe, '0101011), otherwise Excel drops the leading zero.

WORKDAY.INTL does the same for due dates. These are Excel's results for 10 working days after Monday, March 2, 2026:

=WORKDAY.INTL(DATE(2026,3,2), 10)              2026-03-16   (Saturday and Sunday off)
=WORKDAY.INTL(DATE(2026,3,2), 10, 7)           2026-03-16   (Friday and Saturday off)
=WORKDAY.INTL(DATE(2026,3,2), 10, 11)          2026-03-13   (Sunday off)
=WORKDAY.INTL(DATE(2026,3,2), 10, "0000011")   2026-03-16   (same as code 1)

Practice: working days and a due date

Your turn: working days
C2
ABCDE
1StartEndWorking daysHolidays
22026-04-012026-04-302026-04-03
32026-04-06
Click a cell to see its formula. Change a number or a formula and the sheet recalculates.

Your turn: In C2, count the working days from A2 to B2, both included, skipping the holidays in E2:E3.

Your turn: due date
C2
ABC
1ReceivedDaysDue
22026-05-148
Click a cell to see its formula. Change a number or a formula and the sheet recalculates.

Your turn: In C2, return the date that is the number of working days in B2 after the date in A2 (weekends skipped, no holidays).

NETWORKDAYS counts both ends, WORKDAY does not

The two functions disagree by one about the start date, which surprises people who use them together. NETWORKDAYS from a Monday to the Friday of the same week is 5: both days count. WORKDAY from that Monday with 5 days lands on the next Monday, because it starts counting on the day after.

The off-by-one between the two
C2
ABC
1StartWORKDAY(A2,5)NETWORKDAYS back
22026-03-022026-03-096
Click a cell to see its formula. Change a number or a formula and the sheet recalculates.

WORKDAY returns 2026-03-09, and NETWORKDAYS from 2026-03-02 to that date gives 6, not 5. For a deadline "within 5 working days, counting today", use =WORKDAY(A2,4) when A2 is a working day. Decide once which convention your team uses and write it next to the formula.

Frequently Asked Questions

How do I count working days between two dates in Excel?

=NETWORKDAYS(A2,B2) counts the Mondays to Fridays from A2 to B2, including both dates. Add a range of holiday dates as the third argument to skip them too: =NETWORKDAYS(A2,B2,$E$2:$E$4).

How do I add working days to a date in Excel?

=WORKDAY(A2,10) returns the date 10 working days after A2, skipping Saturdays and Sundays. A negative number goes back: =WORKDAY(A2,-5). Add a holiday range as the third argument.

What is the difference between NETWORKDAYS and NETWORKDAYS.INTL?

NETWORKDAYS always treats Saturday and Sunday as the weekend. NETWORKDAYS.INTL takes a weekend argument: 7 for Friday and Saturday, 11 for Sunday only, or a seven-character string like "0000011" where 1 marks a day off, starting on Monday.

Does NETWORKDAYS include the start date?

Yes. NETWORKDAYS counts both the start and the end date when they are working days, so a Monday to the next Friday is 5. WORKDAY does not count the start date: =WORKDAY(A2,1) is the next working day.

What happens if a holiday falls on a weekend?

Nothing extra: NETWORKDAYS and WORKDAY skip weekend days anyway, so a holiday on a Saturday is not subtracted twice.

Coddy programming languages illustration

Learn to code with Coddy

GET STARTED