Calendar desk
Add Months to Date
Move a date forward by whole calendar months, clamping to the last valid day.
Add Months to Date: Move a date forward by a specified number of calendar months while keeping its day number wherever possible. If the destination month is shorter, the result uses that month's final day. Adding one month to 31 January therefore reaches February's last day, rather than spilling into March. Runs 100% locally in your browser with zero server file uploads.
- Category
- Calculators
- Runs
- In your browser
- Cost
- Free · no sign-up
- Availability
- Ready to use
Result date
—
- Months added
- —
Result date = date + whole months; day = min(original day, target month's last day)- Dates are calendar dates at UTC midnight; no local timezone or daylight-saving adjustment is applied.
- Results are planning utilities. Public holidays, locale-specific work rules, and company policies are not inferred.
- Month arithmetic clamps invalid target days: January 31 plus one month becomes February 28 (or February 29 in a leap year).
Calendar-month formula with a leap-year example
Write the starting year, month and day as Y, M and D, with months numbered 1 to 12. For an offset N, the destination month index is 12Y + (M − 1) + N. Divide that index by 12 to obtain the new year and month. The destination day is min(D, L), where L is the number of days in the destination month.
For 2024-01-31 and N = 1, the target month is February 2024. Its length L is 29, so min(31, 29) = 29. The widget returns 2024-02-29 and 1 month added. This example advances by 29 calendar days; the month input is not multiplied by a constant day length.
Month ends and recurring schedules
The US Naval Observatory's leap-year explanation (https://aa.usno.navy.mil/faq/leap_years) gives the Gregorian rule: divisibility by four, except centuries not divisible by 400. That determines February's available day numbers.
For a recurring payment anchored to the 31st, calculate each occurrence from the original anchor with its full month offset. Reusing a shortened February result can drift to an earlier day in later months. This tool preserves a valid day number where possible; it does not offer a separate always-last-day setting or shift a weekend payment to a weekday.
How to use it
- Enter the original calendar date.
- Set the non-negative whole number of months to add.
- Calculate the destination and check whether its day was shortened at month end.
Privacy & limitations
Dates, times and results stay in your browser. No inputs are uploaded.
Related tools
Frequently asked questions
Where does 31 January land after adding one month?
It lands on 28 February in a common year or 29 February in a leap year. The missing 31st is replaced by the destination month's last valid day.
Is adding two months the same as adding one twice?
Not always. A single two-month move from 31 January retains the original day for March. Two separate one-month moves can lose that day when the first move is shortened in February.
Can I treat a month as thirty days here?
No. The offset changes the calendar month, so the number of intervening days depends on the starting date and the destination. Use add days to date for a fixed day interval.
Free tool · runs in your browser · no account required