Syntax
=EDATE(start_date, months)
start_date- The date to start from.
months- How many months to move. Negative numbers go back in time.
EDATE returns the date a given number of months before or after a start date, on the same day of the month. Use it for renewal dates, probation ends, subscription cycles and anything else measured in months, where adding 30 days would drift.
=EDATE(start_date, months)
start_datemonthsEach subscription runs for the number of months in column B. Return the first one's end date in C2.
Tip: while typing a formula, click a cell or drag across cells to insert references. Press Enter to check, and Tab to accept a function suggestion.
Each example below runs against this sample sheet. The results are calculated by the same engine as the practice grid.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Name | Birthdate | Hire date | Review |
| 2 | Maya | 4/12/1988 | 9/2/2019 | 3/31/2026 |
| 3 | Leo | 11/30/1995 | 1/31/2022 | 6/15/2026 |
| 4 | Ava | 2/28/2001 | 7/14/2025 | 1/31/2026 |
| Formula | Result | What it shows |
|---|---|---|
=EDATE(C2, 6) | 3/2/2020 | Six months after Maya was hired. |
=EDATE(C3, 1) | 2/28/2022 | One month after January 31 is February 28: EDATE stops at the month's last day. |
=EDATE(D2, -12) | 3/31/2025 | One year before Maya's review. |
=EDATE(C4, 3)-1 | 10/13/2025 | The last day of a 3-month probation period. |
Learning step by step? EDATE is covered in Lesson 41: EDATE & EOMONTH of the free course.