Days Between Dates Calculator
Pick a start and end date to get the exact days, weeks, and approximate months between them. Nothing you enter leaves your browser.
Exclusive: Jan 1 to Jan 3 = 2 days.
The end date is earlier than the start date — showing the absolute difference between the two.
Exact days, plus honest approximations
Every date is parsed as plain year/month/day and converted to a
UTC timestamp with Date.UTC before any subtraction
happens — that keeps the calculation immune to daylight saving
time shifts, which can quietly push a naive local-timezone date
subtraction a day off in some timezones around a DST boundary.
The days figure is exact. Weeks
is the day count divided by 7, floored, with the remainder
shown alongside it. Months is a genuine
estimate — calendar months range from 28 to 31 days, so we
divide by the average month length (30.44 days) and round down;
treat it as a rough secondary figure, not an exact one.
Worked example
From January 1, 2026 to March 15, 2026: that's 73 days exclusive of the end date (74 if you tick "count the end date itself"), which is 10 weeks and 3 days, or roughly 2 months (73 ÷ 30.44, rounded down).
Frequently asked questions
Does the day count include the end date?
Not by default. This calculator counts the days BETWEEN the two dates, so Jan 1 to Jan 3 comes out to 2 days — the same way you'd count nights between check-in and check-out. Tick "Count the end date itself" if you want the end date counted too, which turns that same example into 3 days. Either way, the label always tells you which convention is active.
Why are the months only approximate?
Calendar months don't all have the same length — 28 to 31 days — so there's no single exact answer for "how many months" between two arbitrary dates the way there is for days. This tool divides the day count by 30.44 (the average length of a month over a 4-year cycle) and rounds down, which is a solid estimate but genuinely approximate. For an exact answer, the day and week counts above it are exact.
What if I enter the end date before the start date?
It still works — the result is the absolute difference between the two dates either way, and a small note appears confirming the dates were taken in reverse order, so the count is never silently wrong or confusing.
Is this affected by daylight saving time?
No. Every date is converted to a UTC-anchored day count before any math happens, instead of subtracting two local-timezone date objects — the naive approach can land a day off right around a DST transition in some timezones. Anchoring to UTC sidesteps that entirely, so the count is exact regardless of which timezone your browser is in.