Days between dates / add or subtract days
This date calculator does two things. It tells you how many days lie between two dates, along with a rough conversion into weeks and years, and it adds or subtracts a number of days from a base date to give you the new date and its weekday. It counts in plain calendar days only. It does not separate business days from weekends or holidays, and it does not produce a 'years, months and days' style breakdown. Everything is calculated in your browser.
Date difference: 2024-01-01 to 2024-12-31 is 365 days, about 52.1 weeks and 1.00 years. 2024 is a leap year with 366 days, but because the range stops at December 31, the gap is 365. 2025-01-01 to 2026-01-01 is also 365 days. 2024-02-28 to 2024-03-01 is 2 days, about 0.3 weeks and 0.01 years. Swapping the two dates gives the same answer. Date shifting: 2026-01-31 plus 30 days is 2026-03-02, a Monday. 2024-02-28 plus 2 days is 2024-03-01, a Friday, which passes over the leap day of February 29. 2025-03-01 minus 1 day is 2025-02-28, a Friday. 2026-10-13 plus 100 days is 2027-01-21, a Thursday.
The tool measures how many days lie between two dates, not how many calendar days are covered. From the 1st to the 2nd is a difference of 1 day, even though two calendar days are involved. For leave requests, hotel stays or countdowns, decide first whether the start or end day counts, and add 1 if it does.
Yes. The calculation uses the browser's built-in date object, which knows month lengths and leap years, so 2024-02-28 plus 2 days lands on 2024-03-01 after passing February 29. The code also avoids parsing date strings as UTC, a common pitfall that makes results off by one day for users in some time zones.
Not at the moment. It reports total days and an approximate number of years based on 365.25 days. For ages or length of service, which depend on whether a birthday or anniversary has passed, the approximate year figure is not suitable as an exact age.
The weekday depends only on the resulting date, not on how many days you entered. The tool computes the new date first, then reads which weekday that date falls on from the browser's date object and prints it in brackets. In the English interface the weekday is shown in English.
Dates and day counts are used only inside your browser for the calculation. They are not sent to any server and not saved. The tool reads your device's current date to fill the defaults, which also happens locally. Reloading the page restores the defaults.