Cat Toolbox
Help CatBlog About Partnership 中文

📅 Date Calculator

Calculate days between two dates, or add/subtract days/months/years from a specified date.

Days Difference
—
Weeks Difference
—
Months Difference
—
Years Difference
—
End Date
—
Calculation Result
—

Related guide

BMI, Age and Date Calculators: Which Numbers to Trust, and When
The BMI page classifies the rounded number, not the real one. The age page anchors its counters to UTC midnight and keeps ticking after you clear the box. The date page counts days from local midnight, so a clock change can cost you one. Every figure below was measured on the pages themselves.

Advertisement

Two tools in one page

Date Difference answers "how long between these two dates?" — it returns the span in days, weeks, months and years, and also shows the weekday of each endpoint.

Date Calculation goes the other way: pick a starting date, choose days, months or years, and add or subtract it to get the resulting date, again with its weekday.

How the difference is counted

Days are complete 24-hour periods between the two dates, so 1 January to 3 January is 2 days — the same way hotels count nights. Tick "Include end date" to count the end date itself as well, which adds one day and turns that example into 3.

Weeks are whole 7-day blocks with the leftover days shown separately. Months and years are counted on the calendar rather than by multiplication: the tool steps forward one month (or one year) at a time and counts how many steps fit before the end date, so 28 February to 28 March counts as one month even though February is short. The remainder after those whole months or years is then expressed in days.

Adding and subtracting dates

Day arithmetic is exact. Month and year arithmetic follows the usual calendar rule for non-existent dates: if the target day does not exist in the month you land in, the date rolls forward. Adding one month to 31 January gives 3 March, because February has 28 days that year; subtracting one month from 31 March gives the same date. If you need the last day of a month, use days instead.

Weekdays

Both endpoints are labelled with their weekday.

FAQ

Should I tick "Include end date"?
It depends on what you are counting. Leave it off for durations (a 3-night hotel stay, the length of a project) where the start day is the beginning and the end day is the finish. Tick it when you need the number of days that a range touches, such as counting calendar days for a deadline or a leave request.

Why does 31 January plus one month give 3 March?
Because 31 February does not exist, so the date rolls forward to the first valid day after it. Calendar arithmetic works this way in JavaScript, Excel and most programming languages. If you want the end of the next month, add days instead of months.

How are the months and years figures calculated?
By calendar stepping, not by dividing the number of days. So a span that crosses a short February still counts as a whole month. The leftover days shown next to the months figure use an average month of 30.44 days, and the leftover shown next to the years figure uses 365.25 days.

What does the message "Start date must be earlier than end date" mean?
The difference mode needs the earlier date in the first field. Swap the two dates and it will calculate; the tool does not return a negative span.

Does it know about leap years?
Yes — days, weeks and calendar stepping all account for leap years, and they are the reason 29 February plus one year lands on 1 March.

Can I calculate dates far in the past or future?
Yes. The arithmetic has no range limit of its own; the only bound is what your browser's date input accepts.