500+ Google Sheets Formulas

Explore the complete Google Sheets formulas list. Every function from AI() to ZTEST(). Look at popular ones like: VLOOKUP. Or figure out what went wrong with often misused formulas like: SUMIF, and COUNTIF. Find out about my favorites like: IF & FILTER. Or just go pick a random formula to have fun with.

Start with one formula

  • IF: Automate logic in your cells.
  • VLOOKUP: Find and match data.
  • SUMIF: Add up only what matters.
  • COUNTIF: Count cells that match.
  • FILTER: Show only the rows you need.

Try a formula

Browse all formulas

500+ functions from AI() to ZTEST(). Start with TODAY().

ABS()
ABS()

Returns the absolute value of a number.

ABS(value)
ACCRINT()
ACCRINT()

Calculates the accrued interest of a security that has periodic payments.

ACCRINT(issue, first_payment, settlement, rate, redemption, frequency, [day_count_convention])
ACCRINTM()
ACCRINTM()

Calculates the accrued interest of a security that pays interest at maturity.

ACCRINTM(issue, maturity, rate, [redemption], [day_count_convention])
ACOS()
ACOS()

Returns the inverse cosine of a value, in radians.

ACOS(value)
ACOSH()
ACOSH()

Returns the inverse hyperbolic cosine of a number.

ACOSH(value)
ACOT()
ACOT()

Returns the inverse cotangent of a value, in radians..

ACOT(value)
ACOTH()
ACOTH()

Returns the inverse hyperbolic cotangent of a value, in radians. Must not be between -1 and 1, in...

ACOTH(value)
ADD()
ADD()

Returns the sum of two numbers. Equivalent to the `+` operator.

ADD(value1, value2)
ADDRESS()
ADDRESS()

Returns a cell reference as a string.

ADDRESS(row, column, [absolute_relative_mode], [use_a1_notation], [sheet])
AI()
AI()

Generates text, summarizes information, categorizes information, and accesses real-time informati...

AI(prompt, [range])
AMORLINC()
AMORLINC()

Returns the depreciation for an accounting period, or the prorated depreciation if the asset was ...

AMORLINC(cost, purchase_date, first_period_end, salvage, period, rate, [basis])
AND()
AND()

Returns true if all of the provided arguments are logically true, and false if any of the provide...

AND(logical_expression1, [logical_expression2, ...])
ARABIC()
ARABIC()

Computes the value of a Roman numeral.

ARABIC(roman_numeral)
ARRAYFORMULA()
ARRAYFORMULA()

Enables the display of values returned from an array formula into multiple rows and/or columns an...

ARRAYFORMULA(array_formula)
ARRAY_CONSTRAIN()
ARRAY_CONSTRAIN()

Constrains an array result to a specified size.

ARRAY_CONSTRAIN(input_range, num_rows, num_cols)
ASC()
ASC()

Converts full-width ASCII and katakana characters to their half-width counterparts. All standard-...

ASC(text)
ASIN()
ASIN()

Returns the inverse sine of a value, in radians.

ASIN(value)
ASINH()
ASINH()

Returns the inverse hyperbolic sine of a number.

ASINH(value)
ATAN()
ATAN()

Returns the inverse tangent of a value, in radians.

ATAN(value)
ATAN2()
ATAN2()

Returns the angle between the x-axis and a line segment from the origin (0,0) to specified coordi...

ATAN2(x, y)
ATANH()
ATANH()

Returns the inverse hyperbolic tangent of a number.

ATANH(value)
AVEDEV()
AVEDEV()

Calculates the average of the magnitudes of deviations of data from a dataset's mean.

AVEDEV(value1, [value2, ...])
AVERAGE()
AVERAGE()

Returns the numerical average value in a dataset, ignoring text.

AVERAGE(value1, [value2, ...])
AVERAGE.WEIGHTED()
AVERAGE.WEIGHTED()

Finds the weighted average of a set of values, given the values and the corresponding weights..

AVERAGE.WEIGHTED(values, weights, [additional values], [additional weights])
AVERAGEA()
AVERAGEA()

Returns the numerical average value in a dataset.

AVERAGEA(value1, [value2, ...])
AVERAGEIF()
AVERAGEIF()

Returns the average of a range depending on criteria.

AVERAGEIF(criteria_range, criterion, [average_range])
AVERAGEIFS()
AVERAGEIFS()

Returns the average of a range depending on multiple criteria.

AVERAGEIFS(average_range, criteria_range1, criterion1, [criteria_range2, criterion2, ...])
BASE()
BASE()

Converts a number into a text representation in another base, for example, base 2 for binary..

BASE(value, base, [min_length])
BETA.DIST()
BETA.DIST()

Returns the probability of a given value as defined by the beta distribution function..

BETA.DIST(value, alpha, beta, cumulative, lower_bound, upper_bound)
BETA.INV()
BETA.INV()

Returns the value of the inverse beta distribution function for a given probability..

BETA.INV(probability, alpha, beta, lower_bound, upper_bound)
BETADIST()
BETADIST()

See BETA.DIST.

BETADIST(value, alpha, beta, lower_bound, upper_bound)
BETAINV()
BETAINV()

See BETA.INV

BETAINV(probability, alpha, beta, lower_bound, upper_bound)
BIN2DEC()
BIN2DEC()

Converts a signed binary number to decimal format.

BIN2DEC(signed_binary_number)
BIN2HEX()
BIN2HEX()

Converts a signed binary number to signed hexadecimal format.

BIN2HEX(signed_binary_number, [significant_digits])
BIN2OCT()
BIN2OCT()

Converts a signed binary number to signed octal format.

BIN2OCT(signed_binary_number, [significant_digits])
BINOM.DIST()
BINOM.DIST()

See BINOMDIST

BINOM.DIST(num_successes, num_trials, prob_success, cumulative)
BINOM.INV()
BINOM.INV()

See CRITBINOM

BINOM.INV(num_trials, prob_success, target_prob)
BINOMDIST()
BINOMDIST()

Calculates the probability of drawing a certain number of successes (or a maximum number of succe...

BINOMDIST(num_successes, num_trials, prob_success, cumulative)
BITAND()
BITAND()

Bitwise boolean AND of two numbers..

BITAND(value1, value2)
BITLSHIFT()
BITLSHIFT()

Shifts the bits of the input a certain number of places to the left..

BITLSHIFT(value, shift_amount)
BITOR()
BITOR()

Bitwise boolean OR of 2 numbers..

BITOR(value1, value2)
BITRSHIFT()
BITRSHIFT()

Shifts the bits of the input a certain number of places to the right..

BITRSHIFT(value, shift_amount)
BITXOR()
BITXOR()

Bitwise XOR (exclusive OR) of 2 numbers..

BITXOR(value1, value2)
BYCOL()
BYCOL()

Groups an array by columns by application of a LAMBDA function to each column.

BYCOL(array_or_range, LAMBDA)
BYROW()
BYROW()

Groups an array by rows by application of a LAMBDA function to each row.

BYROW(array_or_range, LAMBDA)
CEILING()
CEILING()

Rounds a number up to the nearest integer multiple of specified significance.

CEILING(value, [factor])
CEILING.MATH()
CEILING.MATH()

Rounds a number up to the nearest integer multiple of specified significance, with negative numbe...

CEILING.MATH(number, [significance], [mode])
CEILING.PRECISE()
CEILING.PRECISE()

Rounds a number up to the nearest integer multiple of specified significance. If the number is po...

CEILING.PRECISE(number, [significance])