The TODAY function in Excel
TODAY returns the current date, and it updates every time the workbook recalculates. On its own it's just a date, but combined with other dates it powers countdowns, overdue flags and ages that never go stale. It's a favourite in job tests because it shows you understand that dates are numbers.
Syntax
=TODAY()
| (none) | TODAY takes no arguments, but you still need the empty brackets: =TODAY(). |
|---|
Try it yourself
This is a live spreadsheet. Type the formula and press Enter.
In C2, use TODAY to calculate how many days are left until the deadline in B2. Subtract today's date from the deadline. Overdue tasks will show a negative number.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Days left | ||||||
| 2 | |||||||
| 3 | |||||||
| 4 | |||||||
| 5 | |||||||
| 6 | |||||||
| 7 | |||||||
| 8 |
Tip: Dates are numbers, so one date minus another gives the days between them. Put the later date first.
Examples
=B3-TODAY()→ depends on today's dateDates are stored as numbers, so the due date minus today gives the days left. Once the date has passed, the result turns negative.
=IF(B2<TODAY(),"Overdue","Not due")→ depends on today's dateFlags the invoice as overdue when its due date is earlier than today. The label changes by itself as the days go by.
=DATEDIF(D2,TODAY(),"Y")→ depends on today's dateCounts the complete years from Ana's birth date to today: her current age, which goes up on her birthday.
Example data
| 1 | Invoice | Due date | Employee | Date of birth |
|---|---|---|---|---|
| 2 | INV-2207 | 1/31/2025 | Ana Ruiz | 8/12/1990 |
| 3 | INV-2215 | 6/30/2030 | Ben Okoro | 2/3/1985 |
Common mistakes
Forgetting the brackets
=TODAYwithout()returns #NAME?. TODAY has nothing inside its brackets, but they must be there.Using TODAY for a fixed date stamp
TODAY changes every day, so a "date received" column built with it will be wrong tomorrow. To type today's date as a fixed value, press Ctrl+; (Ctrl and semicolon).
Expecting the time too
TODAY gives the date only. Use NOW() when you need the date and the current time.
The result shows as a date
A formula like
=B2-TODAY()can pick up a date format and show something like 1/14/1900. Change the cell's format to General or Number to see the number of days.
FAQ
Does TODAY update automatically?+
It updates whenever the workbook recalculates, for example when you open the file or edit a cell. It isn't a live clock, so a file left open overnight shows yesterday's date until something recalculates.
How do I count working days until a deadline?+
Use NETWORKDAYS with TODAY as the start: =NETWORKDAYS(TODAY(),B2). It skips weekends, and you can add a holiday list as a third argument.
How do I show today's date in a title?+
Join it with TEXT so it reads as a date, not a number: ="Report as of "&TEXT(TODAY(),"mmm d, yyyy").
Lesson
Master TODAY step by step: How Excel stores dates: DATE, YEAR, MONTH, DAY
Learn why every date is secretly a number, then build dates with DATE and take them apart with YEAR, MONTH and DAY.