The Date Calculator does two jobs: it tells you how many days sit between any two dates, and it moves a date forward or backward by days, weeks, months or years. It's what you need for project deadlines, contract terms, delivery ETAs, pregnancy due dates, visa validity and vacation planning.
How it works
For the difference, we convert both dates to their millisecond timestamps, subtract, and divide by 86,400,000 (the number of milliseconds in a day). Because we round to whole days, DST transitions don't create half-day errors. Business days iterate day-by-day and skip weekends.
Formulas at a glance
Days between = round((end − start) / 86,400,000)Weeks = floor(days / 7), remainder days shown separately.- Add months: bump the month field; JS auto-adjusts if the day doesn't exist (e.g. 31 Jan + 1 month = 3 Mar in a non-leap year).
Practical use cases
- How many days until my flight, wedding, exam or product launch?
- 90-day tourist visa expiry — enter arrival date + 90 days.
- Contract notice periods measured in weeks or months.
- Countdown to retirement or a savings-goal date.
- Business days for SLA calculations, courier ETAs and legal deadlines.
Tips and pitfalls
- "Days between" usually excludes the start date but includes the end — toggle inclusivity if a contract requires both.
- "Business days" here skips only Sat/Sun. Add local holidays yourself.
- Adding "1 month" to 31 January can land on 28 February or 3 March depending on the year — check the output.
Frequently asked questions
How do I count days between two dates?+
Subtract the earlier date from the later one in milliseconds, then divide by 86,400,000 (ms in a day). The calculator does this for you and handles leap years automatically.
Are the start and end dates both counted?+
By default we count the gap — end minus start. Toggle 'include end date' to add 1 if you need an inclusive count (e.g. a project running Mon–Fri = 5 days).
Can I add business days only?+
Yes. Choose 'business days' and we skip Saturdays and Sundays. Public holidays are not automatically excluded.
Does the calculator handle time zones?+
It works in your local time zone using calendar dates only, so DST transitions don't shift the answer.
What is the maximum date range?+
JavaScript dates span from 1 Jan 271,821 BC to 20 Sep 275,760 AD — more than you'll ever need.
