Current Date & Time Functions
Get the current date, time, or datetime for calculations that need to reference "now" — like countdowns, age verification, deadline tracking, or time-based logic.
Functions
CURRDATE / TODAY — Current date (no time)
CURRDATETIME — Current date and time
CURRTIME — Current time (no date)
CURRDATE / TODAY
Syntax: CURRDATE() or TODAY()
Returns today's date. Both functions are identical — use whichever reads better in your formula.
Examples
Calculate due date 30 days from now:
ADDDAYS(CURRDATE(), 30)Check if event is in the past:
DAYS(EVENT_DATE, CURRDATE()) < 0Display current year:
`© ${YEAR(CURRDATE())} Your Company`Calculate age:
DATEDIFF(BIRTH_DATE, CURRDATE(), "years")Updates automatically when the formula recalculates. Great for "days since" or "days until" calculations.
Use CURRDATE for date-only calculations. If you need the current time too, use CURRDATETIME.
CURRDATETIME
Syntax: CURRDATETIME()
Returns the current date and time with precision to the second.
Examples
Log timestamp:
SUBMISSION_TIME = CURRDATETIME()Calculate hours until deadline:
DATEDIFF(CURRDATETIME(), DEADLINE, "hours")Meeting in 2 hours:
ADDHOURS(CURRDATETIME(), 2)Time-based pricing (rush orders):
IF(HOUR(CURRDATETIME()) >= 17, BASE_PRICE * 1.5, BASE_PRICE)Use for precise time tracking, scheduling, or countdown timers that include hours and minutes.
CURRTIME
Syntax: CURRTIME()
Returns the current time without the date component.
Examples
Check if business is open (9 AM - 5 PM):
HOUR(CURRTIME()) >= 9 AND HOUR(CURRTIME()) < 17Display current time:
`Current time: ${HOUR(CURRTIME())}:${MINUTE(CURRTIME())}`After-hours fee:
IF(HOUR(CURRTIME()) >= 18 OR HOUR(CURRTIME()) < 8,
"After-hours rate applies",
"Standard rate")Useful when you only care about time of day, not the specific date — like business hours or daily schedules.
Common Patterns
Days until deadline:
DAYS(CURRDATE(), DEADLINE_DATE)Hours remaining in day:
24 - HOUR(CURRTIME())Is it the weekend?
WEEKDAY(CURRDATE()) = 1 OR WEEKDAY(CURRDATE()) = 7Age verification (18+):
DATEDIFF(BIRTH_DATE, CURRDATE(), "years") >= 18Subscription renewal soon:
DAYS(CURRDATE(), RENEWAL_DATE)Common Mistakes
Using CURRDATE for time-based logic: If you need hours/minutes, use CURRDATETIME instead.
Comparing CURRTIME to DATETIME: CURRTIME returns only time. Use CURRDATETIME for full datetime comparisons.
Expecting static values: These functions recalculate on every form submission. Not suitable for permanent timestamps — store the result in a variable if needed.
See Also
DATE · DATETIME · ADDDAYS · DATEDIFF · YEAR · MONTH · DAY · HOUR