Skip to main content
SheetCraft
📅 Date & Time Function · beginner

EDATE Function in Google Sheets

Returns a date that is a specified number of months before or after a start date. The cleanest way to compute "next month", "3 months ago", or any month-shifted date.

Syntax

EDATE(start_date, months)

Returns: A date shifted by months from start_date.

Excel equivalent: EDATE (identical)

Parameters

NameRequiredDescription
start_dateRequiredThe reference date.
monthsRequiredNumber of months to shift. Positive = future, negative = past.

Examples

Next month from today

=EDATE(TODAY(), 1)

Returns today's date plus one month. If today is Jan 15, returns Feb 15.

Quarter-end from contract date

=EDATE(A2, 3)

Three months after the contract date — typical for billing cycles.

Subscription expiration

=EDATE(A2, 12)

One year after start. EDATE handles year rollovers and leap-year edge cases automatically.

When to use an alternative

  • EOMONTHYou want the END of the target month (e.g., last day of next month).
  • DATE(YEAR()+1, MONTH(), DAY())You only want to add years and want the explicit construction.
  • Simple date arithmetic (A2 + 30)You want exactly 30 days, not one calendar month.

Common errors and how to fix them

  • Day shifts unexpectedly

    Cause: Starting day doesn't exist in target month (Jan 31 + 1 month).

    Fix: EDATE moves to the last day of the target month in this case (Jan 31 + 1 = Feb 28/29). If you want a fixed day-of-month, use DATE(YEAR(EDATE(...)), MONTH(EDATE(...)), 15).

Related functions

Frequently Asked Questions

What's the difference between EDATE and EOMONTH?

EDATE shifts by months but keeps the same day-of-month. EOMONTH shifts by months and returns the LAST day of the resulting month. EOMONTH(today, 0) = end of current month, EOMONTH(today, 1) = end of next month.

How does EDATE handle leap years?

Correctly — Feb 29 + 12 months = Feb 28 in non-leap years. The function moves to the closest existing date when the exact day doesn't exist in the target month.

Source: Google Sheets official function reference.