Date calculator: add or subtract days, weeks and months

Thursday, December 3, 2026

30 days after today, Tuesday, November 3, 2026

About the result

Weekday
ISO date
Distance from the start
In weeks
Relative to today

How date arithmetic works

Adding to a date looks like simple addition, but it mixes two different kinds of unit. Days and weeks are fixed lengths: seven days is always seven days. Months and years are positions on the calendar: “a month from now” means the same day number in the next month, however long that takes. Knowing which kind you are using is most of what there is to know about this subject.

With fixed units the method is plain counting. Every date has a position in a continuous count of days, so the calculator adds the number and converts back to a date. Month lengths and leap years take care of themselves. With calendar units it moves along the calendar and keeps the day number if it can.

Why a month is not 30 days

Because calendar months differ, a span of whole months has no single length. We checked every possible start date across the full 400-year Gregorian cycle, after which the calendar repeats exactly:

SpanShortestLongest
1 month28 days31 days
3 months89 days92 days
6 months181 days184 days
12 months365 days366 days

So “90 days” and “3 months” are close without being the same, and the gap can reach two days, since three calendar months last 89 to 92 days. That is enough to miss a deadline. If a document says 90 days, enter 90 in the days box. If it says three months, enter 3 in the months box. Don’t convert one to the other. For common spans there are ready pages too: 90 days from today and 12 weeks from today.

The month-end rule

The difficult case is a start date near the end of a month. January 31 plus one month has no exact answer, because February 31 does not exist. There are two possible conventions: stop at the last day of the shorter month, or let the extra days spill into the next one. This calculator stops at the last day. Excel’s EDATE, Java’s plusMonths and .NET’s AddMonths do the same, so results here should match your software. The result carries a note whenever this happens.

CalculationResultWhy
January 31, 2027 + 1 monthSunday, February 28, 2027The day is cut back to the end of February
January 31, 2028 + 1 monthTuesday, February 29, 20282028 is a leap year, so February has 29 days
February 29, 2028 + 1 yearWednesday, February 28, 2029No February 29 in 2029, so it stops on the 28th
August 31, 2027 + 6 monthsTuesday, February 29, 2028February again: 28 or 29 depending on the year
March 31, 2027 − 1 monthSunday, February 28, 2027Subtracting clamps too
November 2, 2027 + 90 daysMonday, January 31, 2028Days are counted one by one, so month length never matters
November 2, 2027 + 3 monthsWednesday, February 2, 2028Same day number, a different number of days
May 31, 2027 + 1 month + 1 dayThursday, July 1, 2027Months first, then days

Date arithmetic that uses months does not always undo itself. January 31, 2027 plus one month is February 28, 2027, and that date minus one month is January 28, 2027, not January 31. The clamp discards information that subtraction cannot get back. Recurring dates should therefore always be calculated from the original date. A monthly bill due on the 31st is calculated as “start + 2 months”, not “last due date + 1 month”, or it will drift to the 28th after the first February and stay there.

The order of operations

When you combine units, order can matter. This calculator applies years and months first, as one step, and then weeks and days. So it handles “1 year and 2 months” as 14 months at once, with a single clamp at the end. That matches how people read such a phrase. A deadline written as a sequence, such as “one month, then a further 10 days”, gives the same answer here. Where a rule specifies a different order, apply the steps one at a time and feed each result back in as the new start date.

Leap years

A leap day only affects a calculation that crosses it. Adding 365 days to a date before February 29 in a leap year lands one day earlier in the following year’s calendar than you might expect: 365 days from February 1, 2028 is January 31, 2029. Adding one calendar year to the same date gives February 1, 2029, which is 366 days. Adding a year to February 29 gives February 28, because the next year has no leap day. The Gregorian rule behind this is that a year divisible by 4 is a leap year, except century years not divisible by 400.

Business days are a different count

Tick “Days are business days” and the days part skips Saturdays and Sundays. Five business days after a Monday is the next Monday, so 5 business days takes 7 calendar days, and 10 business days takes 14. The rule is not simple multiplication, though. Starting on a Friday, one business day takes 3 calendar days. For public holidays, a different weekend, or a working-day count between two dates, use the business days calculator.

Common uses, and what to check

This calculator works in calendar dates, with no time of day, so clock changes do not affect it. For hours and minutes, including across a daylight saving change, use the time calculator. To find the distance between two dates you already know, use days between dates.

In a spreadsheet, adding a number to a date cell adds days, =EDATE(A1,3) adds three months, and =WORKDAY(A1,10) adds ten working days. All three treat the start date as day zero, as this tool does.

Questions

How do I add days to a date?
Enter the start date and the number of days, and the result appears as you type. To do it by hand, take the days left in the month, subtract them from the number, and keep going month by month. Adding 45 days to March 20 takes 11 days to reach March 31, 30 more to reach April 30, and 4 more to reach May 4.
How do I subtract days from a date?
Switch the direction to “before”. The calculator counts back that number of calendar days, so 30 days before March 15, 2027 is February 13, 2027.
What is the difference between 30 days and one month?
Thirty days is a fixed length. One month keeps the day number, so it lasts 28 to 31 days depending on the month it starts in. Starting January 15, 2027, one month ends on February 15 and 30 days ends on February 14.
What happens when I add a month to January 31?
There is no February 31, so the result is the last day of February: the 28th, or the 29th in a leap year. Excel’s EDATE function, Java, .NET and Python’s dateutil all use the same rule.
Does the start date count as day one?
No. The start date is day zero and the next day is day 1. If your rule counts the start date as day 1, subtract one from the number you enter.
How do I calculate a date in weeks?
Use the weeks box. A week is exactly seven days, so a whole number of weeks always lands on the same weekday as the start date.
How do I count only working days?
Tick “Days are business days” and the days part of the amount skips Saturdays and Sundays. To skip public holidays too, use the business days calculator.
Can I add years, months and days together?
Yes. Fill in as many boxes as you need. Years and months are applied first, then weeks and days. The order can change the answer: January 30, 2027 plus 1 month and then 1 day is March 1, while 1 day and then 1 month is February 28.

Related calculators