Date Difference Calculator
Just pick two dates. See how many days apart — and how many years and months — instantly.
Select both dates.
Measuring the exact gap between two calendar dates
Two dates are easy to look at side by side, but turning that gap into a single, defensible number — the kind you'd put in a contract, a medical chart, or a court filing — is where people trip up. A notice period, a warranty window, a visa's permitted stay, or a child's exact age in days all hinge on how the boundary days are counted, not just on which calendar month happens to be bigger. This calculator answers the question underneath all of those situations: given a start date and an end date, how many days, weeks, months and years sit between them, counted the way you need them counted.
It matters most whenever a date span is compared against a threshold: a 90-day return window, a 14-day cooling-off period, a 180-day residency test, a 1000-day milestone. Each is only correct if the two boundaries are counted consistently — off-by-one differences are rarely dramatic on their own, but they turn into real disputes once a deadline is on the line.
Reading the two date fields
- Start date / End date — the two boundaries of the span. The ⇄ button swaps them if they were entered backwards, since the tool always reports a positive span rather than a signed one.
- From today / Until today presets — snap one field to the current date, useful for tenure, countdown, or "days since" questions.
- Include both days — whether the start date counts as day one (inclusive) or is only the zero point the count begins from (exclusive). This single checkbox is behind almost every "why is your number one day off from mine" disagreement.
How the total day count is worked out
Both dates are converted to a single day number, and the exclusive count is simply: total days = end day number − start day number — the interval between the two dates, the way a stopwatch measures elapsed time rather than counting ticks. Checking "Include both days" adds 1, shifting from "how large is the gap" to "how many calendar days does this span touch, start and end included."
How the years-months-weeks breakdown is walked
A raw day count is exact but hard to read once it passes a few hundred, so the tool also produces a years/months/days breakdown by walking the real calendar instead of dividing by flat constants like 365 or 30. It adds whole years to the start date, then whole months — clamping to the last valid day when a shorter month is hit, so January 31 plus one month lands on February 28 or 29 — and whatever remains becomes the leftover days. The same total is re-expressed as complete weeks plus a remainder, so the two readings never disagree.
Worked examples
Example 1 — counted two ways. Start May 2, 2016; end August 10, 2016. Exclusive count: 100 days. Tick "Include both days" and it becomes 101 — same two dates, one day different, purely from the boundary rule.
Example 2 — job tenure as years, months, days. Hire date March 14, 2019; reference date November 2, 2024. Five full years walks to March 14, 2024; seven more full months reaches October 14, 2024; the remainder, October 14 to November 2, is 19 days. Result: 5 years, 7 months, 19 days — not the "5.6 years" a rough (end year − start year) estimate would give.
Example 3 — crossing a leap day. Start December 1, 2023; end March 1, 2024. The count runs through January (31 days) and a 29-day February 2024, for a total of 91 days. Shift the same span one year earlier, into a non-leap year, and the answer drops to 90 — the leap day is the entire difference.
Common reference periods
| Period | Typical days | Shows up in |
|---|---|---|
| 1 week | 7 | pay cycles, sprints |
| 2 weeks | 14 | notice periods, cooling-off windows |
| 1 month (avg) | ~30.4 | rough estimates only — real months run 28–31 |
| 1 quarter | ~91 | 90-day return policies, financial reports |
| 6 months | 181–182 | half-year reviews, visa stay limits |
| 1 year | 365–366 | anniversaries, age in days |
| 1,000 days | ~2y 9m | relationship and baby milestones |
Mistakes that throw off a manual count
- Assuming every month is 30 days when estimating by hand — the tool walks the actual calendar, so a result near a month boundary can look "off" against a quick mental estimate.
- Forgetting to fix inclusive vs. exclusive before comparing a result against a deadline, not after.
- Reading the weeks output as total days ÷ 7 rounded off, rather than complete weeks plus the leftover-days count shown beside it.
- Treating years/months/days as independently roundable — 5y 7m 19d is not "about 5.7 years"; the months figure already accounts for the varying month lengths it walked through.
What this calculator does not do
This tool compares two calendar dates, not exact timestamps — there's no hour, minute, or time zone in the input, so a "days since" count for a specific moment can land one day off depending on what time that moment happened. It counts every day on the calendar and does not exclude weekends or public holidays, so it's the wrong tool for a working-days deadline — reach for a dedicated business-day calculator instead. Everything here also follows the modern Gregorian calendar back to the tool's 1900 floor, not other calendar systems or dates predating a region's Gregorian adoption.
Sources & further reading
- ISO — ISO 8601 date and time format, the YYYY-MM-DD standard used for date input
- NIST Time and Frequency Division — official US timekeeping, civil dates and leap seconds
- MDN Web Docs — JavaScript Date object behavior behind in-browser day counting
- GOV.UK — UK bank holidays, for when a calendar-day count must exclude non-working days
Frequently asked questions
Why do anniversary counters differ by one day between tools?
Some tools count the interval between dates, others count the first day as day 1 (inclusive). A 100th-day anniversary falls 99 days after the start. This date difference calculator makes the counting explicit with the inclusive checkbox, so there is no hidden one-day surprise.
How is the years-months-days breakdown calculated?
Months have different lengths, so the calculator walks the real calendar: it adds whole years, then whole months to the start date (clamping to the last day of shorter months, e.g. Jan 31 + 1 month = Feb 28/29), then counts the remaining days.
Are periods that include a leap day (February 29) accurate?
Yes. All math runs on real Gregorian calendar dates, so February 29 counts as a normal day and the total days between two dates are exact regardless of leap years.
How is this different from a D-day calculator?
This tool measures the gap between two dates — total days plus a years/months/weeks breakdown. If you want a countdown to a single target date, use our D-day calculator instead: D-day calculator →
Can I use it for job tenure or pregnancy weeks?
Yes. Enter your hire date and today for exact tenure, or the first day of the last period and today to read pregnancy progress from the weeks row (e.g. 24 weeks 3 days). It works for any elapsed-days question.