Adding a month is not adding thirty days
One month from 31 January is 28 February. Add 31 days instead and you get 3 March, which is a different date, three days later, and not what anybody meant.
Every contract, notice period, warranty and payment term that says "a month" means the calendar month: the same day number in the next month, or the last day of it if that day does not exist. This clamps rather than rolling over, and it tells you when it has done so.
It matters most at the ends of short months. 29, 30 and 31 January all clamp to 28 February in an ordinary year, which means three different start dates share one end date. That is correct, and it surprises people every time.
Order of operations
Months and years go on first, then flat days. A month and 14 days from 31 January is 28 February plus 14, which is 14 March. Doing it the other way round gives 17 March, and both look equally plausible on a schedule until somebody misses a deadline.
Clamping is not reversible, and that is expected
31 January plus a month is 28 February. 28 February minus a month is 28 January, not back to the 31st. The clamp loses information because there is no 31 February to remember. Anywhere a date is derived by adding months, derive it from the original date rather than by stepping backwards from the derived one.
Calendar days, not working days
Everything here counts every day: weekends, bank holidays, Christmas. That is right for a deadline expressed in days, which most contractual ones are, and wrong for one expressed in working days.
Payment terms are usually the calendar sort. Net 30 means 30 calendar days. Statutory deadlines, adjudication timetables and notice provisions are more often working days, and those need the working days calculator with the right bank holidays for your nation.
Leap years are handled properly
A year is divisible by four to be a leap year, unless it is divisible by 100, unless it is also divisible by 400. So 2024 and 2000 were leap years, 1900 was not, and 2100 will not be. That rule is applied here rather than assumed away.
One year from 29 February clamps to 28 February in the three following years and returns to the 29th once the next leap year comes round.
Common questions
Is adding a month the same as adding 30 days?
No. One month from 31 January is 28 February, whereas adding 31 days gives 3 March, a different date three days later. Every contract or notice period that says "a month" means the calendar month: the same day number in the next month, or the last day of it if that day does not exist.
What happens when I add a month to 31 January?
It clamps to 28 February, because there is no 31 February to move to. The tool tells you when this clamping has happened, and it means 29, 30 and 31 January all land on the same end date in an ordinary year, which surprises people every time.
If I add a month and 14 days, which happens first?
Months and years are added first, then flat days. A month and 14 days from 31 January is 28 February plus 14, which is 14 March. Doing it in the other order gives 17 March instead, and both look equally plausible on a schedule until somebody misses a deadline because of it.
Can I reverse a date calculation by subtracting the same period?
Not always, because clamping loses information. 31 January plus a month is 28 February, but 28 February minus a month is 28 January, not back to the 31st. Where a date is derived by adding months, work it out from the original date rather than by stepping backwards from the result.
Does this calculator count weekends and bank holidays?
Yes, it counts every calendar day, including weekends and Christmas. That is correct for a deadline expressed in calendar days, such as most payment terms, but wrong for one expressed in working days, which needs the working days calculator instead.
How are leap years handled?
Properly: a year is a leap year if divisible by four, unless it is also divisible by 100, unless it is also divisible by 400. So 2024 and 2000 were leap years, 1900 was not, and 2100 will not be, and that rule is applied here rather than assumed.