TODAY & NOW: Current Date & Time (2025)
Quick Answer: TODAY() returns current date (12/3/2025). NOW() returns date + time (12/3/2025 14:30). Both update automatically. No parameters needed. Use for aging, deadlines, timestamps. Press F9 to refresh.
What are TODAY and NOW?
TODAY and NOW are Excel's dynamic date/time functions. They return the current date (TODAY) or current date and time (NOW). Both update automatically when the workbook recalculates.
TODAY()
=TODAY()
Returns: 12/3/2025
Current date only (no time)
When it updates:
• Workbook opens
• Press F9 (recalculate)
• Cell edit triggers calc
NOW()
=NOW()
Returns: 12/3/2025 14:30:45
Current date AND time
When it updates:
• Same as TODAY
• Every recalculation
• More volatile than TODAY
How Excel Stores Dates:
Behind the scenes:
Excel stores dates as serial numbers starting from 1/1/1900 = 1
TODAY() = 45995 (displays as 12/3/2025)
NOW() = 45995.60347 (date + time decimal)
The decimal part represents the time: 0.5 = noon, 0.25 = 6 AM, 0.75 = 6 PM
Quick Comparison:
| Feature | TODAY | NOW |
|---|---|---|
| Returns | Date only | Date + Time |
| Format | 12/3/2025 | 12/3/2025 14:30 |
| Parameters | None | None |
| Updates | Daily | Every recalc |
| Use for | Dates, aging | Timestamps, logs |
⚠️ Volatile Functions
TODAY and NOW are volatile - they recalculate whenever Excel recalculates, even if nothing changed. This can slow down large workbooks.
Tip: Use sparingly in complex workbooks. For static dates, use Ctrl+; (date) or Ctrl+Shift+; (time).
💡 Common Use Cases
- • Age calculations: Calculate days/months/years since a date
- • Deadline tracking: Days until due date
- • Aging reports: Invoice age, inventory age
- • Timestamps: Log when action occurred
- • Auto-updating headers: "Report as of [today]"
- • Conditional formatting: Highlight overdue items
TODAY and NOW Syntax
TODAY Function
=TODAY()
No parameters required
Returns the current date as a serial number that Excel displays as a date.
Examples:
=TODAY() → 12/3/2025
=TODAY()+7 → 12/10/2025 (one week later)
=TODAY()-30 → 11/3/2025 (30 days ago)
NOW Function
=NOW()
No parameters required
Returns the current date and time as a serial number that Excel displays as date and time.
Examples:
=NOW() → 12/3/2025 14:30:45
=NOW()+1 → 12/4/2025 14:30:45 (24 hours later)
=NOW()+1/24 → 12/3/2025 15:30:45 (1 hour later)
Time Math Quick Reference
Add/Subtract Days
=TODAY()+1 → tomorrow
=TODAY()-7 → week ago
Add/Subtract Hours
=NOW()+1/24 → +1 hour
=NOW()-2/24 → -2 hours
Add/Subtract Minutes
=NOW()+30/1440 → +30 min
=NOW()-15/1440 → -15 min
Add/Subtract Months
=EDATE(TODAY(),1) → +1 month
=EDATE(TODAY(),-3) → -3 months
Extract Date/Time Parts
Current Year
=YEAR(TODAY()) → 2025
Current Month
=MONTH(TODAY()) → 12
Current Day
=DAY(TODAY()) → 3
Current Hour
=HOUR(NOW()) → 14
Current Minute
=MINUTE(NOW()) → 30
Date Only from NOW
=INT(NOW()) → 12/3/2025
Time Only from NOW
=MOD(NOW(),1) → 0.604 (14:30)
⚠️ Important Notes
- • No parentheses content: TODAY() and NOW() take no parameters - always use ()
- • Volatile recalculation: Updates every time Excel recalculates (F9 or any cell edit)
- • System dependent: Uses your computer's system clock
- • Not real-time: Doesn't update continuously, only on recalc
- • Circular reference: Don't use in cells that reference themselves
10+ TODAY & NOW Examples
Age & Duration Calculations
1. Days Since Date
=TODAY()-A2
If A2 = 11/1/2025, returns 32 days
2. Days Until Deadline
=A2-TODAY()
If A2 = 12/31/2025, returns 28 days remaining
3. Age in Years
=DATEDIF(A2, TODAY(), "Y")
Calculate exact age from birthdate
4. Months Between Dates
=DATEDIF(A2, TODAY(), "M")
Invoice age in months
Conditional Logic
5. Overdue Check
=IF(A2<TODAY(), "Overdue", "On Time")
Check if deadline passed
6. Days with Warning
=IF(A2-TODAY()<7, "Due Soon!", A2-TODAY()&" days")
Warn if deadline within 7 days
7. Current vs Future
=IF(A2>TODAY(), "Future", "Past/Current")
Categorize dates
Dynamic Date Ranges
8. Start of Current Month
=DATE(YEAR(TODAY()), MONTH(TODAY()), 1)
Returns 12/1/2025
9. End of Current Month
=EOMONTH(TODAY(), 0)
Returns 12/31/2025
10. Last 30 Days Filter
=AND(A2>=TODAY()-30, A2<=TODAY())
TRUE if date in last 30 days
Timestamps & Headers
11. Report Header
="Report as of "&TEXT(TODAY(), "mmmm d, yyyy")
Returns: "Report as of December 3, 2025"
12. Timestamp Log
=TEXT(NOW(), "mm/dd/yyyy hh:mm AM/PM")
Returns: "12/03/2025 02:30 PM"
13. Week Number
="Week "&WEEKNUM(TODAY())
Returns: "Week 49"
🎯 Pro Tips
- • Static dates: Ctrl+; inserts today's date (won't update)
- • Static time: Ctrl+Shift+; inserts current time (won't update)
- • Format control: Use TEXT() to format date/time display
- • Conditional formatting: Highlight cells where A1<TODAY() for overdue items
- • Performance: Minimize use in large workbooks (volatile functions)
- • Time zones: Uses computer's system time, not server time
Frequently Asked Questions
How do I stop TODAY or NOW from automatically updating?
TODAY/NOW are volatile and always update. To freeze: (1) Copy the cell, (2) Paste Values (Ctrl+Shift+V) to convert to static date. Or use keyboard shortcuts: Ctrl+; for static date, Ctrl+Shift+; for static time. These insert values, not formulas.
Why does my TODAY() show the wrong date?
TODAY uses your computer's system clock. Check: (1) System date/time settings are correct, (2) Time zone is set properly, (3) Excel is set to automatically update calculations (File → Options → Formulas). Press F9 to force recalculation.
Does TODAY() update in real-time?
No. TODAY and NOW update when Excel recalculates: (1) Opening workbook, (2) Pressing F9, (3) Editing any cell, (4) Saving file. Not real-time - doesn't update every second. For continuous time, use VBA or add-ins.
How do I calculate business days from TODAY?
Use WORKDAY: =WORKDAY(TODAY(), 10) adds 10 business days (excludes weekends). For custom holidays: =WORKDAY(TODAY(), 10, Holidays) where Holidays is range of holiday dates. WORKDAY.INTL for custom weekends.
Can I use TODAY in conditional formatting?
Yes! Highlight overdue: Formula = $A1<TODAY(). Highlight due soon: Formula = AND($A1>=TODAY(), $A1<=TODAY()+7). Highlight future: Formula = $A1>TODAY(). Use $ for column but not row to apply to entire column.
What's the difference between NOW() and TODAY()+TIME()?
NOW() returns current date AND time from system. TODAY()+TIME(hour,min,sec) combines today's date with specific time. Example: =TODAY()+TIME(9,0,0) = today at 9 AM. NOW() is dynamic, TODAY()+TIME is partial static.