🔧 Operation
📅 Year
Enter any integer between -9999 and 9999. Negative values represent years BCE under the proleptic Gregorian calendar.
📅 Year Range (inclusive)
Scans every integer year in the inclusive range and lists the ones that satisfy the Gregorian leap rule.
📅 Next N Leap Years
Returns the next N leap years starting at the given year. If the start year itself is a leap year, it is included in the list.
📤 Result
{{ singleResult.isLeap ? '✅ Leap Year' : '❌ Not a Leap Year' }}
- Year
- {{ singleResult.year }}
- Is leap?
- {{ singleResult.isLeap ? 'Yes' : 'No' }}
- Reason
- {{ singleResult.reason }}
- Days in year
- {{ singleResult.isLeap ? 366 : 365 }}
📊 Range Summary
- From
- {{ rangeResult.from }}
- To
- {{ rangeResult.to }}
- Leap years found
- {{ rangeResult.count }}
Leap years
📊 Next N Leap Years
- Start year
- {{ nextResult.startYear }}
- Count requested
- {{ nextResult.count }}
Years
ℹ️ About Leap Year Checker
Leap year definition
A leap year is a calendar year that contains one extra day, February 29, so the civil calendar stays close to the seasonal year. This checker applies the modern Gregorian leap-year rule to a single year, an inclusive range, or the next N leap years from a starting year.
The Gregorian rule
The Gregorian calendar keeps the simple "every fourth year" pattern but removes most century years. A year is a leap year if and only if it passes this test:
- It is divisible by 4, and
- It is not divisible by 100, or
- It is divisible by 400.
In Boolean form: (year % 4 === 0) && (year % 100 !== 0 || year % 400 === 0).
That produces 97 leap years in every 400-year Gregorian cycle, for
an average calendar year of 365.2425 days.
Worked examples
| Year | Leap? | Why |
|---|---|---|
| 2024 | Yes | Divisible by 4 and not by 100 |
| 2023 | No | Not divisible by 4 |
| 1900 | No | Divisible by 100 but not by 400 |
| 2000 | Yes | Divisible by 400 |
| 2100 | No | Century year that is not divisible by 400 |
Common use cases
- Validate whether February 29 is a valid date for a given year.
- Check billing, payroll, subscription, and scheduling edge cases.
- Generate leap-year lists for datasets, reports, quizzes, and calendar tests.
- Compare date-library behavior when porting code across languages.
- Inspect century years such as 1900, 2000, 2100, and 2400 without mental arithmetic.
Scope and limitations
The calculator uses a proleptic Gregorian rule: the same Gregorian arithmetic is extended backward and forward for every integer year from -9999 through 9999. This is useful for software testing and ISO-style date arithmetic, but it is not a historical calendar-conversion tool. Countries adopted the Gregorian calendar on different dates, and historical BC/AD year numbering has no year 0, so map BCE dates carefully before using negative or zero years in legal, archival, or genealogy work.
Range scans are inclusive. The "next N" mode returns up to 50 leap years and includes the starting year when the starting year itself is a leap year.
References
- U.S. Naval Observatory leap-year FAQ for the Gregorian century rule and calendar-year average.
- RFC 3339 for the Internet timestamp definition of a Gregorian leap year.
- ISO 8601-1:2019 for Gregorian calendar date representations used in information interchange.
- National Research Council Canada official time for a plain-language leap-year rule summary.
API Usage Example:
POST /api/tools/time/leap-year-checker
Content-Type: application/json
{
"operation": "check",
"year": 2024
}