Skip to main content
Dates & TimeFree · no sign-up

Date Add and Subtract Calculator

Add or subtract years, months, weeks and days, in calendar days or business days only.

Updated

0
0
0
90

Resulting date

October 29, 2026

A Thursday

Falls on a
Thursday
ISO format
2026-10-29
Calendar days moved
+90
Weeks and days moved
12 weeks, 6 days
Day counting
Every calendar day

Years and months are applied first, then weeks and days, so the order is not interchangeable: three months plus 30 days can differ from 30 days plus three months.

In short

What date is a given number of days from now?

Add the interval to the start date one unit at a time, years first, then months, then days. Adding 90 calendar days to Friday 31 July 2026 lands on Thursday 29 October 2026. Switch the same 90 to business days and it moves to Friday 4 December 2026, 126 calendar days later because 36 weekend days are stepped over.

Months are added before days and clamped to the length of the target month, so 31 January plus one month is 28 February rather than 3 March.

How to use the date add and subtract calculator

Set a start date, choose add or subtract, then fill in whichever of years, months, weeks and days your question uses. The tool applies the whole interval in one shift and returns the resulting date, the weekday it falls on, and the number of calendar days the date actually moved. The example already loaded adds 90 calendar days to 31 July 2026 and returns Thursday 29 October 2026.

Any unit can stay at zero, and weeks are simply seven days each, so entering three weeks and entering twenty-one days give the identical answer. The add and subtract toggle flips the entire interval rather than individual fields, which is what stops the common mistake of adding months while subtracting days.

29 Oct 2026

90 calendar days ahead

a Thursday, from Friday 31 July 2026

4 Dec 2026

The same 90 in business days

a Friday, 126 calendar days out

36

Weekend days stepped over

the gap between the two modes

The order the units are applied in is fixed and it is not an implementation detail: years first, then months, then the week and day part. Calendar arithmetic is not commutative, so a different order genuinely gives a different date.

Start at 29 January 2026, add one month and then one day, and you get Sunday 1 March 2026, because one month lands on 28 February and the extra day rolls into March. Add the day first and then the month and you get Saturday 28 February 2026 instead, a full day apart.

Neither answer is wrong; they answer differently ordered questions. This tool states its order rather than leaving you to discover it, and it always applies the larger units first.

Month arithmetic has that convention stated up front because there is no universally correct answer to it. The tool flags when a clamp has happened rather than hiding it, because a clamp is exactly the case where a contract, a lease or a medication schedule may want a different rule.

The clamp also makes month addition lossy in an interesting way: adding one month twice to 31 January 2026 gives 28 March, while adding two months at once gives 31 March.

Do

  • Fill in the units your question uses and leave the rest at zero.
  • Apply the whole interval in one shift rather than in two.
  • Read the net calendar days line whenever business-day mode is on.
  • Run the tool twice when your document specifies a different order.

Don't

  • Assume adding one month twice matches adding two months at once.
  • Expect 31 January plus one month to reach March.
  • Mix directions by subtracting days while adding months.
  • Treat a business-day result as already clear of public holidays.

Shifts applied to a fixed start date of Friday 31 July 2026, showing the resulting date, the weekday it falls on, the net calendar days travelled, and whether a month-end clamp changed the day of the month.

Interval appliedResult dateWeekdayNet calendar daysMonth-end clamp
Plus 1 day1 August 2026Saturday1No
Plus 2 weeks14 August 2026Friday14No
Plus 30 days30 August 2026Sunday30No
Plus 45 days14 September 2026Monday45No
Plus 60 days29 September 2026Tuesday60No
Plus 12 weeks23 October 2026Friday84No
Plus 90 days (the example loaded)29 October 2026Thursday90No
Plus 120 days28 November 2026Saturday120No
Plus 180 days27 January 2027Wednesday180No
Plus 365 days31 July 2027Saturday365No
Plus 3 months31 October 2026Saturday92No
Plus 6 months31 January 2027Sunday184No
Plus 9 months30 April 2027Friday273Yes
Plus 1 year31 July 2027Saturday365No
Plus 18 months31 January 2028Monday549No
Plus 1 business day3 August 2026Monday3No
Plus 10 business days14 August 2026Friday14No
Plus 30 business days11 September 2026Friday42No
Plus 90 business days4 December 2026Friday126No
Minus 30 days1 July 2026Wednesday-30No
Minus 90 days2 May 2026Saturday-90No
Minus 3 months30 April 2026Thursday-92Yes
Minus 1 year31 July 2025Thursday-365No
Every row is the output of this page’s own engine, applying years first, then months, then the week and day part. Business-day rows step only over Monday to Friday and skip no public holidays. A clamp means the day of the month was reduced to the last day that exists in the target month.

What changes in business-day mode?

Business-day mode changes the meaning of the week and day part rather than filtering the result afterwards. Each step moves to the next weekday, skipping Saturday and Sunday, so the answer can never land on a weekend no matter how many days you enter.

Adding one business day to Friday 31 July 2026 gives Monday 3 August, which is three calendar days later, and adding 90 business days to the same start gives Friday 4 December 2026, which is 126 calendar days later. The net calendar days line is there so that gap is visible rather than surprising.

Public holidays are not skipped, because they differ by country, state and employer, so a business-day result that lands on one of yours needs one more step by hand.

Know the date, not the interval?

This tool shifts a date by an interval you supply. When the far date is the thing you already have, the countdown measures the distance from today instead.

Open the days until calculator

The formula, worked line by line

The shift runs in a fixed sequence. Years and months are collapsed into a single month count and applied first, with the day of the month clamped to the length of whatever month the result lands in. Weeks and days are collapsed into a single day count and applied second, either as plain calendar days or as steps over weekdays only.

Subtraction is the same procedure with the sign flipped on both parts, which is why moving forward and then back by the same interval always returns you to the start date.

The day part is computed at UTC midnight, so every step is exactly 86,400,000 milliseconds. Adding days to a local timestamp is where date arithmetic usually goes wrong: an hour lost or gained at a daylight-saving transition is enough to move a rounded result by a whole day.

Civil dates carry no time zone, so the failure mode does not exist here rather than being corrected for. The same reasoning is why the result is a date and a weekday, never a time.

step 1  months total = sign x (years x 12 + months)
        result = start shifted by months total, day clamped to the target month length
step 2  day part = sign x (weeks x 7 + days)
        calendar mode: result = result + day part, every day counted
        business mode: result steps over Mon to Fri only, weekends skipped
net calendar days = result minus start, in whole days, signed
Adding an interval to a dateJan 31, 2026 plus one year is Jan 31, 2027; plus one month clamps to Feb 28, 2027 because February is short; plus one day is Mar 1, 2027, a Monday.YEARS, THEN MONTHS, THEN DAYSstartJan 31, 2026+ 1 yearJan 31, 2027+ 1 monthclampedFeb 28, 2027+ 1 dayMar 1, 2027lands on a MondayORDER CHANGES THE ANSWERboth fromJan 31, 2026+1 month, twiceMar 28+2 months, onceMar 31days apart3
Years, then months, then days: the month step clamps 31 January to 28 February, so the order is part of the answer.
The worked defaults, 90 calendar days from Friday 31 July 2026
Step one, months
no year or month part, so nothing moves
To the end of August
31 days
Through September
30 more, running total 61
Into October
29 more, running total 90
Result
Thursday 29 October 2026, net 90 days

Switch the same 90 to business days and the answer becomes Friday 4 December 2026: 90 weekdays is 18 complete working weeks, and 18 weeks of calendar time is 126 days, which is exactly the net figure the tool reports. That 36-day gap between the two modes is the weekend days that were stepped over.

Order matters, and stating it is the only honest option. Starting from 29 January 2026, adding one month and then one day gives Sunday 1 March 2026, while adding one day and then one month gives Saturday 28 February 2026. Subtraction shows the same effect: 31 March 2026 minus one month then minus one day is Friday 27 February 2026, but minus one day then minus one month is Saturday 28 February 2026.

This tool always resolves years and months before days, which matches how contract and notice-period clauses are normally read. If a document of yours specifies a different order, do the two shifts separately and use the tool twice.

Questions people ask