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:

  1. A year divisible by 4 is a leap year — 2024 qualifies, so February 29, 2024 (a Thursday) existed.
  2. 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.
  3. 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.
YearDivisible by 4?Divisible by 100?Divisible by 400?Leap year?
1900YesYesNoNo
2000YesYesYesYes
2024YesNoYes
2026NoNoNo
2100YesYesNoNo

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.

MonthDays counted
March 2024 (after the 15th)16
April 202430
May 202431
June 202430
July 202431
August 202431
September 202430
October 202431
November 202430
December 202431
2024 subtotal291
All of 2025 (not a leap year)365
January 202631
February 202628
March 202631
April 202630
May 202631
June 202630
July 202631
August 202631
September 2026 (1st through 24th)24
2026 subtotal267
Total923

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.