NETWORKDAYS Function

Excel Functions › Date & Time

All versions

The Excel NETWORKDAYS function counts the working days between two dates — Monday through Friday, minus any holidays you list. It answers the questions calendars are made of: how many business days until the deadline, how many working days did that ticket sit open, how many staff-days are in this quarter. Two things to burn in: the count is inclusive of both end dates, and the weekend is hard-coded to Saturday–Sunday (for any other schedule, see NETWORKDAYS.INTL).


Quick answer: working days between a start in A2 and an end in B2, skipping the holidays listed in E2:E10:
=NETWORKDAYS(A2, B2, $E$2:$E$10)
Both A2 and B2 are counted if they are weekdays — Monday to Friday of one week returns 5, not 4.

Syntax

=NETWORKDAYS(start_date, end_date, [holidays])
ArgumentDescription
start_dateRequiredFirst date of the period. Counted in the total if it is a weekday.
end_dateRequiredLast date of the period — also counted if it is a weekday. Swapped dates give a negative count instead of an error.
holidaysOptionalA range (or array) of dates to exclude — company holidays, plant shutdowns, anything. Lock it with absolute references ($E$2:$E$10) so it survives copying.

Available in: every modern version of Excel. The weekend is always Saturday and Sunday — that is baked in. Friday–Saturday weekends, four-day weeks, and every other schedule belong to NETWORKDAYS.INTL.

Counting business days, with and without holidays

January 5, 2026 is a Monday and January 30 is a Friday — four full weeks, so 20 weekdays. MLK Day (January 19) falls inside the range, and the holiday list knocks it out:

ABDE
1ProjectWorking daysHolidayDate
2Start: 01/05/202619New Year’s Day01/01/2026
3End: 01/30/2026MLK Day01/19/2026
4Memorial Day05/25/2026
=NETWORKDAYS(DATE(2026,1,5), DATE(2026,1,30)) // 20 weekdays, no holidays
=NETWORKDAYS(DATE(2026,1,5), DATE(2026,1,30), E2:E4) // 19 - MLK Day removed

Holidays outside the range (New Year’s, Memorial Day) are ignored harmlessly, so one master holiday list serves every formula in the workbook.

Both endpoints count — a one-day “range” on a weekday returns 1:

=NETWORKDAYS(DATE(2026,1,5), DATE(2026,1,5)) // returns 1, not 0

Try it: interactive NETWORKDAYS demo

Live demo

Pick a date range and toggle 2026 holidays on and off — the working-day count updates live.

Real-world recipes

Business days remaining until a deadline in B2 (today counts if it is a weekday):

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

Turnaround time for each ticket — opened in B2, closed in C2, copied down a column:

=NETWORKDAYS(B2, C2, $E$2:$E$10) // inclusive: same-day close = 1

Working days in any month, straight from its first day in A2:

=NETWORKDAYS(A2, EOMONTH(A2,0), $E$2:$E$10)

Going the other direction? NETWORKDAYS measures a span you already have. To find a date — “what is 10 working days from today?” — use WORKDAY, its mirror image.

Errors & common pitfalls

Pitfall: forgetting the count is inclusive. Monday to Friday is 5 working days to NETWORKDAYS, but if you mean “working days between” or are computing an SLA where the start day should not count, subtract 1. Off-by-one disagreements between this function and human intuition are the #1 support question.

Pitfall: unlocked holiday range. Copy =NETWORKDAYS(B2,C2,E2:E10) down a column and the holiday range slides to E3:E11, E4:E12… silently dropping holidays. Always anchor it: $E$2:$E$10.

#VALUE! — a date argument isn’t a real date. Usually text-formatted dates imported from elsewhere. Rebuild them with DATE or DATEVALUE, and check with ISNUMBER.

Pitfall: weekend holidays do nothing. A holiday list entry that falls on a Saturday is already a non-working day, so it changes nothing — correct behavior, but surprising if your company observes the holiday on the following Monday. List the observed dates, not the nominal ones.

Pitfall: a negative result. NETWORKDAYS does not error when start and end are reversed; it returns a negative count. Handy when intentional, baffling when not — check the argument order.

Practice workbook

📊
Download the free NETWORKDAYS practice workbook
Every example on this page, ready to open in Excel — plus practice challenges with answers on a separate tab. No sign-up required.

Frequently asked questions

Does NETWORKDAYS count the start and end dates?
Yes — both are included if they fall on weekdays. Monday through Friday of one week is 5 working days. If your logic needs an exclusive count (start day not counted), subtract 1 from the result.
How do I exclude company holidays?
Keep the holiday dates in a small range and pass it as the third argument: =NETWORKDAYS(A2, B2, $E$2:$E$10). Dates outside the period are ignored, so one master list works for every formula.
Can NETWORKDAYS use a weekend other than Saturday-Sunday?
No — Saturday–Sunday is hard-coded. Use NETWORKDAYS.INTL, which accepts 17 preset weekend codes or a 7-character mask like "0000011" defining exactly which days are off.
What's the difference between NETWORKDAYS and WORKDAY?
Opposite directions. NETWORKDAYS measures a span: two dates in, a count of working days out. WORKDAY projects forward: a date and a number of working days in, a future (or past) date out.
Why is my NETWORKDAYS result negative?
The start date is later than the end date. NETWORKDAYS signals reversed arguments with a negative count rather than an error — swap the dates or wrap the result in ABS.
Can I count working days remaining in the current month?
Yes: =NETWORKDAYS(TODAY(), EOMONTH(TODAY(),0), $E$2:$E$10) — today through month-end, holidays excluded, refreshing automatically each day.

Master functions like this in one day

This page covers one function. Our Excel Formulas and Functions class covers the 30 that matter most — live, hands-on, taught by professionals in Dallas–Fort Worth, Houston, Austin, Oklahoma City, Denver, or online.

See the Formulas & Functions Class

Related functions: NETWORKDAYS.INTL · WORKDAY · DAYS · TODAY · DATE