Skip to content
Search

Formula functions

A formula field calculates its value from other fields. A function name can be written in capitals or in small letters. In the formula editor, point at a function under Functions to see what it does.

In a calculation such as +, * or ROUND, an empty value makes the result empty. A division by 0 is empty too. There are three exceptions:

  • Tracked time with nothing logged counts as 0.
  • IF with an empty first value gives its third value.
  • ISEMPTY, HAS and ANYOF always give 1 or 0.
FunctionReturnsExample
ROUNDThe number rounded to the given decimal places, 0 when left outROUND({Estimate (h)} * 1.2, 1)
FLOORThe number rounded down to a whole numberFLOOR({Estimate (h)})
CEILThe number rounded up to a whole numberCEIL({Estimate (h)})
ABSThe number without its signABS({Estimate (h)} - {Tracked Time (h)})
MINThe smallest of its valuesMIN({Estimate (h)}, 40)
MAXThe largest of its valuesMAX({Estimate (h)}, 1)
SUMIts values added togetherSUM({Design}, {Build}, {Test})
AVGThe average of its valuesAVG({Design}, {Build})
FunctionReturnsExample
RATEThe hourly cost rate of the item’s assignees today. Several assignees give their average. An item nobody is assigned to uses the organization default. Empty when an assignee has no rate{Estimate (h)} * RATE()
  • No field holds the cost rate. In the formula editor, Cost rate under Fields adds RATE() to the formula.
  • A formula that uses RATE, directly or through another formula, shows only to a role that may read financial data and time logs. Everyone else sees a dash, and a filter on it is not applied for them.
  • A formula that uses Budget, directly or through another formula, shows only to a role that may read financial data. Everyone else sees a dash, and a filter on it is not applied for them.
  • ROLLUP cannot read a formula that uses RATE. The field’s own roll-up still totals it in a view.
  • A formula that uses RATE cannot be the source of a field copy, and an automation cannot use RATE.
FunctionReturnsExample
IFThe second value when the first is not 0, otherwise the thirdIF({Estimate (h)} > 40, 1, 0)
ISEMPTY1 when a select field holds no option, otherwise 0ISEMPTY({Priority})
HAS1 when a select field holds the named option, otherwise 0HAS({Priority}, "Critical")
ANYOF1 when a select field holds any of the named options, otherwise 0ANYOF({Priority}, "High", "Critical")
FunctionReturnsExample
DATEADDA date moved by a number of days, weeks, months or yearsDATEADD({Due date}, 7, "days")
DATEDIFFThe days or weeks from the second date to the firstDATEDIFF({Due date}, TODAY(), "days")
TODAYThe date todayTODAY()
DATEA fixed date, written as year, month and dayDATE("2026-12-31")
YEARThe year of a dateYEAR({Due date})
MONTHThe month of a date, from 1 to 12MONTH({Due date})
DAYThe day of the month of a dateDAY({Due date})
WEEKDAYThe day of the week, from 1 for Monday to 7 for SundayWEEKDAY({Due date})
STARTOFMONTHThe first day of the month a date is inSTARTOFMONTH({Due date})
ENDOFMONTHThe last day of the month a date is inENDOFMONTH({Due date})
FunctionReturnsExample
ROLLUPA field rolled up over the item and every item below itROLLUP({Estimate (h)}) - ROLLUP({Tracked Time (h)})
  • ROLLUP takes exactly one field reference. The field must be a number field, a tracked time field, or a formula whose result is a number.
  • A calculation, the Cost field and a nested ROLLUP are refused. To roll up a calculation, roll up a formula field that holds it.
  • The result follows the field’s own Rollup setting. Tracked time is returned in hours.