TODAY

Return today's date, with no time attached, updating whenever the sheet recalculates.

Syntax

TODAY()

Examples

Every example below was executed against VisiGrid engine 0.31.0 — not transcribed from another vendor's documentation. Reproduce any of them with vgrid calc.

Formula Result Notes
=ISNUMBER(TODAY()) TRUE A date is a number, which is what makes date arithmetic work.
=TODAY()=INT(TODAY()) TRUE No time component — that is the whole difference from NOW.
=YEAR(TODAY())>=2024 TRUE
=TODAY()+1>TODAY() TRUE Adding 1 moves to tomorrow, because the unit is one day.

Why the examples look strange

Every other page here prints a result. This one cannot — TODAY() returns a different number tomorrow, so an example saying 46245 would be wrong within a day and wrong forever after.

So the examples assert the shape instead: that it is a number, that it has no time component, that adding one moves a day. Those stay true whenever you read them, and the build executes them like every other example on this site.

It is the same problem anyone testing a spreadsheet has. Comparing against a fixed date works for exactly one day; comparing properties works always.

It changes under you

TODAY() is recalculated, not stamped. Open a sheet tomorrow and every formula built on it gives a different answer — which is right for “days until due” and wrong for “the date this invoice was raised”.

For a date that must not move, type it in. DATE(2026,8,11) is a fact; TODAY() is a question the sheet re-asks every time it recalculates. Getting that backwards is how an audit trail quietly rewrites itself.

Days between now and then

Subtraction, because a date is a number:

=A1 - TODAY()          → days until the date in A1
=DAYS(A1, TODAY())     → the same, with the arguments named

For working days rather than calendar days, use NETWORKDAYS, which skips weekends and counts both ends.

Excel compatibility

Matches Excel. Takes no arguments and returns a whole-number date serial.

Related functions

Last updated