Cellwise Start free

Excel guide · 6 min read

WORKDAY vs NETWORKDAYS: what is the difference?

Quick answerWORKDAY returns a date: =WORKDAY(start,5) is the date 5 working days after the start. NETWORKDAYS returns a number: =NETWORKDAYS(start,end) counts the working days between two dates. They are not exact opposites, because NETWORKDAYS counts the start day and WORKDAY does not. Both skip Saturdays, Sundays and any holidays you list.

Sample data

Every result on this page was calculated from this sheet by the same spreadsheet engine the Cellwise app uses.

ABCDEFGHI
1TaskStartWorkdays neededDeadlineHolidaysAs ofNov 4, 2026
2CopywritingNov 2, 20265Nov 6, 2026Nov 26, 2026
3Print proofsNov 7, 20263Nov 11, 2026Dec 25, 2026
4Design reviewNov 20, 20265Nov 30, 2026Jan 1, 2027
5Year-end closeDec 21, 20268Jan 5, 2027
6Client reportNov 4, 202612Nov 20, 2026

Download this sheet as an Excel practice file (.xlsx)

Same plan, two questions

The sheet is a small project plan: each task has a start date, the working days it needs and a deadline, plus a holiday list in F2:F4 and an as-of date in I1. Copywriting starts on Monday 2 November 2026 and needs 5 working days.

"What date is 5 working days after the start?" is a WORKDAY question, and the answer is Monday 9 November. "How many working days do I have from the start to the deadline?" is a NETWORKDAYS question: =NETWORKDAYS(B2,D2) returns 5, Monday to Friday 6 November.

Use the same split for status columns. A due date comes from WORKDAY. Days remaining comes from NETWORKDAYS: with Wednesday 4 November in I1, =NETWORKDAYS($I$1,D6) says 13 working days are left until the client report's deadline, counting today. Use $I$1+1 to count from tomorrow, which gives 12.

=WORKDAY(B2,C2)

Result: Nov 9, 2026

Nov 9, 2026. If you see 46335, format the cell as a date (Home > Number Format > Short Date).

The off-by-one: who counts the start day

NETWORKDAYS includes both the start and the end date. WORKDAY starts counting the day after the start. So the round trip does not match: =NETWORKDAYS(B2,WORKDAY(B2,5)) returns 6, not 5, and a 5-day job that starts on Monday looks like it ends the following Monday.

If the start day is the first day of work, step back one day before calling WORKDAY: =WORKDAY(B2-1,C2). Copywriting then finishes on Friday 6 November, and NETWORKDAYS from the start to that date returns exactly 5.

Do not use WORKDAY(B2,C2-1) for the same job. It works for a weekday start but breaks on weekends. Print proofs starts on Saturday 7 November and needs 3 days: Monday, Tuesday, Wednesday. =WORKDAY(B3-1,C3) correctly returns Wednesday 11 November, while =WORKDAY(B3,C3-1) says Tuesday 10. And =WORKDAY(B3,0) returns the Saturday itself: zero days means no move at all. To push a weekend date to the next working day, use =WORKDAY(B3-1,1), which gives Monday 9 November.

=WORKDAY(B2-1,C2)

Result: Nov 6, 2026

Nov 6, 2026: day 1 is Monday 2 November, day 5 is Friday.

Going backwards: negative days and reversed dates

WORKDAY takes negative days to count back from a date, which answers "when must this start?". The client report is due Friday 20 November; =WORKDAY(D6,-3) gives Tuesday 17 November, three working days earlier. Design review is due Monday 30 November, and counting back three working days with the holiday list skips Thanksgiving on the 26th, landing on Tuesday 24 November.

NETWORKDAYS does not need a negative argument: swap the dates and it returns a negative count. =NETWORKDAYS(D2,B2) gives -5 instead of an error. That is handy for "days overdue" columns, but it also hides typing mistakes, so check the date order when you see a minus sign.

=WORKDAY(D4,-3,$F$2:$F$4)

Result: Nov 24, 2026

Nov 24, 2026: Friday 27, Wednesday 25 and Tuesday 24 November, skipping the holiday on the 26th.

One holiday list for both

Both functions take the same optional holiday range, so keep one list of dates and lock it with $ before filling down. Holidays that fall on a weekend are simply ignored.

Design review starts Friday 20 November and needs 5 days after it. Without holidays WORKDAY says Friday 27 November; with the list it moves to Monday 30 November, because Thursday 26 November is off. NETWORKDAYS from the start to the 30 November deadline drops from 7 to 6.

Leaving the list out of one formula is a common silent error. The year-end close starts Monday 21 December and needs 8 days counting the start: =WORKDAY(B5-1,C5,$F$2:$F$4) returns Thursday 31 December, but without the list it says Wednesday 30 December. NETWORKDAYS from 21 December to the 5 January deadline is 10 with the list and 12 without.

=WORKDAY(B4,C4,$F$2:$F$4)

Result: Nov 30, 2026

Nov 30, 2026: five working days after Friday 20 November, skipping Thanksgiving.

Custom weekends: WORKDAY.INTL and NETWORKDAYS.INTL

If your team does not have Saturday and Sunday off, use the .INTL versions (Excel 2010 and later). The weekend comes before the holidays: WORKDAY.INTL(start, days, weekend, holidays) and NETWORKDAYS.INTL(start, end, weekend, holidays). Code 11 means Sunday only, 7 means Friday and Saturday, and a 7-character string like "0000110" marks days off with 1s, Monday first.

The client report needs 12 working days from Wednesday 4 November. On a Monday to Friday week that ends on Thursday 19 November. On a six-day week the formula below gives Tuesday 17 November, and =NETWORKDAYS.INTL(B6,D6,11) counts 15 working days up to the deadline instead of 13.

With a Friday and Saturday weekend (code 7 or "0000110"), the 5-day copywriting job that starts on Monday 2 November finishes on Sunday 8 November, and =NETWORKDAYS.INTL(B2,D2,7) counts only 4 working days to Friday's deadline.

=WORKDAY.INTL(B6-1,C6,11)

Result: Nov 17, 2026

Nov 17, 2026: 12 working days from 4 November, with only Sundays off.

Side by side, and which to pick

Returns: WORKDAY gives a date, NETWORKDAYS gives a number of days.

Start day: NETWORKDAYS counts the start and end date if they are working days. WORKDAY never counts the start; use WORKDAY(start-1, days) when the start is day 1.

Direction: WORKDAY goes back with negative days. NETWORKDAYS returns a negative count when the end is before the start.

Shared parts: both skip Saturday and Sunday, take the same holiday range, drop any decimal part of the days argument, and have .INTL versions for other weekends.

Verdict: pick by the answer you need. A due date, a start date or "next working day" is WORKDAY. A duration, an SLA count or "working days left" is NETWORKDAYS. When you use both in one sheet, decide once whether the start day counts, and test a row by hand against a calendar.

Common mistakes

Checking WORKDAY with NETWORKDAYS and getting one too many

NETWORKDAYS counts the start day, WORKDAY does not. NETWORKDAYS(B2,WORKDAY(B2,5)) is 6. Use WORKDAY(B2-1,5) when the start day is day 1.

Using days-1 for an inclusive end date

WORKDAY(start,days-1) is a day early when the start falls on a weekend. WORKDAY(start-1,days) works for any start.

The holiday list in one formula but not the other

Pass the same locked range, $F$2:$F$4, to every WORKDAY and NETWORKDAYS in the sheet, and keep the holidays as real dates.

Putting the weekend code in the wrong place

WORKDAY(start,days,7) treats 7 as a holiday date, not a weekend. Custom weekends need WORKDAY.INTL, where the weekend is the third argument.

FAQ

What is the difference between WORKDAY and NETWORKDAYS?

WORKDAY adds working days to a date and returns the new date. NETWORKDAYS counts the working days between two dates and returns a number. NETWORKDAYS includes the start date; WORKDAY starts counting the day after.

Does WORKDAY include the start date?

No. =WORKDAY(start,1) is the next working day. If the start date should count as day 1, use =WORKDAY(start-1,days).

How do I find the date 10 working days before a deadline?

Use a negative number of days: =WORKDAY(deadline,-10,holidays). It skips weekends and holidays going backwards.

How do I count working days left until a deadline?

Use =NETWORKDAYS(as_of,deadline,holidays). It counts the as-of day if it is a working day; use as_of+1 to count from tomorrow. Put the as-of date in one cell (or =TODAY()) and point every row at it.

What if the start date is a weekend?

NETWORKDAYS just skips it. WORKDAY counts from the next working day as usual, but WORKDAY(date,0) returns the weekend date unchanged. Use =WORKDAY(date-1,1) to move a date to the next working day.

Functions used

Related guides

Updated