What is the Day of the Week Calculator?
This tool tells you which day of the week any calendar date falls on. Enter a month, day and year and it returns the weekday name plus a set of useful calendar facts: the day-number of the year, how many days are in that month and year, which ordinal occurrence of the weekday the date is (for example the "3rd Monday"), and how many times that weekday occurs in the month. It uses the proleptic Gregorian calendar, so it works for any past or future year and is valid worldwide.
How to use it
Choose the month and year, type the day, and pick the output language for the weekday name. Press calculate to see a plain-language sentence such as "June 15, 2026 is a Monday" along with a breakdown table. The day input is validated against the real length of the chosen month, so impossible dates such as February 30 are rejected.
The formula explained
The weekday is found with Zeller's congruence. January and February are treated as months 13 and 14 of the previous year. With \(K = \text{year} \bmod 100\) and \(J = \left\lfloor \text{year} / 100 \right\rfloor\), the term $$h = \left( d + \left\lfloor \frac{13(m+1)}{5} \right\rfloor + K + \left\lfloor \frac{K}{4} \right\rfloor + \left\lfloor \frac{J}{4} \right\rfloor + 5J \right) \bmod 7$$ gives a value where 0 = Saturday and 1 = Sunday. We convert that to a Sunday=0..Saturday=6 index. Leap years follow the Gregorian rule: divisible by 4, except centuries unless divisible by 400.
Worked example
For June 15, 2026: \(K = 26\), \(J = 20\), \(\left\lfloor 13 \cdot 7 / 5 \right\rfloor = 18\), so $$h = (15 + 18 + 26 + 6 + 5 + 100) \bmod 7 = 170 \bmod 7 = 2 = \text{Monday}.$$ June has 30 days, the date is day 166 of a 365-day year, it is the 3rd Monday, and June 2026 contains 5 Mondays.
FAQ
Does it work for very old dates? Mathematically yes, but before October 1582 most of Europe used the Julian calendar, so historical weekdays may differ. This tool always uses the proleptic Gregorian calendar.
Does the week start on Sunday or Monday? The weekday math is calendar-agnostic. We index Sunday as 0, but this only affects table display, not the computed result.
Why offer multiple languages? The weekday name is display-only; selecting a language simply translates the label while the underlying date math stays identical.