Date & Time

EOMONTH Formula

EOMONTH returns the last day of the month that is a specified number of months before or after a start date. It always lands on the final calendar day (28, 29, 30, or 31) of the target month, making it ideal for month-end reporting deadlines, billing cycles, and financial period boundaries.

Syntax

EOMONTH(start_date, months)
ParameterDescription
start_date Parameter of the EOMONTH function.
months Parameter of the EOMONTH function.
Try EOMONTH in Viztab — free, no signup

Examples

End of current month

Formula
=EOMONTH(TODAY(), 0)
Returns the last day of the current month. If today is April 9, 2026, returns April 30, 2026.

End of next month

Formula
=EOMONTH("2026-01-15", 1)
Returns February 28, 2026 — the last day of the month one month after January.

First day of current month

Formula
=EOMONTH(TODAY(), -1) + 1
Returns the first day of the current month by getting the end of the PREVIOUS month and adding 1. A classic formula trick.

Common Errors

#VALUE!

Occurs when the start_date is not a valid date or months is non-numeric.

#NUM!

Occurs when the resulting date is before the date system's minimum date.

Tips

First day of month trick

=EOMONTH(A1,-1)+1 gives the first day of A1's month. This is one of the most common EOMONTH tricks.

Month 0 = same month's end

EOMONTH(date, 0) returns the end of the same month as the date. Month -1 = end of previous month, month 1 = end of next month.

Handles leap years

EOMONTH automatically accounts for leap years. EOMONTH("2024-01-15", 1) returns Feb 29, 2024 in a leap year.

Try EOMONTH in Viztab

Import your data and use EOMONTH with 370+ other formulas. No signup required.

Open Viztab

Related Formulas