How To

How to Count Working Days Between Two Dates

Business days exclude weekends and holidays, and the rules differ by country and contract. How to count them correctly in a spreadsheet or in seconds.

How to Count Working Days Between Two Dates

“Within 10 working days” appears in contracts, refund policies and delivery estimates constantly, and it means something quite different from ten days. Ten working days is two full weeks — fourteen calendar days, or more if a public holiday lands inside them.

Getting this wrong is how people miss deadlines they thought they had time for. Here is how to count them correctly.

“Within 10 working days” is 14 calendar days, not 10 Mon Tue Wed Thu Fri Sat Sun 5 5 A public holiday inside the span pushes it out further still weekends not counted
Any multiple of five working days maps cleanly onto whole weeks. Only the remainder needs thought.

What counts as a working day

In most of the world: Monday to Friday, excluding public holidays. But three things vary more than people expect.

The weekend is not universal

Saudi Arabia, the UAE, Egypt, Israel and several other countries use Friday–Saturday or Saturday–Sunday weekends, and some have changed within the last few years. The UAE moved to a Saturday–Sunday weekend for the public sector in 2022, with a half-day Friday — while much of the private sector kept the old pattern.

If you are counting across borders, confirm which days are non-working at the other end rather than assuming.

Public holidays are regional

A UK contract counting working days will exclude bank holidays — but England, Scotland and Northern Ireland have different ones. In the US, federal holidays are not automatically observed by private employers, so a “working day” for a bank and for a courier may differ.

Holidays also move. Many UK and US holidays shift to the following Monday when they fall at a weekend, and you must count the observed date rather than the nominal one.

Contracts sometimes define it themselves

A well-drafted agreement will state what a business day means — often “a day other than a Saturday, Sunday or public holiday in England on which banks are open for general business in London.” That definition beats any general rule.

Check before you count. It takes thirty seconds and occasionally saves a fortnight.

The quick way

Our days between dates calculator has a working-days-only option. Enter both dates, switch it on, and it excludes Saturdays and Sundays from the count.

You will still need to subtract public holidays yourself, because those depend on where you are — and any tool that guesses at them will eventually be wrong for your region.

By hand, quickly

  1. Count total calendar days between the dates.
  2. Divide by 7 and take the whole number — that is how many complete weeks the span contains.
  3. Multiply by 5. Those are the working days in the complete weeks.
  4. Count the leftover days individually, skipping any that fall on a weekend.
  5. Subtract public holidays that fall on a weekday.

Worked example. Across 30 calendar days: 4 complete weeks gives 20 working days, plus 2 leftover days. If those leftovers are a Tuesday and a Wednesday, that is 22 working days. If they happen to be a Saturday and Sunday, it stays at 20.

The reverse question — “when is 10 working days from Friday?” — is easier. Ten working days is exactly two calendar weeks, so it lands on the Friday a fortnight later. Any multiple of 5 working days maps cleanly onto whole weeks; it is only the remainder that needs thought.

In Excel and Google Sheets

=NETWORKDAYS(start_date, end_date, [holidays])

Put your public holidays in a column, then reference it with absolute cell references so it does not shift when you fill down:

=NETWORKDAYS(A2, B2, $D$2:$D$12)

Two things about this function trip people up.

It is inclusive. NETWORKDAYS counts both the start and end date if they are working days. Plain subtraction (=B1-A1) is exclusive. Mixing the two conventions in one sheet produces off-by-one errors that are genuinely hard to spot, because each individual row looks plausible.

Holidays on a weekend are ignored, correctly — they were never working days. But a holiday that moves to the Monday must be listed on its observed date, not its nominal one, or you will over-count by a day.

For non-standard weekends:

=NETWORKDAYS.INTL(A2, B2, 7, $D$2:$D$12)

The third argument is a weekend code — 1 for Saturday–Sunday, 7 for Friday–Saturday, 11 for Sunday only, 17 for Saturday only. You can also pass a seven-character string of 0s and 1s starting at Monday for complete control: "0000011" is a standard weekend.

Adding working days rather than counting them

=WORKDAY(A2, 10, $D$2:$D$12)

This returns the date 10 working days after A2. Note the asymmetry: WORKDAY counts forward from the start date without including it, while NETWORKDAYS includes it. The two functions do not mirror each other.

That inconsistency is a genuine design wart, and it is worth a comment in any sheet that uses both — the next person to open it will assume they behave the same way.

WORKDAY.INTL takes the same weekend codes as its NETWORKDAYS counterpart.

Where it matters most

  • Refunds and cooling-off periods. Consumer law often specifies working days, and missing the window by counting calendar days is a real and irreversible cost.
  • Notice periods. Employment contracts vary — some count calendar days, some working. On a month’s notice that is roughly nine days of difference.
  • Payment terms. “Net 30” is nearly always calendar days. “Within 30 working days” is six weeks. Read carefully before agreeing to either.
  • Delivery estimates. Couriers quote working days. Order Friday on a “2 working day” service and it arrives Tuesday, not Sunday.
  • Court and statutory deadlines. Almost always working days, and almost always strictly enforced.
  • SLA response times. “4-hour response” often means four working hours, which across a weekend means Monday morning.

A note on half-days and shift work

Some organisations treat Christmas Eve or New Year’s Eve as half working days. Spreadsheet functions cannot express that — they count whole days only.

The same applies to shift patterns, four-day weeks and rotating rosters. NETWORKDAYS.INTL handles a fixed non-standard weekend, but not a rota that changes week to week. For those, count the actual working days from the roster rather than trying to force a formula to model it.

Join the discussion

Held for review before it appears. Links are not allowed and your email is never published.