Date & Time
TODAY function: calculate live invoice days overdue and rolling deadlines
Compare due dates against TODAY() for live accounts-receivable aging without time-of-day fraction bugs.
Why TODAY() beats NOW() for calendar-day aging
TODAY() returns the current calendar date as a clean integer serial number with no fractional clock time (so TODAY() = INT(NOW()) is always TRUE).
Subtracting a past DueDate from TODAY() gives exact whole calendar days overdue: TODAY() - DueDate = 35 when the invoice was due 35 days ago.
| Invoice (A) | DueDate (B) | TODAY() - B | Status |
|---|---|---|---|
| INV-401 | =TODAY() - 35 | 35 | Overdue 30+ |
| INV-402 | =TODAY() + 10 | -10 | Upcoming |
Flag 30+ day overdue invoices automatically
Wrapping TODAY() - B2 inside IF flags past-due accounts every morning when the workbook opens—and never overwrites a static historical stamp unless intended.
=IF(TODAY() - B2 >= 30, "Overdue 30+", "Current")Verify zero-time integer invariant
Because TODAY() has no time component, adding 14 days to TODAY() always lands exactly 14.0 serial days ahead.
=TODAY() = INT(NOW())Try the example
Use the original values or change them to test your understanding.