Why Counting Days Between Dates Is Harder Than It Looks
September 24, 2026 · 7 min read
How many days separate two dates? It sounds like a subtraction problem a second-grader could solve — until you try it by hand. Months refuse to have the same length, February changes size from year to year, and the calendar itself was once repaired by deleting ten days wholesale. This article unpacks the math: the leap-year rule, a worked example you can verify line by line, and the trick connecting day counts to weekdays. When you would rather skip the arithmetic, our Day Counter does it instantly.
The Calendar Refuses to Cooperate
The root of the problem is that the calendar is not a decimal system. A year holds 365 days — most of the time — chopped into twelve uneven pieces: seven months of 31 days, four of 30, and February with 28. That is 7 × 31 + 4 × 30 + 28 = 365, but it means there is no shortcut like "three months equals 90 days." January 1 to April 1 is 90 days; June 1 to September 1 is 92. Any honest day count walks the calendar month by month — or uses a tool that does.
The Leap-Year Rule, Explained
February is the wildcard. A leap year tacks a 29th day onto it, and the rule for which years qualify has three layers:
- A year divisible by 4 is a leap year — 2024 qualifies, so February 29, 2024 (a Thursday) existed.
- Exception: century years are not leap years, even though they divide by 4. That is why 1900 had no leap day, and 2100 will not either.
- Exception to the exception: century years divisible by 400 are leap years after all. That is why 2000 did have a February 29, and 2400 will too.
| Year | Divisible by 4? | Divisible by 100? | Divisible by 400? | Leap year? |
|---|---|---|---|---|
| 1900 | Yes | Yes | No | No |
| 2000 | Yes | Yes | Yes | Yes |
| 2024 | Yes | No | — | Yes |
| 2026 | No | No | — | No |
| 2100 | Yes | Yes | No | No |
The three layers keep the calendar glued to the seasons. A solar year is about 365.2422 days, not exactly 365.25, so leaping every four years without exception would overshoot. The full rule yields exactly 97 leap days per 400-year cycle: (400 × 365 + 97) ÷ 400 = 146,097 ÷ 400 = 365.2425 days on average — drifting only about one day in 3,000-plus years.
Worked Example: March 15, 2024 to September 24, 2026
Here is a real count, done the way a careful person would do it on paper. We use the standard convention: count the end date but not the start date, the same "difference" you get from date subtraction. March 2024 therefore contributes the days remaining after the 15th: 31 − 15 = 16 days.
| Month | Days counted |
|---|---|
| March 2024 (after the 15th) | 16 |
| April 2024 | 30 |
| May 2024 | 31 |
| June 2024 | 30 |
| July 2024 | 31 |
| August 2024 | 31 |
| September 2024 | 30 |
| October 2024 | 31 |
| November 2024 | 30 |
| December 2024 | 31 |
| 2024 subtotal | 291 |
| All of 2025 (not a leap year) | 365 |
| January 2026 | 31 |
| February 2026 | 28 |
| March 2026 | 31 |
| April 2026 | 30 |
| May 2026 | 31 |
| June 2026 | 30 |
| July 2026 | 31 |
| August 2026 | 31 |
| September 2026 (1st through 24th) | 24 |
| 2026 subtotal | 267 |
| Total | 923 |
Adding the pieces: 291 + 365 + 267 = 923 days. Notice the trap: this span touches leap year 2024, yet it contains no February 29 at all — the leap day (Thursday, February 29, 2024) fell 15 days before the start date, and the next one is not until 2028. Counting leap years is not the same as counting leap days.
Two sanity checks confirm it. First, 923 ÷ 7 = 131 weeks remainder 6: March 15, 2024 was a Friday, so the end date should fall six weekdays later — Thursday — and September 24, 2026 is indeed a Thursday. Second, the Day Counter reports the same 923 days as 2 years, 6 months, and 9 days, matching what the Age Calculator gives for someone born on the start date. To go the other way — "what date is 923 days after March 15, 2024?" — the Date Calculator lands back on September 24, 2026.
The Day-of-Week Connection
The weekday check above works because of a simple modular fact: 365 = 52 × 7 + 1. A common year is 52 weeks plus one spare day, so any fixed date — your birthday, say — advances by one weekday per year. A leap year has 366 = 52 × 7 + 2 days, so a span that includes February 29 pushes the date forward two weekdays instead. You can watch it happen with real dates:
- March 15, 2024 was a Friday; March 15, 2025 was a Saturday (+1). The 12-month span held 365 days because February 29, 2024 fell before March 15.
- March 15, 2025 (Saturday) to March 15, 2026 (Sunday): +1 again, another 365-day span.
- January 1, 2024 was a Monday, but January 1, 2025 was a Wednesday (+2). That 366-day span did contain February 29, 2024.
Same rule, opposite outcomes — all that matters is whether the leap day sits inside your interval. For the weekday of any date outright, the Day of Week Calculator applies this arithmetic for you.
The 1582 Fix: Ten Days That Never Existed
Date math gets stranger the further back you go. Before 1582, Europe used the Julian calendar, which leaps every four years with no century exceptions — an average year of exactly 365.25 days. Against the solar year of about 365.2422, that overshoots by 0.0078 days annually, roughly one extra day every 128 years. Over the 1,257 years from the Council of Nicaea in 325 to 1582, the calendar drifted about 9.8 days out of step with the equinoxes.
Pope Gregory XIII's reform fixed the drift in two moves: it introduced the century/400-year leap rule described above, and it deleted the accumulated error in one stroke. In the adopting countries, Thursday, October 4, 1582 was followed directly by Friday, October 15, 1582 — the dates October 5 through 14 simply do not exist in their records. Any day count crossing the reform boundary is off by ten unless it knows which calendar each endpoint belongs to, one more reason "just subtract the dates" is riskier than it looks.
Frequently Asked Questions
How do you know whether a year is a leap year?
A year is a leap year if it is divisible by 4, except for century years, which must be divisible by 400. So 2024 and 2000 were leap years, but 1900 was not, and 2100 will not be either.
How many days are there between March 15, 2024 and September 24, 2026?
Using the standard convention (count the end date, not the start date), there are 923 days — 131 weeks and 6 days. If you count both endpoints inclusively, the figure is 924 days.
Was the year 2000 a leap year?
Yes. Century years are normally skipped, but 2000 is divisible by 400, so the exception to the exception applied and February 29, 2000 existed. The year 1900 failed that test and had no leap day.
Why does a date move forward one weekday each year?
A common year has 365 days, which is 52 weeks plus 1 extra day, so the same calendar date lands one weekday later the next year. When a February 29 falls inside the 12-month span, the shift is two weekdays instead.
What happened to the calendar in October 1582?
Pope Gregory XIII's reform deleted 10 days to correct drift in the Julian calendar: Thursday, October 4, 1582 was immediately followed by Friday, October 15, 1582 in the countries that adopted the new Gregorian system.
Does every interval inside a leap year include February 29?
No. A leap day counts only if the interval actually spans February 29. March 15, 2024 to September 24, 2026 crosses part of leap year 2024, but the leap day fell before the start date, so the span contains no February 29 at all.