Days Between Two Dates Calculator
Calculate exact days, weeks, months, and years between any two dates. Optionally exclude weekends to get business days.
What this calculates
Calculating the gap between two dates sounds simple but trips many people up because of leap years and varying month lengths. This calculator gives you the exact difference in days, weeks, months, and years between any two dates, with an optional 'business days only' mode that skips weekends.
Formula & how it works
Total days = (later − earlier) ÷ 86 400 000 milliseconds, rounded. Weeks = days ÷ 7. Months use calendar math: years × 12 + month delta, with the day-of-month difference rolling over if needed. Business days = total weekdays in the range — for an N-day range, that's approximately N × 5/7, with exact accounting for the start and end weekdays.
Worked example
From 2026-01-01 to 2026-12-31: 364 days, 52 weeks, 11 months 30 days. Excluding weekends: about 260 business days (~5/7 × 364). From 2024-02-15 to 2024-03-15: exactly 29 days (February has 29 in 2024, a leap year) — the same dates a year later would only be 28 days apart.
Frequently asked questions
Should the start and end days be inclusive?
Convention varies. 'Days between' usually means the gap (exclusive), so Jan 1 to Jan 2 is 1 day. 'Days from X to Y inclusive' would be 2. This calculator uses the gap convention; add 1 if you need both endpoints counted.
Are leap years handled?
Yes. Native date arithmetic respects the full Gregorian rules (every 4 years except century years not divisible by 400). 2024 was a leap year; 2100 will not be.
What counts as a 'business day'?
Saturday and Sunday are excluded. Public holidays are not, since they vary by country. If you need a strict working-days count for a contract, manually subtract relevant holidays.
Why does adding months sometimes give odd results?
Months have different lengths. 'One month after Jan 31' has no perfect answer — calculators typically return Feb 28 (or 29 in leap years), then Mar 31 if you add another month. This is consistent but feels weird around month-ends.