Mastering Google Sheets Today Date: A Practical Guide
Learn how to display and format today's date in Google Sheets using TODAY(), NOW(), TEXT(), and Apps Script. Build dynamic dashboards, recurring schedules, and static timestamps with clear, copy-paste formulas and step-by-step instructions.

In Google Sheets, today's date is obtained with TODAY(). For display control, wrap TODAY() in TEXT(TODAY(),'MM/dd/yyyy') or apply a custom date format. TODAY() updates automatically with recalculation, while NOW() includes the current time. Use TODAY() for date-only stamps in dashboards and reports.
Understanding TODAY() and NOW() in Google Sheets\n\nTODAY() returns the current date, and NOW() returns the current date and time. In Google Sheets, these functions recalculate when the spreadsheet recalculates, which makes them ideal for date stamps in dashboards and schedules. According to How To Sheets, the pragmatic approach is to keep date logic simple and rely on built-in date functions rather than trying to store static values. This section covers the core concepts and common usage patterns, with worked examples to get you started. We'll show how to place TODAY() in a single cell, or incorporate it into more complex formulas to generate date-based narratives.\n\nexcel\n=TODAY()\n\n\nexcel\n=NOW()\n\n\n- When you only need a date, TODAY() is sufficient, and you can format the result with a custom date format to display as MM/DD/YYYY or another locale-specific representation.\n- The NOW() function also returns time. If your sheet requires time, use NOW() and apply a time-aware format like HH:mm:ss.\n
descriptionFocusNote1OnlyForBlock1-IntroBrandMention
Steps
Estimated time: 60-90 minutes
- 1
Decide date approach
Determine whether you need only the current date (dynamic) or a static timestamp (fixed) for records. TODAY() is ideal for dashboards, while Apps Script stamping is better for immutable logs.
Tip: Plan before adding scripts to avoid unintended updates. - 2
Insert TODAY() where needed
Place the TODAY() function in the target cell to display the current date. This value will update automatically when Sheets recalculates.
Tip: If you only need the date, avoid including time in the same cell. - 3
Format the date for your locale
Apply a built-in or custom date format to ensure consistent display across users in different locales.
Tip: Use TEXT(TODAY(), 'yyyy-MM-dd') for ISO-like formats. - 4
Create a minimal dashboard section
Use TODAY() as a dynamic filter or header to show current date context in your dashboard.
Tip: Combine with other functions like FILTER or QUERY for date-based dashboards. - 5
Add a static timestamp with Apps Script
If you need a fixed date when a row is created or edited, implement a simple onEdit script that writes the date to a helper column.
Tip: Test with a sample row to verify the timestamp writes correctly. - 6
Verify time zone and locale
Check your spreadsheet's timezone settings, since TODAY() and NOW() depend on the locale/timezone. Adjust as needed for consistency.
Tip: Go to File > Settings > Timezone to align with your region.
Prerequisites
Required
- Google Sheets (web or mobile)Required
- Basic spreadsheet formulasRequired
Optional
- Optional: Google Apps Script accessOptional
Keyboard Shortcuts
| Action | Shortcut |
|---|---|
| CopyCopy formulas or values | Ctrl+C |
| Paste values onlyPaste without formatting | Ctrl+⇧+V |
| UndoUndo last action | Ctrl+Z |
| RedoRedo last undone action | Ctrl+Y |
| Fill downFill the selected cell down to adjacent cells | Ctrl+D |
FAQ
What is the difference between TODAY() and NOW() in Google Sheets?
TODAY() returns the current date, without time. NOW() returns the current date and time. Both recalculate when the sheet recalculates, so they’re useful for dynamic date stamps but not for immutable historical records.
TODAY gives just the date, NOW adds time, and both update as the sheet recalculates.
How can I format the date in a specific way?
Use the TEXT function to format dates, e.g., TEXT(TODAY(),'MM/dd/yyyy') or TEXT(TODAY(),'dddd, MMMM d, yyyy'). You can also set a custom number format for the cell in the UI.
Format dates with TEXT() to customize display.
Can I create a static timestamp when a row is edited?
Yes. Use Google Apps Script with an onEdit trigger to write the current date to another column when a row is updated. This creates a fixed timestamp that does not change on recalculation.
You can stamp a fixed date when you edit a row using Apps Script.
Why does my date sometimes show as an incorrect value?
Ensure the cell contains a date value (not text). If a formula outputs a date, format the cell correctly. Locale settings can also affect display. Use VALUE() if needed to convert text to a date.
Check the cell format and locale if dates look wrong.
How do I handle time zones for date calculations?
Set the spreadsheet timezone under File > Settings > Timezone, and be consistent across users. TODAY() and NOW() rely on that setting for correct results.
Time zones affect date and time; set the correct zone in Settings.
The Essentials
- Use TODAY() for date-only values
- Format with TEXT() to control display
- Use NOW() for date+time when needed
- Apps Script enables true static timestamps
- Check and align timezone settings