How many days are there between June 15, 2023 and today? How many weeks until a wedding? How long has it been since you started a project? Counting the gap between two dates by hand is a trap: 30-day months, leap years, and year boundaries all conspire to make mental math wrong. Smekys' date difference calculator does the arithmetic for you in an instant, counting the exact whole days between any two calendar dates you pick — and converting that span into weeks, approximate months, and approximate years.
Pick a start date and an end date, and the result updates immediately. It does not matter which order you enter them: the gap is always shown as a positive number. This is a pure gap tool for two arbitrary dates — it is not an age calculator that subtracts a birth year from today.
How to Use
- Enter the Start Year, Start Month, and Start Day — the earlier of your two dates. Months are 1 through 12, where 1 is January and 12 is December.
- Enter the End Year, End Month, and End Day — the later date. You can still enter it first; the calculator takes the absolute difference.
- Read the result card. Total Days is the headline number: the exact number of 24-hour periods between the two dates, counting the end date but not double-counting the start.
- Use Total Weeks to express the same span in weeks (with a decimal for the leftover days).
- Use Approx. Months and Approx. Years for a rounded, human-friendly sense of scale.
The engine builds a real calendar date for each side — it checks that February actually has the day you typed, and it knows which years are leap years — so the count is correct even across century boundaries. If you type a year below 1, a month outside 1–12, or a day that does not exist (such as April 31 or February 29 in a non-leap year), the calculator shows an error instead of a wrong number.
How the Days Are Counted
The gap between two calendar dates is simply the difference between each date's ordinal position in the proleptic Gregorian calendar. Leap years — years divisible by 4, except century years not divisible by 400 — add one day to February, and the engine accounts for that automatically:
- Total days = |end date ordinal − start date ordinal|.
- Weeks = total days ÷ 7.
- Approximate months = total days ÷ 30.4375, the average Gregorian month length (365.25 ÷ 12).
- Approximate years = total days ÷ 365.25.
The underlying whole-day count uses the same Gregorian leap-aware algorithm as the open-source python-dateutil library (Apache 2.0 / BSD license). Because months and years have unequal lengths, the months and years figures are simple averages (÷30.4375 and ÷365.25), not an exact year/month/day decomposition — treat them as approximations. The exact, defensible number is always the day count.
One common confusion: the day count is inclusive on one side only. The span from January 1 to January 2 is 1 day, not 2. If you need the inclusive count (for example, the number of nights in a hotel stay), add 1 to the result.
Examples
Example 1 — A full leap year. Start date January 1, 2024 and end date January 1, 2025. Because 2024 is a leap year (divisible by 4 and not a century year), the gap is exactly 366 days, or 52.29 weeks, about 12.02 months, and roughly 1.002 years. Notice that a common (non-leap) year gives 365 days — about 0.3% fewer — which is exactly why hand-counting so often slips by one day.
Example 2 — A short, ordinary week. From March 1, 2024 to March 8, 2024 the gap is 7 days, i.e. exactly 1.0 week, or about 0.23 months. Roughly 1.9% of a full year fits in those seven days.
Example 3 — The default five-year span. January 1, 2020 to December 31, 2024 covers 1,826 days, or 260.86 weeks, about 59.99 months, and almost exactly 5 years — the tiny surplus comes from leap days in 2020 and 2024. If you are budgeting, that 1,826-day window is about 71% of a standard five-year lease term; use it to check how much of a long contract you have already consumed.
Example 4 — Same-day check. Entering the identical date on both sides returns 0 days, which is the expected behavior: there is no elapsed time between a date and itself.
FAQ
How many days are between two dates?
Subtract the earlier date's calendar ordinal from the later date's. For example, January 1, 2024 to December 31, 2024 is 365 days; January 1, 2024 to January 1, 2025 is 366 days because 2024 is a leap year. Enter both dates above and the exact count appears instantly.
Does the calculator count both the start and end days?
No. The gap from January 1 to January 2 is 1 day. If you need an inclusive count (such as hotel nights or a multi-day event), add 1 to the total-days figure.
How does it handle leap years?
It uses the Gregorian rule: a year is a leap year if it is divisible by 4, except century years, which must also be divisible by 400. So 2000 and 2400 are leap years, but 1900 and 2100 are not. The engine builds real calendar dates, so February 29 is accepted only in valid leap years.
Why are the months and years approximate?
Months last 28 to 31 days and years last 365 or 366 days, so there is no exact conversion from days to months. The calculator uses the averages 30.4375 days per month and 365.25 days per year, matching the convention in the open-source python-dateutil library. The day count itself is always exact.
What if I enter the end date before the start date?
The calculator takes the absolute difference, so the result is always a positive, sensible number regardless of the order you enter the two dates.
What inputs cause an error?
Years below 1, months outside 1–12, and impossible days such as April 31 or February 29 in a non-leap year are rejected with a clear message rather than silently producing a wrong span.
Can I compare dates far in the past or future?
The same ordinal arithmetic works for any year under the proleptic Gregorian calendar, including years far beyond the standard 9999 limit of typical system libraries, because the engine computes the day gap arithmetically rather than relying on a bounded date object.
Disclaimer
This date difference calculator is provided for informational purposes only and does not constitute legal, financial, payroll, or scheduling advice. Day counts are based on the proleptic Gregorian calendar and standard leap-year rules; holiday calendars, business-day conventions, time zones, and daylight-saving transitions are not factored in. Always confirm critical deadlines, contract dates, and employment figures with official records.