In Excel: use =WORKDAY(start_date, days, [holidays]) — it adds working days, skipping weekends and any holiday dates you supply.
On this page8
Syntax
Arguments
| Argument | required / optional | Description |
|---|---|---|
start_date | required | The date to count from. It is not itself counted. |
days | required | Working days to add. Negative counts backwards. |
holidays | optional | A range of dates to skip in addition to weekends. |
Related functions
Build a holiday list somewhere on the sheet — one real date per row.
Type =WORKDAY( and select the start date, then the number of working days.
Add a comma and select the holiday range, anchored with $ so it survives filling down.
Format the result as a date. Use WORKDAY.INTL if your weekend is not Saturday and Sunday.
What this does
WORKDAY returns the date a given number of working days from a start date, skipping Saturdays, Sundays and any holidays you list. It is the counterpart to NETWORKDAYS, which counts the days between two dates rather than projecting forward. The holidays argument is what makes it trustworthy in practice: without a holiday range it will happily land a deadline on Christmas Day. Its sibling WORKDAY.INTL takes a weekend-pattern argument, which matters for regions where the weekend is not Saturday and Sunday. Most people learn this as a sequence of clicks and forget it by next week; learning it as a pattern instead is what lets you apply it to the next, slightly different version of the problem without starting from scratch. That is the difference this page is trying to make. The difference between a quick fix and a sheet you can trust is the extra minute you spend validating “excel add business days”. Start on a copy or a tiny sample, keep the affected cells visible, and compare the result with the outcome you expected before you touch the real workbook. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. The point is a layout choice that keeps the sheet readable and sortable, but the practical win is that someone else can open the file and understand what happened without asking you.
A worked example
A ten-working-day SLA from a ticket date, with public holidays listed in H2:H20: =WORKDAY(A2, 10, $H$2:$H$20). Counting backwards to find when work must start: =WORKDAY(deadline, -5, $H$2:$H$20). A Friday-Saturday weekend: =WORKDAY.INTL(A2, 10, 7, $H$2:$H$20). WORKDAY turns an SLA or lead time into a real calendar date, which is the number a customer actually gets told. Check the referenced cells, argument order and result type in your workbook. Start with the worked example before changing an input, then compare the changed result with the calculation you expected. An error value or a result of a different type is a reason to inspect the inputs and arguments.
In Google Sheets
Google Sheets support for this task has not been verified. Check the function, arguments and workflow in the target product before transferring the example. Matching formula notation does not establish identical behaviour. Keep this page bookmarked for the next time the same question comes up. Better still, repeat the steps once in your own workbook — doing it yourself is what turns a copied answer into something you remember. For “excel add business days”, keep the input cells and the result visible while you check the formula in Excel. Follow the worked example and change one input at a time. The steps explain the workbook calculation; this page does not run a live calculator for that task.
Common mistakes
- Omitting the holidays range, which lets a deadline land on a public holiday.
- Forgetting to anchor the holiday range before filling down, so later rows check a shrinking list.
- Expecting the start date to count as day one; it does not — counting begins the following working day.
Frequently asked questions
How do I add 10 business days to a date?
=WORKDAY(A2, 10, holidays). Weekends are skipped automatically; the holiday range handles the rest.
What if my weekend is not Saturday and Sunday?
Use WORKDAY.INTL, whose third argument selects the weekend pattern.
Does the start date count as a working day?
No. Counting starts from the next working day after it.