Free · 4 modes · Leap-year aware · Business days

Date Calculator — Days Between Dates, Add/Subtract, Age & Business Days

Four date tools in one. Count the exact days between two dates with a full years/months/days breakdown. Add or subtract years, months, weeks, and days using true calendar arithmetic. Calculate exact age from any birthdate with a birthday countdown. Count business days, excluding weekends and any custom holidays. Includes a mini calendar view, timeline, day-of-week distribution, and milestone tracker.
📅 4 modes · D A G B shortcuts 📆 Mini calendar 📊 Day-of-week analysis 🔒 100% in-browser

Date Calculator

Pick a mode — results update instantly as you type.
📅
Today is
—
💡 Quick
💡 Quick
💡 Quick

What is a date calculator?

A date calculator performs arithmetic on calendar dates — counting the days between two dates, adding or subtracting durations, calculating age, or counting business days. Unlike simple number arithmetic, date math has to account for months of different lengths (28, 29, 30, or 31 days), leap years, and year boundaries. That's why doing it by hand is error-prone — and why a date calculator is one of the most-searched utility tools online.

This tool has four modes, each built for a specific question. Difference counts the days, weeks, months, and years between two dates. Add / Subtract moves a date forward or backward by any combination of years, months, weeks, and days. Age calculates someone's exact age from their birthdate, with a next-birthday countdown. Business Days counts working days between two dates, excluding weekends and any custom holidays you specify.

How to use the date calculator

  1. Pick a mode using the tabs (or press D, A, G, or B to switch). Choose Difference for days between dates, Add / Subtract to move a date, Age for birthdays, or Business Days for working-day counts.
  2. Enter your dates. Use the native date pickers, or click a quick preset like "Last 30 days" or "+90 days".
  3. Toggle options. In Difference mode, choose whether the end date is included. In Business Days mode, pick the weekend definition and add custom holidays.
  4. Read the result. The headline answer appears at the top with multiple date formats you can click to copy. Below it: a mini calendar view, a summary grid (click any card to copy its value), a visual timeline showing where "today" falls, a day-of-week distribution, milestone markers, and a step-by-step methodology.
  5. Copy or share. Copy the result as plain text, Markdown, JSON, or CSV. Print a clean version. Or generate a shareable URL that restores your dates.

💡 Shortcuts: D Difference · A Add/Subtract · G Age · B Business · T Reset to today · S Swap dates. Shortcuts are disabled while typing in date inputs.

The tricky bits of calendar math

Date arithmetic is not the same as ordinary number arithmetic. Three quirks trip up hand calculations, and this calculator handles all of them.

Leap years

Under the Gregorian calendar, a year is a leap year if it is divisible by 4 — unless it is a century year (divisible by 100) that is not divisible by 400. So 2024, 2028, and 2096 are leap years; 2100 and 2200 are not; but 2000 and 2400 are. February has 29 days in leap years instead of 28, adding 366 days to the year instead of 365.

Without leap-year handling, a naive calculation would drift by about one day every four years. The calculator applies the full Gregorian rule at every step.

Month-end clamping

What is one month after January 31? Naive arithmetic would say "February 31," which doesn't exist. The correct answer under the standard calendar convention is February 28 (or February 29 in a leap year) — the last valid day of the target month. This is called clamping, and it's the behavior used by financial systems, date libraries, and legal deadline calculations. The calculator clamps to the end of the shorter month instead of rolling forward.

For example: January 31 + 1 month = February 28 (or 29). March 31 − 1 month = February 28 (or 29). August 31 + 1 month = September 30.

Inclusive vs exclusive counting

When someone asks "how many days from Monday to Friday," the answer depends on whether you count both endpoints. If you count inclusively, it's 5 days (Mon, Tue, Wed, Thu, Fri). If you count exclusively, it's 4 days (the gap between them). Neither is wrong — it depends on the convention. This calculator defaults to exclusive counting (the gap), but you can toggle "Include end date" to switch to inclusive counting. That's the mode used for contract periods, lease terms, hotel stays, and any duration where both the first and last day count.

Real-world use cases

Deadlines and contracts

Legal notices, contract deadlines, and lease expirations are typically expressed as "X days from date" or "X months from date." The Date Calculator gives you the exact deadline date, using the same month-end clamping convention that most contracts assume. Add business-day mode if the deadline excludes weekends and holidays.

Age verification

Government forms, insurance applications, and medical records all ask for age. Age mode gives you years, months, and days — plus a birthday countdown and the day of the week you were born on. For legal age milestones (18, 21, 65), set the "Age on" date to the milestone to see whether it's already passed.

Project planning

Project managers use the Date Calculator to find sprint durations, countdown to release dates, and check delivery windows. The business-day mode is especially useful for deadlines that exclude weekends — a 30-business-day SLA is not the same as 30 calendar days.

Pregnancy and event planning

Wedding planning, pregnancy trimesters, and event countdowns all depend on precise date math. "Due date in 40 weeks" needs weeks-to-days conversion. "Six months before the wedding" needs month arithmetic with correct clamping.

Historical research

Researchers calculate how long ago an event occurred, the exact age someone was at a specific historical moment, or the number of days between two dated documents. Age mode with a custom "Age on" date answers these questions precisely.

How the calculator works

Every mode uses the same underlying technique: convert each date to a day number (days since January 1, 1970, in the proleptic Gregorian calendar) and perform arithmetic on those integers. This avoids the pitfalls of naive month-and-day subtraction. The breakdown into years, months, and days is then computed by walking forward from the earlier date one month at a time until adding another month would overshoot.

Days between = dayNumber(end) − dayNumber(start)

For the Add/Subtract mode, the calculator applies years first, then months, then weeks, then days — matching the order used by most financial systems. Years and months are applied with month-end clamping. Weeks and days are simple additions on the day number.

For Business Days mode, the calculator iterates through each day in the range and skips any day that is a weekend (Saturday/Sunday by default) or a user-specified holiday. The result is the count of working days between the two dates.

Common mistakes

  • Assuming every month has 30 days. Months have 28, 29, 30, or 31 days. "One month from now" is not the same as "30 days from now."
  • Forgetting leap years. A 365-day year is wrong once every four years — the correct value is 366. Over a decade, ignoring leap years can be off by two days.
  • Getting inclusive vs exclusive counting wrong. If a lease runs from March 1 to March 31, is that 30 days or 31? The convention matters — the calculator lets you toggle.
  • Not handling month-end clamping. January 31 + 1 month is February 28, not March 3. Getting this wrong breaks contract deadlines.
  • Ignoring time zones for "today". The calculator uses your device's local date, so "today" is determined by your system clock and time zone.
  • Assuming public holidays. Business-day counts by default only exclude weekends, not public holidays. Add specific holidays in the holidays field if you need them excluded.

Limitations

  • Business-day mode excludes weekends and any custom holidays you enter, but does not automatically load country-specific public holiday calendars.
  • Date arithmetic uses the proleptic Gregorian calendar. Historical dates before 1582 (when the Gregorian calendar was adopted) will use Gregorian rules, not the Julian calendar that was actually in use.
  • Time-of-day and time-zone differences are not part of the calculation — the calculator works at day granularity, not to the second.
  • Very large durations (millions of years) are mathematically supported but the visualization and milestone panels become less useful.

Frequently asked questions

How do you calculate the number of days between two dates?

Convert both dates to their day number in the Gregorian calendar and subtract. The calculation automatically accounts for leap years, months of different lengths, and year boundaries. For example, the number of days from January 1, 2026 to March 15, 2026 is 73 days.

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

The calculator uses calendar-correct arithmetic: it clamps to the last valid day of the target month. For example, January 31 plus one month becomes February 28 (or February 29 in a leap year), not March 3. This is the standard convention used by financial systems and date libraries.

Which years are leap years?

A year is a leap year if it's divisible by 4, unless it's a century year (divisible by 100) that isn't divisible by 400. So 2024 and 2028 are leap years, 2100 and 2200 are not, but 2000 and 2400 are. Leap years have 366 days, and February has 29 days.

Does the calculator include the end date?

By default the end date is excluded — you get the gap between dates. You can toggle "Include end date" to add one day, which matches the convention used for contracts, hotel stays, and lease terms where both the first and last day count.

What counts as a business day?

By default, Monday through Friday. Saturdays and Sundays are excluded. You can change the weekend definition to Friday & Saturday (for Middle Eastern business calendars), Sunday only, or no weekends. Public holidays vary by country, so the calculator doesn't assume any — add specific dates in the holidays field if you need them excluded.

How is age calculated?

Age is calculated in completed years, months, and days from the birthdate to the reference date. For example, if someone was born on June 15, 1990 and the reference date is March 10, 2026, they are 35 years, 8 months, and 23 days old.

How are February 29 birthdays handled?

In non-leap years the birthday countdown rolls to March 1, the first day after February 28 — the most common legal and financial convention. In leap years it lands on February 29 itself.

Can I calculate negative durations?

Yes. If your start date is later than your end date, the calculator automatically reverses them, or you can click the swap button. The duration is always reported as a positive value.

Does the tool save my data?

No. Everything runs entirely in your browser. Nothing is uploaded, logged, or stored on a server. The share button encodes the current state into the URL hash on your device only.

Sources & methodology

  • ISO 8601 — International standard for date and time representation, including the Gregorian calendar's leap-year rules.
  • Gregorian calendar reform of 1582 (papal bull Inter gravissimas) — establishes the 4/100/400 leap-year rule.
  • U.S. Naval Observatory, Astronomical Applications Department — "Leap Years" reference for the Gregorian leap-year algorithm.
  • ECMAScript Date specification — the day-number-based arithmetic used internally by every JavaScript engine.
  • Microsoft Excel documentation for WORKDAY, NETWORKDAYS, and EDATE — the industry-standard calendar functions this calculator's behavior matches.
Scroll to Top