A year is a leap year if it divides evenly by 4, unless it also divides evenly by 100 — in which case it is a leap year only if it also divides evenly by 400. So 2024 is a leap year (2024 ÷ 4 = 506, not a century), 1900 was not (divisible by 100 but 1900 ÷ 400 = 4.75), and 2000 was (2000 ÷ 400 = 5 exactly).
What is the worked check for the year 2100?
Take the year 2100. First check divisibility by 4: 2100 ÷ 4 = 525, an integer, so the simple rule alone would call it a leap year. But 2100 is also a century year, so check divisibility by 100: 2100 ÷ 100 = 21, also an integer, which triggers the exception. The exception is lifted only if the year divides evenly by 400: 2100 ÷ 400 = 5.25, not an integer, so the exception stands and 2100 is a common (non-leap) year. Compare the year 2000 through the same three checks: 2000 ÷ 4 = 500 (integer), 2000 ÷ 100 = 20 (integer, so check the exception), 2000 ÷ 400 = 5 (integer, so the exception is lifted) — 2000 is a leap year.
How do I apply the leap-year rule myself?
Apply the checks in order and stop as soon as one settles the answer: not divisible by 4 → common year. Divisible by 4 but not by 100 → leap year. Divisible by 100 but not by 400 → common year. Divisible by 400 → leap year. Only century years (2000, 2100, 2200 …) ever reach the third or fourth check; every other year is decided by the first two. The date difference calculator and age calculator apply this exact rule internally so a February day count never silently drops or gains a day.
How do I check a leap-year answer?
A reverse check: over any complete 400-year block, the simple “divisible by 4” rule alone would count 100 leap years, but the century exception removes 3 of them (the 3 century years not divisible by 400), leaving exactly 97. That is not a coincidence — the Gregorian calendar was designed so that 97 leap days across 400 years gives an average year length of 365 + 97⁄400 = 365.2425 days, matching the 400-year cycle it was built to track. Counting directly confirms it: of the 21 years from 1901 to 2100 divisible by 100, only one (2000) is also divisible by 400, and the full range 1901–2100 contains exactly 49 leap years, not the 50 that dividing 200 years by 4 would suggest.
What mistakes produce a wrong leap-year answer?
The most common mistake is applying only “divisible by 4” and calling every century year a leap year — 1900, 2100, 2200, 2300, and 2500 are not leap years even though each divides evenly by 4. The opposite mistake, assuming no century year is ever a leap year, is just as wrong: 1600, 2000, and 2400 are leap years. A third mistake shows up in day-count arithmetic rather than the yes/no question itself: treating February as always 28 days in a spreadsheet or manual date calculation silently drops a day in any leap year, and treating it as always 29 days adds a day that was never there in a common year. A fourth, specific to software, is implementing only the first two checks (divisible by 4, then by 100) and stopping there without the third check for 400 — that partial implementation gets every ordinary year right and only fails on the rare century years, which makes the bug easy to miss in testing until an affected century year is actually reached.
What does this rule not cover?
This rule describes the proleptic Gregorian calendar used for civil dates today. It does not apply to the Julian calendar, which used a plain “divisible by 4” rule with no century exception and is roughly 13 days behind the Gregorian calendar for current dates; countries adopted the Gregorian calendar at different times between 1582 and the early 20th century, so a historical date recorded before a given country’s adoption year may need the Julian rule instead. It also does not apply to non-Gregorian systems such as the Hebrew, Islamic, or Chinese calendars, which insert leap months or days on entirely different cycles.
Source for the external fact
The U.S. Naval Observatory states the Gregorian leap-year rule directly: years evenly divisible by 4 are leap years, except centurial years that are not evenly divisible by 400, in its Leap Years FAQ.
A reference table across common and century years
Running each year through the same three checks produces every row below.
| Year | ÷4 | ÷100 | ÷400 | Leap year? |
|---|---|---|---|---|
| 1896 | yes | no | — | Yes |
| 1900 | yes | yes | no | No |
| 1996 | yes | no | — | Yes |
| 2000 | yes | yes | yes | Yes |
| 2023 | no | — | — | No |
| 2024 | yes | no | — | Yes |
| 2026 | no | — | — | No |
| 2100 | yes | yes | no | No |
| 2400 | yes | yes | yes | Yes |
Why a century-spanning day count needs the exact rule, not the shortcut
A calculation spanning 28 February to 1 March behaves differently depending on which century it falls in, and the difference is exactly one day. In 1900, a common year, 28 February is immediately followed by 1 March, so the gap between the two dates is 1 day. In 2000, a leap year, 29 February sits between them, so the identical-looking date range — 28 February to 1 March — spans 2 days instead. A script or spreadsheet that assumes “divisible by 4” without the century exception would wrongly insert a 29 February into 1900 and report a 2-day gap where the true answer is 1 day.
The 1582 Gregorian reform, in one sentence
Pope Gregory XIII introduced the current calendar in October 1582 specifically to fix the Julian calendar’s plain divisible-by-4 rule, which overcounted leap days against the roughly 365.2422-day tropical year by about 3 days every 400 years; dropping 3 leap days per 400-year cycle — the century exception described above — brought the calendar’s average year length to 365.2425 days, close enough that the Gregorian calendar will not need a further one-day correction for several thousand years.
The leap-day birthday, and why this guide does not answer it
Someone born on 29 February 2000 has an actual birth-date anniversary only in a leap year — the next ones are 2004, 2008, 2012, and so on. In a common year such as 2026, no 29 February exists on the calendar at all, so there is no date-arithmetic answer to “which day is their birthday this year”; different institutions (schools, insurers, some legal jurisdictions) resolve it by convention as either 28 February or 1 March, and those conventions vary and are outside what a leap-year calendar rule alone can settle. The exact-age guide covers how an age calculator commonly handles that specific case.
A real software bug caused by skipping the century exception
Software written to save storage space by tracking only the last two digits of a year (the root cause of the separate “Y2K” date-rollover problem) sometimes paired that shortcut with an incomplete leap-year check that tested only “divisible by 4,” without the century exception described in this guide. Because 2000 happens to be one of the rare century years that actually is a leap year (2000 ÷ 400 = 5 exactly), a program using the incomplete rule would coincidentally get 2000 right while still being wrong in principle — the same incomplete rule would have silently mishandled 29 February in 1900, and will mishandle it again at 2100, since both are century years excluded from the leap-year exception. The lesson is that “divisible by 4” alone can pass every test run against the current century and still be an incorrect implementation of the actual rule.
Related calculators
Count the exact days between two dates with the date difference calculator, add a fixed number of days across a leap-year boundary with the add-days calculator, and see how the same rule affects a birthday count in the exact-age guide.