Date Calculator — Days Between, Age & Add/Subtract
Three calculators in one: time between two dates, exact age from a birthdate, and adding or subtracting any unit from a date. Leap years handled correctly.
About this tool
Date arithmetic looks easy and is famously not — months have different lengths, leap years exist, the Gregorian calendar has a 400-year leap-year cycle, and “a month later” can mean different things depending on which day you start from. WRRK's date calculator handles all three common questions — how far apart are two dates, how old is someone exactly, and what date will it be N units from now — using JavaScript's built-in Date object, which encodes the standard calendar rules correctly.
The difference tab returns the gap in five units (days, weeks, months, years, business days) so you can pick whichever one fits the context — payroll wants business days, tenure calculations want years, project deadlines want days. The age tab gives both a calendar age (years/months/days, the way you say your age) and total days lived, which is fun to look at on round numbers. The add/subtract tabis the inverse of difference — useful for “30 days from today”-style deadlines, contract end dates, and visa expiry.
Everything runs locally in your browser. Nothing is sent to a server, and nothing is logged.
How to use the date calculator (5 steps)
- Pick a tab. 'Difference between dates' for the gap, 'Age calculator' for years/months/days from a birthdate, or 'Add / subtract' to move a date forward or backward.
- Pick the dates. Use the native date picker on each input. The calculator updates instantly as you change either value.
- Read the breakdown. Difference shows total days, weeks, months, years and business days. Age shows years-months-days plus days lived and next birthday countdown.
- Tweak the units. For add/subtract, use the unit dropdown — days, weeks, months, or years. Subtraction is supported by toggling the operation.
- Copy the answer. All outputs are static text — select with your cursor and copy into a doc or message.
Use cases
- Counting days until a deadline, exam, or trip
- Calculating exact age for forms or documents
- Computing notice periods, severance, or probation lengths
- Finding contract or lease end dates
- Project timelines — “90 days from kickoff”
- Vacation accrual — total business days in a date range
- Visa, passport, and document validity countdown
- Knowing how many weeks pregnant or how many days to a due date
- Anniversary, birthday, and milestone planning
Frequently asked questions
+−How do I calculate the number of days between two dates?
Pick a from-date and a to-date in the 'Difference' tab. The calculator returns the exact day count, plus weeks, months, years and business days. Leap years are handled correctly — Feb 29 is counted only when it actually exists.
+−What's the difference between calendar days and business days?
Calendar days count every day including weekends. Business days count only Monday-Friday. The calculator gives both. Public holidays vary by country and are not subtracted automatically — adjust manually if needed.
+−How does the age calculator handle leap years?
Correctly. Birthdays on Feb 29 are treated as Feb 28 in non-leap years (the common convention). The age in years/months/days uses calendar arithmetic; days lived is the exact total elapsed days.
+−What does 'add 30 days' versus 'add 1 month' do?
They are different. '30 days' is exact: 30 × 86,400 seconds added to the start date. '1 month' is calendar-aware: it lands on the same day-of-month next month (Jan 31 + 1 month = Feb 28 in a non-leap year, since Feb 31 doesn't exist).
+−Why does the count of 'months' sometimes look off by one?
We show two values: a calendar count (full months elapsed) and a months-with-remaining-days breakdown (e.g. '2 months and 14 days'). The calendar count rounds down — it counts how many full month boundaries you've crossed.
+−Can I use a date in the future for the age calculator?
No — age requires a date in the past. For 'how old will I be on date X', use the difference tab with your birthday as 'from' and X as 'to'.
+−Does it handle dates before 1970?
Yes. The calculator uses the JavaScript Date object which supports dates from year 1 onward. Picking 1850 or 1923 works as expected.