Skip to main content

TODAY

Returns the current date (with no time component).

Quick Example​

=TODAY()

Returns today's date, e.g., 12/23/2025.

Syntax​

=TODAY()

Arguments​

TODAY takes no arguments.

Examples​

Get Current Date​

=TODAY()

Returns the current date

Days Until Event​

=EventDate - TODAY()

Calculate days remaining until an event

Days Since Start​

=TODAY() - StartDate

Calculate days elapsed since a start date

Current Age​

=(TODAY() - BirthDate) / 365.25

Approximate age in years

Is Past Due​

=IF(DueDate < TODAY(), "Overdue", "Current")

Check if a date has passed

Next Week​

=TODAY() + 7

Returns date 7 days from now

How It Works​

Current Date Only​

TODAY returns the date with NO time component:

  • Time is set to midnight (00:00:00)
  • Updates each time the spreadsheet recalculates
  • Based on system date/time

Volatile Function​

TODAY is a volatile function:

  • Recalculates every time the spreadsheet calculates
  • Updates automatically when you open the file
  • Cannot be "frozen" to a specific date
  • Changes daily as the system date changes

Date Serial Number​

Internally, dates are stored as numbers:

  • Excel epoch: Days since December 30, 1899
  • Each day = 1.0
  • TODAY() returns this as a formatted date

Common Use Cases​

Calculate Age​

=YEAR(TODAY()) - YEAR(BirthDate)

Calculate age in years

Days Until Deadline​

=Deadline - TODAY()

Days remaining

Current Month​

=MONTH(TODAY())

Get current month number

Current Year​

=YEAR(TODAY())

Get current year

Is This Year​

=YEAR(A1) = YEAR(TODAY())

Check if a date is in the current year

Timestamp for Records​

=TODAY()

Record when entry was created (updates daily)

Error Handling​

Argument Error​

If you provide any arguments, TODAY returns an error:

=TODAY(5)

Returns #VALUE! (TODAY takes no arguments)

Common Errors​

ErrorCauseSolution
#VALUE!Arguments providedUse =TODAY() with no arguments
#NAME?Function name misspelledCheck spelling

Technical Details​

Implementation Notes​

  • Takes exactly 0 arguments
  • Returns current date from system clock
  • Volatile function (recalculates frequently)
  • Uses Excel-compatible date epoch
  • Adjusts for user's timezone

Excel Epoch​

Sum Buddy uses Excel's date system:

  • Day 1 = January 1, 1900
  • Includes Excel's leap year bug (treats 1900 as leap year)
  • Compatible with Excel date calculations

Timezone Handling​

TODAY returns date in the user's local timezone:

  • Uses system timezone offset
  • Adjusts to show correct local date
  • Midnight in user's timezone

Comparison: TODAY vs NOW​

TODAY - Date Only​

=TODAY()  // Returns 12/23/2025 (no time)

NOW - Date and Time (if available)​

=NOW()  // Returns 12/23/2025 14:30:00

Key Differences​

  • TODAY: Midnight (no time component)
  • NOW: Current date and time
  • Both are volatile functions

Advanced Examples​

First Day of Current Month​

=DATE(YEAR(TODAY()), MONTH(TODAY()), 1)

Last Day of Current Month​

=DATE(YEAR(TODAY()), MONTH(TODAY())+1, 0)

Days in Current Month​

=DAY(DATE(YEAR(TODAY()), MONTH(TODAY())+1, 0))

Business Days Until Date​

=NETWORKDAYS(TODAY(), TargetDate)

(If NETWORKDAYS available)

Age on Specific Date​

=(SpecificDate - BirthDate) / 365.25
=((TODAY() - BirthDate) / 365.25)

Conditional Formatting Helper​

=IF(A1 < TODAY(), "Past", IF(A1 = TODAY(), "Today", "Future"))

Date Arithmetic​

Add Days​

=TODAY() + 30  // 30 days from now

Subtract Days​

=TODAY() - 7  // 7 days ago

Add Months​

=EDATE(TODAY(), 3)  // 3 months from now

Difference Between Dates​

=FutureDate - TODAY()  // Days until future date

Making TODAY Static​

If you need a date that doesn't update:

Copy and Paste Values​

  1. Enter =TODAY()
  2. Copy the cell
  3. Paste as Values

This converts the formula to a static date.

Use DATE Instead​

=DATE(2025, 12, 23)

Specific date that won't change

  • DATE - Create specific date
  • YEAR - Extract year from date
  • MONTH - Extract month from date
  • DAY - Extract day from date
  • EDATE - Add months to date