Skip to main content

Add or subtract time from a date

Find the date reached by adding or subtracting days, weeks, months or years, with a clear rule for month ends and leap years.

Embed this widget

Customize the result, check the live preview, then copy the code.

Preview

Embed code type

Code to copy

Responsive and automatically resized by Bethemesh.

Was this tool useful?

How does this tool work?

This tool answers questions such as “what date is 90 days from today?”, “what date falls 6 months after 31 August?” or “what day was it 2 years ago?”. Pick a start date, add or subtract a number of days, weeks, months or years, and read the resulting date with its day of the week. The calculation is instant and runs entirely in your browser.

Days and weeks are fixed lengths: the tool moves forward or back by the exact number of days (one week = 7 days), crossing month ends, year ends and 29 February without approximation.

Months and years have no fixed length: the tool keeps the same day of the month and changes the month or year. If that day does not exist in the target month, it uses the last day of the month: 31 January + 1 month = 28 February (29 in a leap year), 31 March − 1 month = 28 or 29 February, 29 February 2024 + 1 year = 28 February 2025. This is the default (“constrain”) behaviour of the JavaScript Temporal standard and of most spreadsheets.

In practice, adding “1 month” is not the same as adding “30 days”, and adding months is not always reversible (31 January + 1 month − 1 month = 28 January). Choose the unit that matches the rule you are applying.

How to use this tool

  1. Choose the start date

    Type the date or pick it from the calendar.

  2. Set the operation and amount

    Choose Add or Subtract, enter a whole number and the unit: days, weeks, months or years.

  3. Read the resulting date

    The result shows the day of the week; copy the calculation link to keep or share it.

Calculation rules

Two different rules depending on the unit.

Days and weeks

result = start date ± n days (weeks: n × 7 days)

Months and years

result = (year, month ± n, min(day, days in target month)); 1 year = 12 months

n
amount entered, a whole number of zero or more
min(…)
the smaller of the two numbers: the day is moved back to the last day of the month if it does not exist

Use cases

“In X days” deadlines

Find the date of a 30-day reminder, a 45-day payment term or a 90-day warranty from a start date.

Monthly or yearly deadlines

Work out the end of a 12-month subscription, a 3-month notice period or a contract anniversary.

Project planning

Place a milestone 6 weeks after a kick-off or count back 8 weeks from a delivery date.

Past dates

Find the date 100 days, 18 months or 10 years ago, for example for a reference period.

Examples

100 days after 11 October 2026

20 days to finish October, then 30 (November) and 31 (December): 19 days remain in January.

Input

10/11/2026 + 100 days

Result

Tuesday, January 19, 2027

One month after 31 January

There is no 31 February, so the date moves back to the last day of February.

Input

01/31/2026 + 1 month

Result

Saturday, February 28, 2026

One year after 29 February

2025 is not a leap year; adding 4 years lands on 29 February 2028 again.

Input

02/29/2024 + 1 year

Result

Friday, February 28, 2025

Tips and best practices

  • For a deadline in business days (excluding weekends), use the business days calculator, which shifts a date by a number of weekdays.
  • To combine units (2 months and 10 days), run two calculations; add the months first, then the days, as the order can change the result at the end of a month.
  • Legal deadlines are often counted from the day after the event and may roll over when the last day is a Saturday, Sunday or public holiday: check the applicable rule before relying on a date.
  • To measure the gap between two known dates, use the date difference calculator instead.

Sources and references

Frequently asked questions

What date is 30, 60 or 90 days from today?

Keep today as the start date, choose “Add”, enter 30, 60 or 90 and the unit Days. The result accounts for the real length of each month and for leap years.

Is adding 1 month the same as adding 30 days?

No. “1 month” keeps the day of the month (15 March to 15 April), whereas “30 days” moves exactly 30 days (15 March to 14 April). Use the unit stated in your contract or rules.

What happens to the 31st when the target month has 30 days?

The date moves back to the last day of the month: 31 May + 1 month = 30 June, 31 January + 1 month = 28 or 29 February. The day never spills over into the next month.

Why does 31 January + 1 month − 1 month give 28 January?

Because the first step moves the date to 28 February; subtracting a month then starts from the 28th and lands on 28 January. Adding months is not always reversible; that is inherent to the calendar.

Can I add hours or minutes?

No, the tool works to the day. To add hours, use the time duration calculator or the hours and minutes sum tool.

Does it work for very old dates?

Yes, it applies the Gregorian calendar to every date, including before its adoption in 1582 (proleptic Gregorian calendar). Convert historical dates recorded in the Julian calendar first.

Related tools

Tools similar or complementary to this one.

Similar tools

Calculate the time between two dates in years, months and days, in total days and in weeks.

Dates & timeFeaturedUse this tool

Count the business days between two dates and shift a date by a number of working days, for a Monday–Friday or other working week.

Dates & timeFeaturedUse this tool

Find out how many days are left until a date, or how many have passed since, with the equivalent in weeks.

Dates & timeFeaturedUse this tool