EDATE Function in Google Sheets: Examples, Pitfalls & Compatibility
EDATE in Google Sheets: move a date by a specified number of calendar months rather than a fixed number of days. Includes worked examples and application-specific cautions.
Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in Google Sheets. How formula examples are checked
Quick answer: Use EDATE in Google Sheets to move a date by a specified number of calendar months rather than a fixed number of days. The official EDATE reference is the source for the function definition and platform-specific rules described below.
Syntax and arguments
=EDATE(start_date, months)
start_date (required): A real date value, preferably supplied by DATE or a validated date cell.
months (required): The signed month offset. Positive moves forward; negative moves backward. A fractional offset is truncated.
Examples use English function names, comma argument separators and decimal points. Adapt formula separators to your workbook settings, not punctuation inside quoted text.
When to use it
Use EDATE for a month-based anniversary or schedule. Adding 30 days is a different rule because calendar months vary in length. Use EOMONTH when the explicit requirement is the last day of the resulting month.
Three worked examples
Each example is independent. Where input cells are listed, enter those values first; otherwise the formula is self-contained. Expected outputs are independently checked calculations or documented error expectations, not captured results from Google Sheets.
Example 1: Advance a shared schedule into the next year
=EDATE(DATE(2025,12,20),2)
Expected result: 2026-02-20 when the result cell is formatted as a date. This ISO date is a readable calendar expectation, not a promise that the function returns text.
The DATE input removes any ambiguity about whether 12/20 denotes a month or day.
Example 2: Move the anchor backward
=EDATE(DATE(2025,12,20),-3)
Expected result: 2025-09-20 when the result cell is formatted as a date. This ISO date is a readable calendar expectation, not a promise that the function returns text.
The month offset is negative, so the resulting calendar date is earlier.
Example 3: Check an offset smaller than one month
=EDATE(DATE(2025,12,20),0.9)
Expected result: 2025-12-20 when the result cell is formatted as a date. This ISO date is a readable calendar expectation, not a promise that the function returns text.
Truncation reduces the offset to zero. Reject such entries when the schedule requires a whole-number month choice.
Put it to work safely
Keep an original anchor date and a separate whole-number month offset for every scheduled row. Calculate from the anchor rather than blindly chaining previous results, particularly when a schedule may meet short months. Test anchors on the 29th, 30th and 31st before release. The main examples deliberately use mid-month dates, where the intended day exists in every destination month.
Common mistakes and fixes
The result appears as a number. A date is represented numerically; format the result as a date before deciding the calendar calculation is wrong.
A slash-separated expression gives a strange result. An unquoted expression such as a/b/c is division, not an unambiguous date literal. Use DATE with numeric year, month and day components.
A decimal month offset is silently shortened. The offset is truncated, not rounded. Validate whole-number offsets when fractional entries indicate a mistake.
Every result must be a month end. That is a different scheduling rule. Use EOMONTH and test the policy instead of assuming an anniversary calculation enforces it.
Google Sheets-specific notes
Google documents the same signed month-offset purpose and warns that formulas do not automatically interpret slash-separated numeric expressions as date literals. Use DATE-generated input and a date display, especially in a shared file with different regional expectations. See the vendor reference for the current definition.
Excel and Google Sheets comparison
The mid-month DATE-based examples avoid ambiguous text-date parsing. Month-end clamping, historical date serials, invalid dates and fractional-time inputs remain specific native test cases rather than a blanket compatibility guarantee.
Compare the EDATE guide for Microsoft Excel and its official documentation. Having a guide in both libraries establishes two documented references, not a certificate of identical behavior across releases, locales or file conversions.
Related guides
Evidence and testing scope
Editorial verification: Official references retrieved on 2026-10-12. The three worked cases are included in this release’s reproducible Python checking suite. It checks the stated arithmetic, calendar or text model and the expected documented error classification; it is not the Google Sheets calculation engine. No native application run, UI screenshot, maximum-size benchmark or cross-version certification is claimed. Review the editorial testing standards before relying on a formula in a critical workbook.