Months and years use calendar arithmetic: adding 1 month to Jan 31 lands on Feb 28/29, not March 3. For exact working-day spans, use business days; for age-style breakdowns, use age.
For days between dates, the tool subtracts one midnight timestamp from another and divides by 86,400,000 milliseconds per day. The year-month-day breakdown walks forward through calendar months to give an exact count. For add/subtract mode, it applies JavaScript's native Date methods which handle month lengths, leap years, and end-of-month overflow automatically. All dates are interpreted in your local timezone.
The count measures the gap between the two dates. If start and end are the same day, the result is 0. To include both endpoints, add 1 to the result.
February 29 is counted normally in leap years. The year-month-day breakdown walks through actual calendar months, so leap days are always included when they fall in the range.
JavaScript's Date object rolls forward to the last valid day. Adding one month to January 31 gives February 28 (or 29 in a leap year), not March 3.
This tool counts calendar days only. For a weekday-only count, use the day counter which includes a business-days row.
Weeks are total days divided by 7 without rounding, so you can see partial weeks. For example, 10 days shows as 1.43 weeks rather than "1 week and 3 days."
Estimate only. Results reflect your inputs and standard formulas. Double-check important decisions independently.