Date Calculator
Measure the time between two dates, or an age to this second, in calendar years, months and days, in total days, weeks, hours, minutes and seconds, and in business days.
Overview
The distance between two dates has two honest answers. One is a count: so many days, so many hours. The other follows the calendar: so many years, months and days, where a month is 28 to 31 days long. Neither can be worked out from the other by division, which is why the tool gives both.
Web interface
Date to Date, at /calculate/date, measures between a start and an end. The end
is filled with today, so a period up to now needs one field. Today fills a field with the current
date, and Include time adds a time of day to it. Age, at
/calculate/date/age, measures from a date of birth to now and names the next birthday; it keeps
counting while the page is open.
The result appears as you type. The format buttons, CH, EU, ISO and US/UK, change how numbers and dates are written, not the result, and Copy copies it as plain text.
| Message | Meaning |
|---|---|
That date does not exist in the calendar. | a day such as 31 February |
The start date is after the end date. | the two dates are the wrong way round |
That birth date is in the future. | there is no age to measure yet |
What gets counted
| Figure | Counted as |
|---|---|
| Years, months, days | whole months added from the start, then the days left over |
| Days in total | calendar days; with a time of day, whole 24-hour periods |
| Weeks | whole seven-day blocks |
| Hours, minutes, seconds | time actually elapsed |
| Business days | Monday to Friday with both ends included; Date to Date only |
| Next birthday | the next anniversary and the days left to it; Age only |
From 1 January 2000 to 12 September 2026 the tool gives 26 years, 8 months and 11 days, 9,751 days in total and 6,965 business days. September 2026, from the 1st to the 30th, has 22 business days. Public holidays are not taken into account, because they differ by country and region.
How months are counted
A month added to a date lands on the same day of the next month, or on its last day when it has no such day. One month after 31 January is therefore 28 February, or the 29th in a leap year:
| From | To | Result |
|---|---|---|
| 31 January 2024 | 1 March 2024 | 1 month, 1 day; 30 days in total |
| 31 January 2023 | 28 February 2023 | 1 month, 0 days; 28 days in total |
The next birthday follows the same rule, so someone born on 29 February 2000 has theirs on 28 February 2027, and the age and the birthday never disagree. Other software may count such spans differently, so compare the total days when two tools disagree about months.
Dates run from the year 1 to 9999 and follow today's Gregorian rules throughout, also before 1582, when the calendar was introduced. They are not converted from the Julian calendar.
Time zones and daylight saving
Everything is worked out in the time zone of your device, from its clock. A date without a time is the midnight at its start. On a day when the clocks change, the hours, minutes and seconds follow the time that actually passed, so they can differ from the days multiplied by 24, while the day count stays a count of calendar days.
Formats
| Button | Numbers | Dates |
|---|---|---|
| CH | 1'234 | Sunday, 10 March 2024, 00:00 |
| EU, the default | 1.234 | Sunday, 10 March 2024 at 00:00 |
| ISO | 1 234 | Sunday, 2024-03-10 00:00 |
| US/UK | 1,234 | Sunday, March 10, 2024 at 00:00 |
No API
There is no API for this tool. The calculation runs in the browser; in Python, subtracting one
date from another gives the days between them.
Privacy
Nothing leaves the browser. Dates, including a date of birth, are worked out on the page and are not stored or sent, and Copy writes to the clipboard only when you press it.