Skip to main content

Date Calculator

Days between two dates, add or subtract days, day of the week and business-day calculator.

Result
0 days
? 0 weeks · 0 months · 0 years
Result
0 days
? 0 weeks · 0 months · 0 years
  • 100% private

    All math runs in your browser. Nothing leaves your device.

  • Formula-verified

    Each calculator is unit-tested against authoritative sources.

  • Instant results

    Static-rendered pages. Sub-second loads on any device.

  • Works offline

    Visit once and it keeps working without an internet connection.

How to use the Date Calculator

  1. 1

    Choose your mode

    Pick "days between two dates", "add or subtract days from a date", or "business days only". The mode determines which input fields appear and how the calculator interprets weekends and holidays.

  2. 2

    Enter the start date

    Type or pick the start date. Use a four-digit year so historical dates (1920s, 1940s) and future dates (2030s) are unambiguous and immune to the 2-digit year roll-over problem.

  3. 3

    Enter the end date or number of days

    For "days between" mode, pick the end date. For "add/subtract" mode, type a positive number of days to advance the date or a negative number to go back. The calculator handles month-length and leap-year math automatically.

  4. 4

    Toggle business days and holidays (if available)

    For business-day mode, the calculator subtracts weekends. Where a holiday list is supported, public holidays in your jurisdiction are also subtracted — useful for legal deadlines, T+2 settlement and SLAs.

  5. 5

    Read the result with multiple unit breakdowns

    The result shows the gap or new date plus breakdowns in weeks, months and years. Watch the inclusive vs exclusive convention — this calculator returns exclusive count by default, matching most legal systems.

What this calculator does

Date arithmetic operates on calendar dates — a tuple of (year, month, day) on the Gregorian calendar. The two fundamental operations are: (a) date — date = duration in days, and (b) date + duration = new date. Internally, calculators convert dates to a "Julian day number" or Unix-style day count (days since a fixed epoch like 1 January 1970), do integer arithmetic, then convert back. This avoids all the edge cases of month lengths and leap years because the conversion functions handle them once. For business-day calculations, the calculator also subtracts weekends and (optionally) public holidays from the count.

Formula

DaysBetween = JD(D?) − JD(D?). DateAfter = fromJD(JD(D) + n). BusinessDays = DaysBetween — Weekends — Holidays.
D
A calendar date (year, month, day)
JD(D)
The Julian day number of date D — an integer day count since a fixed epoch
n
A number of days to add (positive) or subtract (negative)
Weekends
Count of Saturdays and Sundays in the interval
Holidays
Count of public holidays in the interval (jurisdiction-specific)

Conversion to a Julian day number is a closed-form formula and is bijective with the proleptic Gregorian calendar. Once both dates are integers, the difference is trivial. For business days, count whole 7-day weeks (each contributes 5 business days), then add the leftover days excluding any weekends and public holidays that fall in the leftover range.

Worked examples

Example: days between 1 January 2024 and 31 December 2024

2024 is a leap year, so the answer is 366 days from 1 January to 31 December inclusive — or 365 days exclusive of one endpoint.

Most date calculators (including this one) return 365 (exclusive of the start date): 31 December is 365 days after 1 January in 2024.

Example: 90 days from 15 February 2025

15 February 2025 + 90 days = 16 May 2025.

Walk-through: Feb has 13 days remaining (after the 15th), March 31, April 30 ≈ 13+31+30 = 74 days bring us to 30 April. Then 16 more days into May = 16 May.

The calculator does this in one operation by converting to JD, adding 90, and converting back.

Example: business days from Monday 1 December 2025 to Friday 9 January 2026

Total days: 39 (inclusive of both endpoints — adjust to your preferred convention). Weekends: 6 Saturdays + 6 Sundays = 12 weekend days. Public holidays (US): 25 December (Christmas), 1 January (New Year's Day) = 2 holidays (both on weekdays).

Business days = 39 → 12 → 2 = 25.

This is exactly the kind of calculation lawyers, project managers and finance teams need for deadlines and settlement dates.

Common use cases

  • Project planning — compute deadlines from a start date and duration
  • Contract law — "30 days from execution", "60 days notice", "T+2 settlement"
  • Pregnancy tracking — weeks since LMP, days until due date
  • Vacation countdown — days until your trip
  • Visa and immigration — duration of stay, expiry calculations
  • Subscription and SaaS — billing date math, free-trial expiry
  • Logistics — estimated delivery dates from carrier transit times
  • Healthcare — appointment scheduling, medication courses
  • Legal — statute of limitations, filing deadlines (business days vs calendar days)
  • Genealogy and history — gaps between historical events

What affects the result

  • Inclusive vs exclusive counting — does "5 days from today" include today or start counting tomorrow?
  • Calendar — most modern calculators use proleptic Gregorian; historical dates before 1582 may use the Julian calendar
  • Leap year rules — every 4 years EXCEPT century years not divisible by 400 (so 2000 was a leap year, 1900 was not)
  • Time zones — date can differ by 1 day at the exact moment depending on zone
  • Public holidays — vary by country, region and year; some holidays are observed on a different day if they fall on a weekend
  • Week start convention — Sunday-start (US) vs Monday-start (ISO 8601 / most of the world) affects business-day grouping

Tips

  • Always clarify "inclusive of both endpoints" or "exclusive" when communicating date differences
  • For business contracts, specify "calendar days" or "business days" — they can differ by 40% over a month
  • When adding months (not days), the result on the 31st of a month is ambiguous — adding 1 month to 31 January gives 28 (or 29) February in most systems
  • For recurring monthly bills, use "same day of month" with end-of-month roll-forward as needed
  • For pregnancy, conception date and last menstrual period (LMP) give due dates that differ by ~14 days — use LMP for the standard 40-week count
  • For international scheduling, always specify the time zone or use UTC to avoid date-shift confusion

Mistakes to avoid

  • Off-by-one errors — confusing "days until" (exclusive) with "days through" (inclusive)
  • Forgetting February 29 in leap years when manually counting
  • Treating all months as 30 days for quick estimates — works for some uses but not for legal deadlines
  • Using "weeks × 7" without accounting for partial weeks at the start or end of the range
  • Computing business days as total days × 5/7 — works for long ranges but is inaccurate for short ones
  • Forgetting that crossing into a new year resets the week-of-year counter

Frequently asked questions

How many days are between two dates?

Convert both to Julian day numbers (or Unix epoch days) and subtract. The exclusive count gives "days until" (the number of midnights crossed); the inclusive count adds 1. This calculator returns the exclusive count by default, matching how most legal and scheduling systems work.

How do I calculate business days?

Subtract weekends (Saturdays and Sundays) and public holidays from the total day count. For long ranges you can approximate: business days — total × 5/7. For accurate counts under a few weeks, list the weekends and holidays explicitly.

What is a leap year?

A leap year has 366 days (Feb 29 added). The rule: divisible by 4 is a leap year, EXCEPT century years (divisible by 100) which are NOT, EXCEPT those also divisible by 400 which ARE. So 2000 was a leap year; 1900 was not; 2024 is; 2100 will not be.

How do I add months to a date when the result day doesn't exist?

There are two conventions. (1) Roll forward: 31 January + 1 month = 3 March (skips Feb 28/29). (2) Clip: 31 January + 1 month = 28 February (or 29 in a leap year). Most spreadsheet software and legal contracts use clipping. This calculator uses clipping by default.

How does the calculator handle BC dates?

It uses the proleptic Gregorian calendar with year 0 = 1 BC. So "1 January 1 BC" is year 0; "1 January 100 BC" is year −99. Historical dates pre-1582 are not the dates that contemporaries would have written — they were on the Julian calendar.

How do I count weeks between two dates?

Divide the day count by 7. For partial weeks: 23 days = 3 weeks and 2 days. For pregnancy or training programs that use full weeks, take the integer part of the division.