WEEKDAY function
WEEKDAY returns a date's day of the week as a number. By default Sunday is 1 and Saturday 7; =WEEKDAY(A2,2) counts from Monday as 1 to Sunday as 7, which makes weekends easy to test for.
Available in every version of Excel, Excel for the web and Google Sheets; return types 11 to 17 need Excel 2010 or laterKey takeaways
- =WEEKDAY(A2) is 1 for Sunday up to 7 for Saturday.
- =WEEKDAY(A2,2) is 1 for Monday up to 7 for Sunday, so WEEKDAY(A2,2)>5 means a weekend.
- For the name of the day rather than its number, use TEXT(A2,"dddd").
- In the 1900 date system, Excel's default, dates before 1 March 1900 give the wrong weekday, because Excel counts a 29 February 1900 that never existed.
On this page
WEEKDAY syntax
=WEEKDAY(serial_number, [return_type])| Argument | Required | What it means |
|---|---|---|
serial_number | Yes | The date: a cell holding a date, or a formula that returns one. |
return_type | No | Which day counts as 1. Left out, or 1: Sunday to Saturday. 2: Monday to Sunday. 3: Monday as 0 to Sunday as 6. Codes 11 to 17 start the week on each day from Monday to Sunday. |
Examples
The default: Sunday is 1
15 January 2026 is a Thursday. With no return_type the week starts on Sunday, so Thursday is day 5.
| Row | A | B |
|---|---|---|
| 1 | Date | Day number |
| 2 | 15 Jan 2026 | 5 |
=WEEKDAY(A2) → 5Monday as day 1
Return type 2 starts the week on Monday, so the same Thursday is day 4.
| Row | A | B |
|---|---|---|
| 1 | Date | Day number |
| 2 | 15 Jan 2026 | 4 |
=WEEKDAY(A2,2) → 4Flag the weekends
With return type 2, Saturday is 6 and Sunday 7, so anything above 5 is a weekend. 17 January 2026 is a Saturday.
| Row | A | B |
|---|---|---|
| 1 | Date | Type |
| 2 | 17 Jan 2026 | Weekend |
=IF(WEEKDAY(A2,2)>5,"Weekend","Weekday") → WeekendThe Monday of a date's week
Return type 3 counts Monday as 0, so subtracting it from a date always lands on the Monday of that week.
| Row | A | B |
|---|---|---|
| 1 | Date | Week starts |
| 2 | 15 Jan 2026 | 12 Jan 2026 |
=A2-WEEKDAY(A2,3) → 12 Jan 2026Practise it
New data, so you can't copy the answer above. We check the number your formula returns, then change the data to make sure it still holds.
Your task: In C2, work out the pay for the shift: the hours in B2 times the rate in E2, at time and a half (1.5 times) when the date in A2 is a Saturday or a Sunday.
Graded live| Row | A | B | C | D | E |
|---|---|---|---|---|---|
| 1 | Shift date | Hours | Pay | Hourly rate | |
| 2 | 14 Mar 2026 | 8 | $20.00 |
Write the formula in the bar above, then press Check or Enter.
Hint
WEEKDAY(A2,2) is 6 on a Saturday and 7 on a Sunday. Multiply B2*E2 by IF(WEEKDAY(A2,2)>5,1.5,1).
Solution
=B2*E2*IF(WEEKDAY(A2,2)>5,1.5,1) Any formula that returns the same result passes.
Common mistakes
- Forgetting the return type. Without one, Sunday is 1 and Saturday 7, so a test such as WEEKDAY(A2)>5 picks Friday and Saturday. Use WEEKDAY(A2,2)>5 for the weekend.
- Expecting a name. WEEKDAY returns a number. For Monday or Mon, use TEXT(A2,"dddd") or TEXT(A2,"ddd").
- A return type that doesn't exist. Only 1, 2, 3 and 11 to 17 are allowed; any other gives #NUM!.
Return types
| return_type | The week runs |
|---|---|
| 1, or left out | Sunday (1) to Saturday (7) |
| 2 | Monday (1) to Sunday (7) |
| 3 | Monday (0) to Sunday (6) |
| 11 | Monday (1) to Sunday (7) |
| 12 to 17 | Day 1 is Tuesday (12), Wednesday (13) and so on to Sunday (17); day 7 is the day before it |
Types 2 and 11 give the same numbers. For a weekend test, return type 2 is the one to remember: Saturday is 6 and Sunday 7.
FAQ
How do I get the day's name instead of a number?
Use TEXT: =TEXT(A2,"dddd") gives Monday, and =TEXT(A2,"ddd") gives Mon.
How do I check whether a date falls on a weekend?
=WEEKDAY(A2,2)>5 is TRUE on a Saturday or Sunday. Wrap it in IF for a label: =IF(WEEKDAY(A2,2)>5,"Weekend","Weekday").
Why is WEEKDAY wrong for dates early in 1900?
Excel counts a 29 February 1900 that never existed, to stay compatible with Lotus 1-2-3, so its weekdays before 1 March 1900 are one day out: Excel calls 1 January 1900 a Sunday, but it was a Monday. Microsoft notes WEEKDAY is wrong for those dates.
Know WEEKDAY? Prove it on a real sheet.
Practise WEEKDAY and the functions around it in a live grid that grades your result and explains your mistakes.
Runs in your browser · Graded on your result · No install