Days Between Dates & Date Offset
ConversionEverything runs locally in your browser — nothing is uploaded
Leave the end date empty to compare against today, which makes “how many days until…” a one-field question.
Find out how far apart two dates are, or push a date forward and backward by a number of days. Each date has two ways in: open the calendar and pick one, or paste text such as 2026-09-18. Leave the end date empty to make today the end point, so "how many days until…" is a single field. Every result updates as you type. Month counts follow the calendar instead of assuming 30-day months, and 31 January plus one month lands on 28 February rather than overflowing into 3 March.
Features
- Gap expressed four ways at once: days, weeks, months, and years-months-days
- Add or subtract days, weeks, months or years from the first date, forwards or backwards
- End-of-month clamping: 31 January plus one month is 28 February (29 in a leap year)
- Business day count (Monday to Friday, public holidays not deducted)
- Intervals spanning a daylight-saving change are still counted in whole days
- Impossible dates such as 30 February raise an error instead of being quietly rolled over
- Leave the end date empty to compare against today; both fields have a Today button
- Pick dates from the native calendar, or paste them as text
How to use
- Pick a start date from the calendar, or paste one into the text box
- Fill in the end date if you need it — leaving it empty compares against today
- Set the offset amount and unit if you need one
- The gap, the shifted date and the business day count appear as you type
- Click Copy to take the result
FAQ
- Why does the month count differ from days ÷ 30?
- Months have different lengths. The tool counts whole calendar months plus the remaining days: 1 January to 18 September is 8 months and 17 days, which is not what dividing by 30 gives.
- Are public holidays excluded from the business day count?
- No — only Saturdays and Sundays are. Public holidays and substitute days change every year and vary by country, so a built-in list would go stale silently. Subtract them yourself for exact scheduling.
- Why is 30 February rejected?
- Because it does not exist. JavaScript’s Date would quietly turn 2026-02-30 into 2 March, handing you a plausible-looking wrong answer, so this tool refuses the input instead.
- Do timezones and daylight saving affect the result?
- No. Dates are anchored to UTC, which has no daylight saving and therefore always 86,400 seconds per day. Subtracting local dates would give 23- or 25-hour days twice a year and throw the day count off by one.
Related tools
Timestamp Converter
ConversionConvert Unix timestamps into readable dates and back, with seconds and milliseconds told apart, a time zone picker and batch mode. Runs in your browser.
Cron Parser
ConversionExplain a cron expression field by field and list its next run times, saying plainly when a schedule can never fire. Runs entirely in your browser.
Unit Converter
ConversionConvert between units of length, weight, temperature, volume and more, seeing one value in every unit of its category at once, all in your browser.
Number Base Converter
ConversionConvert numbers between binary, octal, decimal, hex and base 36, with long IDs converted digit for digit. Runs entirely in your browser.
Color Converter
ConversionConvert a colour between HEX, RGB, HSL and HSV, and check whether text and background clear the WCAG AA or AAA contrast ratio, all locally.