Function reference
Every function supported in Sheets formulas, with syntax.
Every function you can use in a Sheets formula. Names are not case sensitive.
Math and aggregates
| Function | Syntax | What it does |
|---|---|---|
SUM |
SUM(range, …) |
Adds the numeric cells. |
PRODUCT |
PRODUCT(range, …) |
Multiplies the numeric cells. |
AVERAGE |
AVERAGE(range, …) |
Mean of the numeric cells. #DIV/0! if there are none. |
MIN |
MIN(range, …) |
Smallest number. |
MAX |
MAX(range, …) |
Largest number. |
COUNT |
COUNT(range, …) |
How many cells hold numbers. |
COUNTA |
COUNTA(range, …) |
How many cells are not empty. |
COUNTBLANK |
COUNTBLANK(range) |
How many cells are empty. |
ROUND |
ROUND(number, [digits]) |
Rounds to a number of digits. |
ROUNDUP |
ROUNDUP(number, [digits]) |
Rounds away from zero. |
ROUNDDOWN |
ROUNDDOWN(number, [digits]) |
Rounds toward zero. |
ABS |
ABS(number) |
Absolute value. |
INT |
INT(number) |
Rounds down to the nearest integer. |
SQRT |
SQRT(number) |
Square root. |
MOD |
MOD(number, divisor) |
Remainder after division. |
POWER |
POWER(number, exponent) |
Number raised to a power. |
Conditional
| Function | Syntax | What it does |
|---|---|---|
COUNTIF |
COUNTIF(range, criteria) |
Counts cells matching a test such as ">10" or "paid". |
SUMIF |
SUMIF(range, criteria, [sum_range]) |
Sums cells matching the test. |
AVERAGEIF |
AVERAGEIF(range, criteria, [avg_range]) |
Averages cells matching the test. |
Logic
| Function | Syntax | What it does |
|---|---|---|
IF |
IF(condition, value_if_true, [value_if_false]) |
Branches on a condition. |
IFERROR |
IFERROR(value, value_if_error) |
Fallback when the first argument is an error. |
AND |
AND(logical1, [logical2], …) |
TRUE when every argument is TRUE. |
OR |
OR(logical1, [logical2], …) |
TRUE when any argument is TRUE. |
NOT |
NOT(logical) |
Inverts TRUE and FALSE. |
ISBLANK |
ISBLANK(value) |
TRUE when the cell is empty. |
ISNUMBER |
ISNUMBER(value) |
TRUE when the value is a number. |
ISERROR |
ISERROR(value) |
TRUE when the value is an error. |
TRUE and FALSE can be typed as values.
Text
| Function | Syntax | What it does |
|---|---|---|
CONCAT |
CONCAT(text1, [text2], …) |
Joins values into one text. |
CONCATENATE |
CONCATENATE(text1, [text2], …) |
Same as CONCAT. |
TEXTJOIN |
TEXTJOIN(separator, skip_empty, range, …) |
Joins values with a separator. |
LEFT |
LEFT(text, [count]) |
First characters. |
RIGHT |
RIGHT(text, [count]) |
Last characters. |
MID |
MID(text, start, count) |
Characters from the middle (start counts from 1). |
LEN |
LEN(text) |
Length of a text. |
LOWER |
LOWER(text) |
Lower case. |
UPPER |
UPPER(text) |
Upper case. |
TRIM |
TRIM(text) |
Strips surrounding spaces. |
SUBSTITUTE |
SUBSTITUTE(text, old, new) |
Replaces every occurrence of a text. |
VALUE |
VALUE(text) |
Reads a text as a number. |
Date and time
| Function | Syntax | What it does |
|---|---|---|
TODAY |
TODAY() |
Today's date. |
NOW |
NOW() |
Current date and time. |
DATE |
DATE(year, month, day) |
Builds a date. |
YEAR |
YEAR(date) |
Year of a date. |
MONTH |
MONTH(date) |
Month of a date (1 to 12). |
DAY |
DAY(date) |
Day of the month (1 to 31). |
WEEKDAY |
WEEKDAY(date) |
Day of the week (1 is Sunday). |
DAYS |
DAYS(end_date, start_date) |
Whole days between two dates. |
Lookup
| Function | Syntax | What it does |
|---|---|---|
VLOOKUP |
VLOOKUP(value, range, column, [FALSE]) |
Finds the value in the first column of the range and returns the Nth column of that row. Matching is always exact. |
MATCH |
MATCH(value, range) |
Position of a value in a range (from 1). Exact match. |
INDEX |
INDEX(range, row, [column]) |
The value at a position inside a range. |
AXLOOKUP |
AXLOOKUP(type, key_field, key, target_field) |
One field of a record in your workspace. Runs with your permissions. |