Date & D-day Calculator

Get the days between two dates, a D-day, or the date a number of days before or after, right away.

🔒 Dates you enter are never sent to a server. They are calculated only in your browser.

What to calculate
Days between two dates

Every day is counted, including weekends and public holidays. This is not a business-day calculator.

How to use

  1. Choose what to calculate: days between two dates, D-day, or add or subtract days.
  2. Days between dates: pick a start date and an end date. To count the start date as a day too, turn on [Include start date] (off by default).
  3. D-day: pick a target date. Based on today's date on this device, days ahead show as D-days, the day itself as D-day and days past as D+days.
  4. Add or subtract days: enter a base date and a number of days, then choose add or subtract to get the resulting date and weekday. The result updates as soon as you change a value.

Examples

2024-02-28 to 2024-03-01 is 2 days because 2024 is a leap year; the same span in 2023 is 1 day. Adding 1 day to 2026-01-31 gives 2026-02-01, and adding 365 days to 2024-02-29 gives 2025-02-28. If today is 2026-11-03 and the target date is 2026-11-15, it is D-12.

How it is calculated

CalculationMethod
Days between two datesEnd date − start date (+ 1 day if the start date is included)
D-dayTarget date − today → D-days ahead, D-day on the day, D+days after
Add or subtract daysBase date ± days (the base date is day 0)

Each date is turned into a whole number of days counted from 1970-01-01 (day 0), calculated, and turned back into a date. No times are involved, so the result is the same in every time zone.

Supported formats, limits and privacy

  • Dates from 0001-01-01 to 9999-12-31 are supported. The number of days to add or subtract is a whole number of 0 or more, up to 3,652,058.
  • This counts every calendar day, including weekends and public holidays. It is not a business-day (working-day) calculator.
  • Leap years (years divisible by 4, except that years divisible by 100 are common years unless they are divisible by 400: 1900 is a common year, 2000 is a leap year) and different month lengths are handled. Dates before 1582 are calculated by extending today's Gregorian calendar backwards, so they may differ from dates in old records that use the Julian calendar.
  • Only dates (year, month, day) are used, without times, so time zones and daylight saving time never shift the result by a day. For D-day, today is the date set on this device.
  • Days between dates do not count the start date by default (end date − start date); turning on [Include start date] adds 1 day. If the end date is before the start date, the number of days is shown as an absolute value with a note that the order is reversed. Results are shown only in days and weeks (7 days), not months or years, because month lengths differ.
  • Dates you enter are calculated only inside this browser. They are not sent to a server or stored.

Frequently asked questions

How is D-day counted?

It is the target date minus today. If the target date is 12 days away it is D-12, on the day itself it is D-day, and one day after it is D+1. Today is the date set on this device, so if the device date is wrong, so is the result.

How do I calculate anniversaries like 100 days or 1000 days?

For anniversaries where the first day counts as day 1, use [Add or subtract days] and add 99 days to the first day (999 days for day 1000). For example, if 2026-11-03 is day 1, day 100 is 2027-02-10. This tool counts the base date as day 0, so add one day less.

What does "Include start date" do?

By default the result is end date − start date, so 2026-01-01 to 2026-01-31 is 30 days. When the start date should count as a day too (event periods, days of medication and so on), turn on [Include start date] and it becomes 31 days.

Can it skip weekends or public holidays?

No. This tool counts every day, including weekends and public holidays. Holidays differ by country and year, and substitute holidays exist, so check the relevant official calendar if you need business days.