WORKDAY function

Returns a date that is a specified number of working days before or after a start date, excluding weekends and optional holidays.

=WORKDAY(start_date, days, [holidays])

Generate a WORKDAY formula

Describe what you need. The generator will reach for WORKDAY where WORKDAY is the right tool, and tell you when it is not.

How to get a better answer
  • Name your columns by letter and by header: "column F (Net Value)" beats "the amount column".
  • State every condition, including the negatives — "not cancelled" changes the formula's shape.
  • Say where the data starts if it is not row 1, and whether it will grow.
  • Check the settings above match your spreadsheet: the wrong argument separator is a syntax error on your machine.

Arguments

How WORKDAY reads its arguments
start_daterequireddaysrequiredholidaysoptionalWORKDAY
ArgumentRequiredDescription
start_dateRequiredA date value marking the starting point for the calculation. Must be a valid date within Excel's supported range (1900–9999); can reference a cell or use DATE().
daysRequiredAn integer representing the number of working days to add (positive) or subtract (negative). Weekends and holidays are never counted in this total.
holidaysOptionalOptional range or array of date values to exclude from the working day count, in addition to weekends. Useful for company holidays or planned office closures.

Returns

A date value representing the calculated working day.

Availability

Excel: All · Google Sheets: Supported

Worked examples

1. Calculate refund processing date after customer churn

CustomerChurn Date
Acme Corp2025-06-30
Beta LLC2025-12-15
Gamma Inc2025-03-25
Delta Co2025-09-15
=WORKDAY(F2, 5)

Result: 2025-07-07

Starting from Acme Corp's churn date (June 30, 2025, a Monday), WORKDAY adds 5 working days and returns July 7. This skips the weekend of July 5–6, giving the finance team a clear deadline for processing refunds. The calculation only counts business days (Mon–Fri).

2. Determine revenue recognition date before customer cancellation

CustomerChurn Date
Acme Corp2025-06-30
Beta LLC2025-12-15
Gamma Inc2025-03-25
Delta Co2025-09-15
=WORKDAY(F2, -20)

Result: 2025-05-30

Using a negative days value, WORKDAY calculates backward 20 working days from Acme Corp's churn date (June 30). The result is May 30, which accounting might use as the recognition cutoff for this customer's revenue. Weekends are automatically excluded during the backward count.

3. Calculate training deadline for new customers, excluding company holidays

CustomerSignup Date
Acme Corp2025-01-15
Beta LLC2025-02-20
Gamma Inc2025-03-10
Delta Co2025-04-05
=WORKDAY(E2, 10, $H$2:$H$5)

Result: 2025-01-29

Starting from Acme Corp's signup date (January 15, 2025), WORKDAY adds 10 working days while skipping the company holiday on January 20 stored in H2:H5. The result, January 29, is the onboarding deadline. The formula automatically excludes both weekends and the specified holidays from the day count.

Common errors

Which WORKDAY error are you seeing?
WORKDAY returned an error#VALUE!
Convert the text to a proper date using DATE() or DATEVALUE(): =WORKDAY(DATEVALUE(F2), 5) or ensure the source cell is formatted as a date, not text.
#NUM!
Reduce the magnitude of the days parameter or verify that start_date falls within the range 1900–9999. For very large day values, use a smaller increment.
#VALUE!
Ensure all entries in the holidays range are valid date values. Remove text entries or empty cells, and convert any text dates using DATEVALUE() before passing to WORKDAY.
ErrorWhy it happensHow to fix it
#VALUE!The start_date argument references text or a value that Excel cannot interpret as a valid date (e.g., 'January 15' as text instead of a DATE() value).Convert the text to a proper date using DATE() or DATEVALUE(): =WORKDAY(DATEVALUE(F2), 5) or ensure the source cell is formatted as a date, not text.
#NUM!The days calculation results in a date outside Excel's valid range (before 1900 or after 9999), or start_date itself is negative or invalid.Reduce the magnitude of the days parameter or verify that start_date falls within the range 1900–9999. For very large day values, use a smaller increment.
#VALUE!The holidays parameter contains non-date values, such as text, numbers, or formula errors, mixed with actual dates.Ensure all entries in the holidays range are valid date values. Remove text entries or empty cells, and convert any text dates using DATEVALUE() before passing to WORKDAY.

Tips and when to use something else

  • WORKDAY counts only Mon–Fri as working days. Use NETWORKDAYS instead if you need to count the total elapsed working days between two dates.
  • Use negative days values to calculate backward in time: =WORKDAY(deadline, -10) finds the date 10 working days before the deadline.
  • Pass the holidays parameter as a cell range ($A$1:$A$10) or a literal array {DATE(2025,1,1); DATE(2025,12,25)} to skip company holidays along with weekends.
  • WORKDAY treats the start_date itself as day zero; the first working day after it counts as day 1 in the forward direction.

Frequently asked questions

How do I count the total working days between two dates instead of finding a future date?
Use NETWORKDAYS(start_date, end_date, holidays) instead. NETWORKDAYS returns a count of elapsed business days, while WORKDAY returns a date.
Does WORKDAY skip weekends automatically, or do I need to specify them?
WORKDAY always excludes weekends automatically; you do not need to list Saturdays and Sundays in the holidays parameter. Weekends are never counted, regardless of your days value.
What if the start_date falls on a weekend; does WORKDAY adjust it to Monday?
No. WORKDAY uses the start_date as provided and begins counting from that date. If start_date is a Saturday, the count still begins from Saturday; no automatic rollover occurs.
Can WORKDAY handle multiple holidays across different years in the same formula?
Yes. Provide all holidays as a single range or array, spanning any dates and years you need to exclude. For example, {DATE(2025,1,1); DATE(2025,12,25); DATE(2026,1,1)} covers holidays across two years.

Need a different formula?

The full generator is not scoped to one function — describe any spreadsheet problem and it will pick.

Open the formula generator

Reviewed 2026-09-17