Skip to main content

EDATE

Returns a date that is a specified number of months before or after a start date.

Quick Example

=EDATE("2025-01-15", 3)

Returns April 15, 2025 (3 months after January 15).

Syntax

=EDATE(start_date, months)

Arguments

  • start_date (required): The starting date
  • months (required): Number of months to add (positive) or subtract (negative)

Examples

=EDATE(TODAY(), 3)              // 3 months from today
=EDATE("2025-01-15", -2) // 2 months before Jan 15, 2025
=EDATE(DATE(2025,1,31), 1) // Feb 28 or 29, 2025
=EDATE(A1, 12) // 1 year after date in A1

How It Works

Month Addition

EDATE adds months intelligently:

  • Preserves day of month when possible
  • Adjusts to last day of month if day doesn't exist
  • Handles year transitions automatically

Day Adjustment

=EDATE("2025-01-31", 1)  // Returns Feb 28, 2025 (Feb has no 31st)
=EDATE("2025-03-31", -1) // Returns Feb 28, 2025

Common Use Cases

  • Calculate payment due dates
  • Find subscription renewal dates
  • Project timelines
  • Loan maturity dates
  • Contract end dates

Calculate Loan Maturity

=EDATE(StartDate, LoanTermMonths)

Next Quarter

=EDATE(TODAY(), 3)

Same Date Last Year

=EDATE(TODAY(), -12)

Error Handling

ErrorCauseSolution
#VALUE!Invalid dateCheck start_date is valid date
#VALUE!months not numericProvide number for months

Technical Details

  • Handles leap years correctly
  • Adjusts for months with different day counts
  • Uses same date calculation as DATE function
  • Compatible with Excel EDATE
  • DATE - Create specific date
  • TODAY - Current date
  • YEAR - Extract year
  • MONTH - Extract month
  • DAY - Extract day