Days Between Dates — Free Calculator
Enter a start date and an end date. See the exact number of calendar days between them. It works in both directions and handles leap years automatically.
Common uses:
- How many days between two contract dates
- How many days have passed since an event
- How many days until a future date from a specific start point
- How old a project, a relationship, or a record is
| Calendar days | 30 |
| Business days | 19 |
| Weekends | 10 days |
| Weeks | 4 weeks 2 days |
| Months | 1 months 0 days |
| Years | 0 years 1 months 0 days |
This is the same as approximately…
- 0.4 trips around the Earth's equator (at ~1,000 mph)
- 1,440 episodes of a 30-minute TV show
- 0.08 times the Earth orbits the sun
How to Use
- Select a start date using the date picker.
- Select an end date.
- The result appears immediately.
Optional settings change how the endpoints are counted. Include the start date to count it as a full day and add 1 to the total. Include the end date to count it as a full day and add 1 to the total. Include both endpoints to count both as full days and add 2 to the total. The default counts the number of full days between the two dates without including either endpoint.
How the Math Works
The calculator converts both dates to milliseconds since January 1, 1970 (the Unix epoch), subtracts the smaller from the larger, and divides by 86,400,000 milliseconds, the number of milliseconds in a day.
Leap years are included automatically. A year is a leap year if it is divisible by 4, except for years divisible by 100, which must also be divisible by 400. The year 2024 was a leap year. The year 2000 was a leap year because it is divisible by 400. The year 1900 was not, because it is divisible by 100 but not 400.
A standard year has 365 days. A leap year has 366 days. Over a 400-year cycle, there are 97 leap years and 303 standard years, averaging 365.2425 days per year. This matches the astronomical solar year to within 26 seconds.
For dates after October 15, 1582 (the start of the Gregorian calendar), the calculation is accurate to the day. For dates before that, the calculator uses Gregorian rules even though most of Europe used the Julian calendar at that time, which may produce results that differ from historical records by 10 to 13 days.
Common Uses
- Age in days. Birthdate to today equals exact age in days. A 25-year-old has lived approximately 9,131 days. A 50-year-old has lived approximately 18,263 days.
- Anniversary tracking. Calculate exact days since a wedding, a job start date, sobriety, or any meaningful date. Common milestones are 1,000 days, 5,000 days, and 10,000 days.
- Project duration. Measure how long a project, contract, lease, or product has been active. Useful for performance reporting, warranty claims, and lease renewal planning.
- Historical research. The American Civil War lasted approximately 1,458 days (April 12, 1861 to April 9, 1865). World War II in Europe lasted approximately 2,076 days (September 1, 1939 to May 8, 1945).
- Pregnancy timing. Pregnancy is typically 280 days (40 weeks) from the first day of the last menstrual period. Calculate exact days since LMP to track gestational age.
- Loan or contract terms. Verify the exact number of days in a loan term, lease, or contract. Important for prorated calculations and interest accruals.
- Visa and immigration. Count days of presence in a country to track visa compliance. US tourist visas typically allow 180 days per visit. The Schengen Area allows 90 days within any 180-day period.
Difference From Days Until
The Days Until a Date calculator uses today as the automatic start date and shows a live countdown that updates every second. The Days Between Dates calculator lets you set both the start and end dates manually and shows a static result. Use Days Until for live countdowns. Use Days Between Dates for any other date math.
All Date Calculators
Frequently Asked Questions
By default, the calculator counts the days between the two dates without counting either endpoint. So Monday to Friday equals 4 days. Toggle "include end date" to count Friday as a full day, which gives 5 days. Toggle "include both endpoints" to count Monday and Friday as full days. The default is correct for most date math because it counts the full days that pass between the two dates.
Yes. JavaScript date math correctly accounts for February 29 in all leap years. A 30-year span will include 7 or 8 leap days depending on which years are crossed. The next leap year is 2028.
Yes. The calculator handles any two dates within the JavaScript Date object range, which covers dates from approximately 271,821 BC through 275,760 AD. For practical date math within the last 500 years, the result is accurate to the day.
The most common reason is the endpoint inclusion setting. From Monday through Friday could mean 4 days or 5 days depending on which counting convention you use. Check the toggle setting and pick the one that matches what you mean.
A standard year has 365 days. A leap year has 366 days. The average over 400 years is 365.2425 days per year.
Yes. The calculator counts calendar days, not hours, so time zone differences do not affect the result. A day is a day regardless of where you are located.
The result displays on screen. You can copy it manually. The site does not currently offer CSV or PDF export of date calculations.
