TODAY Function (LibreOffice Calc)
The TODAY function returns the current date as a dynamic value that updates whenever the spreadsheet recalculates. It is essential for deadlines, schedules, dashboards, and rolling date calculations.
Verification status: Consult the documentation, examples and any stated test scope below. How formula examples are checked
Availability and version history
- Introduced: Documented by LibreOffice 26.8.1.1; original introduction not established.
- Availability: Supported in LibreOffice 26.8.1.1, verified against its function registry. This identifies a supported release, not a final working version.
- Scope: Desktop Calc, using the English function name. Availability in other spreadsheet applications is separate.
- Checked: 2026-10-14 — function reference; versioned support. Documentation/source check; not a new native test. Existing example-specific test claims below retain their stated scope.
What the TODAY Function Does
- Returns the current date
- Updates on recalculation
- Returns a serial date number (integer)
- Contains no time component
- Works in all major spreadsheet applications
It is designed to be simple, stable, and ideal for date‑only logic.
Syntax
TODAY()
Arguments
- None.
Basic Examples
Current date
=TODAY()
Days until a deadline
=A1 - TODAY()
Days since a start date
=TODAY() - A1
Build a label with today’s date
="Report Date: " & TEXT(TODAY(); "YYYY-MM-DD")
Advanced Examples
Rolling 30‑day window
=A1 >= TODAY()-30
Rolling 7‑day forecast
=A1 <= TODAY()+7
Determine if a date is overdue
=A1 < TODAY()
Determine if a date is today
=A1 = TODAY()
Determine if a date is in the future
=A1 > TODAY()
Compute age in years
=YEAR(TODAY()) - YEAR(A1) - (DATE(YEAR(TODAY());MONTH(A1);DAY(A1)) > TODAY())
Compute age in days
=TODAY() - A1
Compute age in months
=(YEAR(TODAY())-YEAR(A1))*12 + MONTH(TODAY()) - MONTH(A1)
First day of current month
=DATE(YEAR(TODAY()); MONTH(TODAY()); 1)
Last day of current month
=EOMONTH(TODAY(); 0)
First day of next month
=EOMONTH(TODAY(); 0) + 1
Determine fiscal year (April–March example)
=YEAR(TODAY() - 90)
Convert TODAY to ISO date string
=TEXT(TODAY(); "YYYY-MM-DD")
Recalculation Behavior
TODAY updates when:
- The sheet recalculates
- You edit any cell
- You press F9
- You reopen the file
TODAY does not update:
- Every second
- In real-time without recalculation
To freeze today’s date:
=TODAY()
Then copy → Paste Special → Values Only.
Edge Cases and Behavior Details
TODAY returns an integer (no fractional time)
TODAY uses system date
TODAY ignores locale formatting
Formatting is applied separately.
TODAY recalculates based on spreadsheet settings
(Manual vs automatic recalculation)
TODAY of an error → error propagates
Common Errors and Fixes
TODAY displays as a number (e.g., 45234)
Cause:
- Cell not formatted as a date
Fix:
- Apply a date format
TODAY not updating
Cause:
- Manual recalculation enabled
Fix:
- Press F9 or enable automatic recalculation
Wrong date
Cause:
- System clock incorrect
Fix:
- Adjust OS date settings
Best Practices
- Use TODAY for date‑only logic
- Use NOW when you need time included
- Use TODAY() - A1 for elapsed days
- Use TEXT(TODAY()) for readable labels
- Freeze dates with Paste Special → Values
- Use TODAY with EDATE/EOMONTH for rolling periods
Related Patterns and Alternatives
- Use NOW for date + time
- Use DATE for constructing dates
- Use DAYS and DATEDIF for intervals
- Use YEAR, MONTH, DAY for extraction
- Use EDATE and EOMONTH for month offsets
By mastering TODAY and its companion functions, you can build powerful, real-time, and fully dynamic date‑driven workflows in LibreOffice Calc.
Reproducible example (tested in LibreOffice Calc)
This standalone example was calculated in LibreOffice Calc 25.2.3.2 and matched the expected value. It is a practical cross-check of one usage, not proof that every example elsewhere on this page is correct.
=YEAR(TODAY())
Expected result: The calendar year at calculation time; this changes over time.
Get the current date; the sample extracts its year and changes with the calendar.
If the result differs, check the referenced cells, argument separators and number formatting. For more information, consult the LibreOffice Calc official help.