Streak has two methods of writing a formula – JavaScript and Spreadsheet formula. This latter method is similar to the language used to write formula in Google Sheets and Excel, but has a select few of their supported functions.

Spreadsheet formulas still require column references to be written in our column notation – a column named **Deal Size **will need to be referenced as `$'Deal Size'`

in the formula. They do not support range references at the moment.

## Supported functions

### Logic

The only logical function supported at the moment is IF. This evaluates as follows:

`= IF(Logical expression, Value if true, Value if false)`

** **

This can be used to evaluate a column that determines cost-per-user pricing based on a column for **Subscription type**.

`= IF($'Subscription type' = 'Annual', 49, 59)`

### Numbers

Number functions often support additional values in a comma-separated list.

We indicate optional values below by surrounding them in brackets and using ellipses. Required values and arguments will not be surrounded by brackets.

`= AVERAGE(value 1, [value 2, ...])`

= CEILING(value, factor)

= EVEN(value)

= MAX(value 1, [value 2, ...])

= MEDIAN(value 1, [value 2, ...])

= MOD(dividend, divisor)

= MODE(value 1, [value 2, ...])

= ROUND(value, [places])

= ROUNDDOWN(value, [places])

= ROUNDUP(value, [places])

= SUM(value 1, [value 2, ...])