Function | Accepts | Returns | Formula | Sort Order | Type | Explanation | Syntax |
---|---|---|---|---|---|---|---|

Settings | 99 | ||||||

false | Checks for logical falsity. Be mindful as it will return “true” if what it’s checking falsity for is indeed false. It would be “true” that it’s false. | false | |||||

true | Checks for logical truthfulness and returns true if true, false if not. | true | |||||

pi | A Mathematical constant and not not a function. Multiply the diameter of any circle by pi and you will have its circumference. | pi | |||||

e | e stands for “Euler’s Constant” and is a mathematical constant and not a function. It’s a specific number that is often needed in math calculations and it’s much easier to type e than 2.718281828459045…… | e | |||||

smallerEq | Checks if the first argument is larger than the second OR equal to it. Requires two values of the same type to be compared.
- Text values compare character count
- Numbers are self explanatory
- Earlier Dates are smaller
- False is smaller than True | text <= text
boolean <= boolean
date <= date
number <= number
smallerEq(text, text)
smallerEq(boolean, boolean)
smallerEq(date, date)
smallerEq(number, number) | |||||

smaller | Checks if the first argument is smaller than the second. Requires two values of the same type to be compared.
- Text values compare character count
- Numbers are self explanatory
- Earlier Dates are smaller
- false is smaller than true | text < text
boolean < boolean
date < date
number < number
smaller(text, text)
smaller(boolean, boolean)
smaller(date, date)
smaller(number, number) | |||||

largerEq | Checks if the first argument is larger than the second OR equal to it. Requires two values of the same type to be compared.
- Text values compare character count
- Numbers are self explanatory
- Later Dates are larger
- True is larger than false | text >= text
boolean >= boolean
date >= date
number >= number
largerEq(text, text)
largerEq(boolean, boolean)
largerEq(date, date)
largerEq(number, number) | |||||

larger | Checks if the first argument is larger than the second. Requires two values of the same type to be compared.
- Text values compare character count
- Numbers are self explanatory
- Later Dates are larger
- True is larger than false | text > text
boolean > boolean
date > date
number > number
larger(text, text)
larger(boolean, boolean)
larger(date, date)
larger(number, number) | |||||

unequal | Checks if its two arguments are unequal. Be mindful that it will return true if they are not equal. Requires two values of the same Data Type. | value != value
unequal(value, value) | |||||

equal | Checks for equality between two arguments. | value == value
equal(value, value) | |||||

or | Checks for truth in either of its two arguments. Does not require both to be true leaving room for optional logic. | boolean or boolean
or(boolean, boolean) | |||||

and | Checks if two arguments are true. Useful when more than one criteria is required for the formulas intention. | boolean and boolean
and(boolean, boolean) | |||||

not | It’s opposite day. Returns the opposite of the boolean in the argument. If the argument is true and you wrap it in not( ), the formula is now returning false. | not boolean
not(boolean) | |||||

unaryPlus | - Strings convert to number if there are no alphabetical characters. Does not require wrapping in quotes.
- Numbers are not necessary to perform unaryPlus on
- True is 1, False is 0
- Dates do not work | + value
unaryPlus(value) | |||||

unaryMinus | Flips the sign of a number. If the number started as positive, it will return negative. If it started negative, it will return positive. | - number
unaryMinus(number) | |||||

mod | Gives the remainder after dividing two numbers. 7 / 2 would equal 3.5 but if you only want to deal in whole numbers, 2 goes into 7 3 whole times for a total of 6 and then you have a remainder of 1. | number % number
mod(number, number) | |||||

pow | Raises the first number to the power of the second number. This means multiplying the first number by itself as many times as given by the second number. | number ^ number
pow(number, number) | |||||

divide | If 4 people share a dozen (12) donuts, how many does each of them get? 12 donuts divided by 4 people (12 / 4) = 3 donuts each. If its a baker’s dozen, you’ll have to fight over the 13th donut. | number / number
divide(number, number) | |||||

multiply | If Jack takes 3 trips to the backyard and picks 4 apples each time, he has 12 apples total. | number * number
multiply(number, number) | |||||

subtract | If you have 5 apples and give Jack 2 of those apples, you now have 3 apples left. | number - number
subtract(number, number) | |||||

if | The 1st argument is a boolean - either true or false. If it's true, the 2nd argument is returned, if it's false, the 3rd argument is returned. | boolean ? value : value
if(boolean, value, value) | |||||

year | Wha....What year is it? | year(date) | |||||

month | Gives the number for the month in the date.
Important: Starts with January at 0 so it is NOT the same number as the calendar number. | month(date) | |||||

date | Gives the Calendar day number of the month, 1-31. | date(date) | |||||

day | Gives a number for the day of the week.
0: Sunday
1: Monday
2: Tuesday
3: Wednesday
4: Thursday
5: Friday
6: Saturday | day(date) | |||||

hour | Gives the hour of the given Date. If the Date shows 12:37pm, the formula returns the number 12. | hour(date) | |||||

minute | Gives the minute of the given Date. If the Date shows 12:37pm, the formula returns the number 37. | minute(date) | |||||

dateBetween | Specify the unit of time and measure the distance between two Dates by that unit. How do you measure, measure a year? | dateBetween(date, date, text) | |||||

timestamp | Literally gives you the number of milliseconds since January 1, 1970. Refresh the page and you'll see it change (because the example below is timestamping “now” which stays up to date). | timestamp(date) | |||||

sqrt | Gives the number that, when multiplied by itself, would equal the number provided. | sqrt(number) | |||||

sign | A ternary code that returns 1 for a positive number, -1 for a negative number, and 0 for zero. | sign(number) | |||||

round | Rounds a number with a decimal up or down. 4.49999 rounds down to 4 while 4.5 rounds up to 5. | round(number) | |||||

min | Gives you the smallest number in a set of numbers. | min(number...) | |||||

max | Gives you the largest number in a set of numbers. | max(number...) | |||||

log2 | Calculates how many times you have to multiply 2 by itself to equal the number in the argument. | log2(number) | |||||

log10 | Calculates how many times you have to multiply 10 by itself to equal the number in the argument. | log10(number) | |||||

ln | When you have a number and you want to know what number multiplied by itself would equal your number - you want the natural logarithm. | ln(number) | |||||

floor | This function gives you the next lowest number below any number with a decimal. 2.999 turns to 2 because it's less than 3, but 3 remains 3. | floor(number) | |||||

exp | Multiplies the argument by Euler's constant | exp(number) | |||||

ceil | Short for ceiling, this function gives you the next highest number above any number with a decimal. 4.0001 turns to 5 because it's greater than 4, but 4 remains 4. | ceil(number) | |||||

cbrt | Returns the cube root of the number given in the argument. | cbrt(number) | |||||

abs | The absolute value of a number is its distance from 0, whether positive or negative. Can take a positive or negative number but will always return a positive number. | abs(number) | |||||

toNumber | Turns non-number values into numbers. 42 is a number and an actual number justifies to the right of the cell while a string justifies left. You can tell the 42 in the example is a number because of this. | toNumber(text)
toNumber(number)
toNumber(boolean)
toNumber(date) | |||||

length | Returns a number signifying how many characters are included in the given string. | length(text) | |||||

dateSubtract | Subtracts a specified amount of time from a given Date. | dateSubtract(date, number, text) | |||||

dateAdd | Adds a specified amount of time to a given Date. | dateAdd(date, number, text) | |||||

fromTimestamp | What day/time would it be after 1,000,000,000,000 (1 trillion) milliseconds, starting from January 1, 1970? Check the example. | fromTimestamp(number) | |||||

now | Gives the current date and time down to the minute. Notion currently does not track seconds in the Date value type but it does on the timestamp level. | now() | |||||

end | Date properties can have a start and end date. This returns the end date, or if there is no end date, the original date entry. | end(date) | |||||

start | Date properties can have a start and end date. This returns the start date, or if there is no end date, the original date entry. | start(date) | |||||

empty | If nothing is contained in the value it is the function of, then it returns a true boolean value. basically - it’s “true” (checked box) that the value is empty. | empty(number)
empty(text)
empty(boolean)
empty(date) | |||||

test | Checks if the first argument contains the second argument. The second argument can be a simple character or a more complex Regular Expression. | test(number, text)
test(text, text)
test(boolean, text) | |||||

contains | Checks to see if the first argument contains the second argument. Now we can finally answer the question - is there a "I" in "TEAM"? | contains(text, text) | |||||

formatDate | Transform a Date into any customized format. Uses Moment.js formatting. Important: returns a String, not a Date. It is “formatting” (turning to string) the date. | formatDate(date, text) | |||||

replaceAll | The first argument is the value to search. The second argument signifies what character to search for and replace. By entering a simple character, it will replace all matches of that character, but Regex can get very complex. click the link for more info. The third argument is the string that will replace what the second argument finds. | replaceAll(number, text, text)
replaceAll(text, text, text)
replaceAll(boolean, text, text) | |||||

replace | he first argument is the value to search. The second argument signifies what character to search for and replace. By entering a simple character, it will replace only the first occurrence of that character, but Regex can get very complex. click the link for more info. The third argument is the string that will replace what the second argument finds. | replace(number, text, text)
replace(text, text, text)
replace(boolean, text, text) | |||||

format | Turns non-string values into strings. 42 is a number but an actual number justifies to the right of the cell while a string justifies left. You can tell the 42 in the example is a string because of this. | format(value) | |||||

slice | Extracts (keeps) a portion of a text string determined by numbers given in the argument that correspond to character count. It’s best to think of the place where it slices as the characters given by the argument number. If only 1 number is given, it is considered the end slice point and will extract everything before it. after | slice(text, number)
slice(text, number, number) | |||||

join | Joins the first argument in between the rest of the arguments. The first argument is called a delimiter. | join(text...) | |||||

concat | Concatenate means "to combine". This function combines text `Strings` together. | concat(text...) | |||||

Formula Guide | |||||||

add | Simple addition of two numbers OR it can act the same as the concat() function, combining two strings. | number + number
text + text
add(number, number)
add(text, text) |