Leap Year Checker
Check if any year is a leap year, see the next and previous leap years, and browse leap years across any range.
Check a Year
The Rule
Leap Years in Range
| Year | Feb 29 falls on | Days in year |
|---|
The leap year checker tells you whether any year - past, present, or future - has 366 days instead of 365. Enter a year to see the verdict, the rule that applies, the days in February for that year, and the previous and next leap years. The range browser lists every leap year between any two dates and shows the weekday of February 29 for each one.
The Leap Year Rule
A year is a leap year if it is divisible by 4, except for century years (those ending in 00) which must also be divisible by 400. Stated as three steps:
- Divisible by 4? If not, it is not a leap year (most years end here).
- Divisible by 100? If yes, continue to the next check. If no, it is a leap year.
- Divisible by 400? If yes, it is a leap year. If no, it is not.
The result: 2000 was a leap year (divisible by 400), 1900 was not (divisible by 100 but not 400), 2024 was (divisible by 4 but not 100), and 2100 will not be (divisible by 100 but not 400). The checker shows which branch your input year took so you can see why the answer is what it is.
Why Leap Years Exist
The Earth orbits the Sun in approximately 365.2422 days, not exactly 365. Without leap years the calendar would drift against the seasons by about one day every four years, putting spring in February within a few centuries. The Julian calendar (introduced 45 BC) added a leap day every four years to fix this. The fix overcorrected slightly, so the Gregorian calendar (introduced in 1582) added the century exception: skip the leap year in years divisible by 100 unless they are also divisible by 400. This brings the average year length to 365.2425 days, accurate enough that the calendar drifts by only one day every 3,030 years.
When You Need to Know
Leap years come up in code, contracts, and planning more often than people expect:
- Software date arithmetic: any code that adds or subtracts years must handle February 29. "One year after February 29, 2024" is February 28, 2025 - if your code returns "February 29, 2025" it is broken.
- Test scheduling: automated tests that hardcode dates need a leap-year branch for any test that touches February. Running on March 1 in a leap year vs a non-leap year gives different day-of-year numbers.
- Subscription billing: annual subscriptions started on February 29 need a documented renewal policy (most providers use February 28 in non-leap years).
- Sports and event calendars: the Olympics and U.S. presidential elections both land on leap years by design. Knowing the next several leap years helps planning years out.
- Personal milestones: people born on February 29 ("leaplings") only have a real birthday every four years, which makes leap years a recurring topic of conversation.
To calculate a future date exactly given a starting date and a duration, use the date add/subtract calculator. For the precise gap between two dates, the date difference calculator handles leap-year math automatically. To explore other quirks of the calendar like ISO week numbers, the week numbers tool shows the full week structure for any year.
Browsing Leap Years in a Range
The range browser at the bottom of the tool lists every leap year between two years you choose. Each entry shows the year and the weekday of February 29 for that year. This is useful for planning, for historical research, and for verifying that a piece of code matches expected output. The leap year sequence inside a typical century is: every 4 years starting from a multiple of 4, with exactly 24 or 25 leap years per century (24 when the century year itself is not divisible by 400, 25 when it is).
For example, the 21st century contains 25 leap years because 2000 was divisible by 400. The 22nd century will contain only 24 because 2100 is divisible by 100 but not by 400. The range view makes these patterns visible at a glance without manually counting.
Frequently Asked Questions
A year is a leap year if it is divisible by 4, with one exception: years ending in 00 must also be divisible by 400. So 2024 is a leap year, 2000 was a leap year, but 1900 and 2100 are not. This is the Gregorian calendar rule used by every modern country and computer system.
Because of the century exception: years divisible by 100 are not leap years unless they are also divisible by 400. 1900 is divisible by 100 but not by 400, so it is skipped. 2000 is divisible by both 100 and 400, so it counted. The rule exists because adding a leap day every four years overcorrects slightly for the Earth's actual orbital period.
Enter the current year into the checker above and the result card shows the next leap year automatically. As of 2026, the next leap year is 2028. The sequence continues every four years: 2028, 2032, 2036, 2040, 2044, 2048, 2052, 2056, 2060, 2064, 2068, 2072, 2076, 2080, 2084, 2088, 2092, 2096. The next one after that is 2104 because 2100 is skipped.
A leap year has 366 days. The extra day, February 29, is inserted at the end of February. A normal year has 365 days. The checker shows the days-in-year value alongside the verdict so you can copy it into a script or a form without manual conversion.
People born on February 29 (sometimes called leaplings) celebrate their birthday on February 28 or March 1 in non-leap years, depending on personal preference. Legally, most jurisdictions treat them as turning a year older on either February 28 or March 1. Their actual birth-date anniversary only occurs every four years. The age calculator handles this case by reporting the exact age in days, weeks, and months.
Yes. 2000 is divisible by 400, which means it satisfies the leap year rule even though it is also divisible by 100. This makes 2000 the most recent century-year leap year. The previous one was 1600, and the next will be 2400. Century leap years are rare enough that most people never see one twice in their lifetime.
Most centuries have 24 leap years, but every fourth century has 25. The 21st century (2001-2100) has 25 leap years because 2000 was divisible by 400. The 22nd century (2101-2200) will have only 24 because 2100 is skipped. Over 400 years there are exactly 97 leap years, giving the Gregorian calendar an average length of 365.2425 days per year.
The standard one-line formula is: (year % 4 == 0 AND year % 100 != 0) OR year % 400 == 0. This evaluates to true for leap years and false for non-leap years. Most languages also have a built-in helper: Python has calendar.isleap(), JavaScript libraries like date-fns expose isLeapYear(), and PostgreSQL has the date_part('isodow') function for related calendar queries.
No, the rule on this page applies only to the Gregorian calendar (used internationally for civil dates). The Julian calendar, still used by some Orthodox churches, has a simpler rule (every 4 years, no exceptions). The Hebrew, Islamic, and Chinese calendars use entirely different rules - some add a whole leap month rather than a single day. For Gregorian dates, which all modern software uses, the rule on this page is correct.
The Gregorian average year (365.2425 days) is still slightly longer than the actual solar year (365.2422 days). The difference is 0.0003 days per year, which accumulates to one day every 3,030 years. There is no plan to add another correction because the drift is small enough to be ignored over any practical human timescale. By the time it matters, calendar reform will be a future generation's problem.