Skip to content
Calculator Collection

Day of the Week Calculator

Given any calendar date in YYYY-MM-DD form, return the day of the week (Monday through Sunday). Handles historical dates back to 1900 and forward through the century.

Last updated: September 2026

Compare 3 scenarios
Fill in the required fields to see your result.

Compare with similar

About this calculator

Every date maps to exactly one day of the week. Modern digital calendars compute this in microseconds using Zeller's congruence, a compact modular-arithmetic formula devised in 1882. Under the hood, this calculator uses the browser's Date object, which knows the Gregorian calendar and handles leap years, century rules (years divisible by 100 skip the leap unless also divisible by 400), and dates back to 1970 exactly.

For pre-1970 dates the same rules apply going backward, and the JavaScript Date object is accurate as far back as 1900 in practice. Julian-calendar dates (before 1582 in Catholic countries, up to 1918 in Russia) require a different rule set that this calculator does not handle.

Common uses: figuring out which day of the week your birthday falls on this year, checking whether a given deadline lands on a weekend, or verifying a historical event's date-day pair for citation.

How to use

Example — New Year's Day 2026. Enter 2026-01-01. Result: Thursday. Verify: 2026 is not a leap year, and January 1, 2026 is confirmed as a Thursday by any standard calendar. Example — a historical date. Enter 1969-07-20 (the Apollo 11 moon landing). Result: Sunday. That matches the historical record — the landing took place on Sunday, July 20, 1969, at 20:17 UTC.

Frequently asked questions

Which day is 'first' — Sunday or Monday?

This calculator names the day (Monday, Tuesday, etc.) rather than numbering it, so the ISO-vs-US disagreement does not matter. If you need a number: ISO 8601 numbers Monday = 1 through Sunday = 7; the US convention starts weeks on Sunday and numbers Sunday = 1. Both conventions agree that a date's weekday is the same day.

Does it handle leap years?

Yes. February 29 falls on a valid weekday in leap years (2024, 2028, 2032, 2036…) and is rejected in non-leap years. The Gregorian rule is: divisible by 4, except centuries, except centuries divisible by 400. 2000 was a leap year; 2100 will not be.

What about Julian calendar dates?

Dates before the switch from Julian to Gregorian (1582 in Catholic Europe, later elsewhere — 1752 in the UK, 1918 in Russia) need a different rule set. JavaScript's Date always applies Gregorian rules, so results for Julian-era dates are 'the Gregorian equivalent' of that day, which differs from the day printed on a Julian calendar of the era.

Why does the tool sometimes disagree with a printed calendar?

The most common cause is time-zone parsing: '2026-01-01' with no time zone is parsed as UTC midnight, which is late-evening 31 December in the western US. This calculator uses UTC day-of-week explicitly (getUTCDay) so results are stable regardless of the viewer's local time zone.

Related calculators

Sources & references