Formula Suggestions let you type a formula expression directly into any node input field — combining strings, computing values, formatting dates, and referencing prior step outputs — without leaving the node or adding a transformation step.
Overview
Formula Suggestions let you transform and compute data inline on the automation canvas — combining strings, converting dates, doing arithmetic, and more — without leaving the input field or adding a Code node.
Formula Suggestions overview
Wherever you see an input field in a node's configuration panel, you can type = to enter formula mode. The platform suggests matching functions as you type and provides a live preview of the result. Formulas can reference data pills from any prior node using the {{node_id.field}} syntax.


Why Do We Need Formulas?
Transformation without code — format a date, trim whitespace, or concatenate fields directly in the field rather than adding a separate Code node.
Dynamic values — compute values at runtime from earlier nodes' outputs rather than hardcoding strings or numbers.
Reduced node count — a single formula replaces what would otherwise be a dedicated transformation step, keeping the canvas clean.
Readable intent — a formula like CONCAT({{ticket.subject}}, " — ", {{ticket.id}}) communicates its purpose instantly.
How to Use Formulas
Type = at the start of an input field to enter formula mode. From there:
Call a function — type the function name (e.g., NOW, INT, LEN, CONCAT) followed by parentheses. The autocomplete panel shows matching functions and their signatures.
Reference a data pill — type {{ and select the node and field from the picker, or type the Node ID directly.
Chain functions — nest calls: CONCAT(UPPER({{name}}), "_", INT({{score}})).
Use operators — standard arithmetic (+, -, *, /) and comparison operators (==, !=, >, <) work inside formulas.
The field shows a live preview of the computed value as you type, so you can validate the result before saving.
Example
Automation: When a Zendesk ticket is created, post a summary to the #support Slack channel.
The Slack message body uses three formulas:
CONCAT("New ticket — ", {{zendesk_trigger.subject}}) — builds the message title by combining a static prefix with the ticket subject.
INT({{zendesk_trigger.id}}) — converts the ticket ID from a string to an integer for a numeric display.
LEN({{zendesk_trigger.description}}) — counts the length of the description to decide whether to truncate it before posting.
NOW() — stamps the message with the current timestamp so the support team sees when the alert was generated.
The combined formula in the Slack message field:
CONCAT("Ticket #", INT({{zendesk_trigger.id}}), " at ", NOW(), ": ", LEFT({{zendesk_trigger.description}}, 200))
Supported Formulae
Formula | Description | Data types | Syntax | Use Case |
|---|---|---|---|---|
ABS | Returns the absolute value of a number | Number | ABS(number) | Get the absolute difference between two prices regardless of sign |
ACOS | Returns the arccosine of a number | Number | ACOS(number) | Compute angle from a cosine value in trigonometric pipelines |
ACOSH | Returns the inverse hyperbolic cosine of a number | Number | ACOSH(number) | Process inverse hyperbolic cosine in scientific data workflows |
ADDRESS | Returns a cell reference as text | Number | ADDRESS(row, column) | Generate a cell reference string when writing to a spreadsheet node |
AND | Returns TRUE if all arguments are TRUE | Boolean | AND(condition1, condition2, ...) | Check if a ticket is both open and unassigned before escalating |
AREAS | Returns the number of areas in a reference | Reference | AREAS(reference) | Count distinct ranges in a multi-area reference |
ASIN | Returns the arcsine of a number | Number | ASIN(number) | Compute the arcsine in angle-based data transformations |
ASINH | Returns the inverse hyperbolic sine of a number | Number | ASINH(number) | Calculate inverse hyperbolic sine for scientific workflows |
ATAN | Returns the arctangent of a number | Number | ATAN(number) | Compute the arctangent in geometric or physics calculations |
ATAN2 | Returns the arctangent from x- and y-coordinates | Number | ATAN2(x, y) | Calculate the bearing angle between two map coordinates |
ATANH | Returns the inverse hyperbolic tangent of a number | Number | ATANH(number) | Compute inverse hyperbolic tangent in statistical data pipelines |
AVEDEV | Returns the average of the absolute deviations of data points from their mean | Number | AVEDEV(number1, number2, ...) | Measure variability in response times across support tickets |
AVERAGE | Returns the average of its arguments | Number | AVERAGE(number1, number2, ...) | Compute the average deal value across closed opportunities |
AVERAGEA | Returns the average of its arguments including numbers, text, and logical values | Any | AVERAGEA(value1, value2, ...) | Average scores from a field that may contain text responses |
CEILING | Rounds a number up to the nearest integer or multiple of significance | Number | CEILING(number) | Round storage usage up to the nearest GB for billing calculations |
CHAR | Returns the character specified by a number | Number | CHAR(number) | Generate special characters like line breaks in formatted messages |
CHOOSE | Chooses a value from a list of values | Any | CHOOSE(index, value1, value2, ...) | Pick a priority label (Low / Medium / High) based on a numeric score |
CLEAN | Removes all non-printable characters from text | Text | CLEAN(text) | Strip non-printable characters from imported CSV or API fields |
CODE | Returns a numeric code for the first character in a text string | Text | CODE(text) | Get the ASCII code of the first character to validate input format |
COLUMN | Returns the column number of a reference | Reference | COLUMN([reference]) | Identify the column position of a cell for dynamic range construction |
COLUMNS | Returns the number of columns in a reference | Array | COLUMNS(array) | Count the number of columns returned in a data range |
COMBIN | Returns the number of combinations for a given number of objects | Number | COMBIN(total, chosen) | Calculate the number of possible team assignments from a pool of agents |
CONCAT | Joins two or more values into a single string | Text, Number | CONCAT(value1, value2, ...) | Build a Slack message from a ticket ID and subject line |
CONCATENATE | Joins several text items into one text item | Text | CONCATENATE(text1, text2, ...) | Join first name and last name fields into a full name string |
CORREL | Returns the correlation coefficient between two data sets | Array | CORREL(array1, array2) | Measure the correlation between lead score and conversion rate |
COS | Returns the cosine of a number | Number | COS(angle) | Compute cosine in trigonometric or physics data calculations |
COSH | Returns the hyperbolic cosine of a number | Number | COSH(number) | Calculate hyperbolic cosine in scientific data pipelines |
COUNT | Counts how many numbers are in the list of arguments | Any | COUNT(value1, value2, ...) | Count how many numeric values exist in a response array |
COUNTA | Counts how many values are in the list of arguments | Any | COUNTA(value1, value2, ...) | Count all non-empty fields in a form submission |
COUNTBLANK | Counts the number of blank cells within a range | Array | COUNTBLANK(range) | Detect missing required fields in a submitted record |
COUNTIF | Counts the number of cells within a range that meet the given criteria | Array | COUNTIF(range, criteria) | Count tickets with status = "Open" in a dataset |
COVAR | Returns covariance, the average of the products of paired deviations | Array | COVAR(array1, array2) | Measure how ad spend and revenue move together across campaigns |
DATE | Returns the serial number of a particular date | Number | DATE(year, month, day) | Construct a due date from separate year, month, and day fields |
DATEVALUE | Converts a date in the form of text to a serial number | Text | DATEVALUE(date_text) | Convert a text date string like "2026-08-22" to a usable date value |
DAVERAGE | Averages the values in a column of a list or database that match conditions you specify | Array | DAVERAGE(database, field, criteria) | Average revenue for records matching a specific region filter |
DAY | Converts a serial number to a day of the month | Date | DAY(date) | Extract the day of the month from a ticket creation date |
DAYS360 | Calculates the number of days between two dates based on a 360-day year | Date | DAYS360(start_date, end_date) | Calculate days elapsed on a 360-day financial calendar |
DCOUNT | Counts the cells containing numbers in a column of a list or database that match conditions | Array | DCOUNT(database, field, criteria) | Count numeric entries in a filtered database column |
DCOUNTA | Counts nonblank cells in a column of a list or database that match conditions | Array | DCOUNTA(database, field, criteria) | Count all non-blank entries in a filtered database column |
DEGREES | Converts radians to degrees | Number | DEGREES(angle) | Convert a radian-based sensor reading to degrees for display |
DEVSQ | Returns the sum of squares of deviations | Number | DEVSQ(number1, number2, ...) | Compute the sum of squared deviations for variance analysis |
DGET | Extracts from a database a single record that matches the specified criteria | Array | DGET(database, field, criteria) | Retrieve a single record from a dataset matching exact criteria |
DMAX | Returns the maximum value from selected database entries | Array | DMAX(database, field, criteria) | Find the highest deal value among records for a specific sales rep |
DMIN | Returns the minimum value from selected database entries | Array | DMIN(database, field, criteria) | Find the lowest response time for a specific support tier |
DOLLAR | Converts a number to text using currency format | Number | DOLLAR(number, [decimals]) | Format a numeric amount as a currency string for an email report |
DPRODUCT | Multiplies the values in a column of a list or database that match conditions | Array | DPRODUCT(database, field, criteria) | Multiply values in a filtered database column |
DSTDEV | Estimates the standard deviation based on a sample from selected database entries | Array | DSTDEV(database, field, criteria) | Estimate standard deviation for a filtered subset of records |
DSTDEVP | Calculates the standard deviation based on the entire population of selected database entries | Array | DSTDEVP(database, field, criteria) | Compute population standard deviation for a filtered dataset |
DSUM | Adds the numbers in a column of a list or database that match conditions | Array | DSUM(database, field, criteria) | Sum revenue for all records matching a specific product category |
DVAR | Estimates variance based on a sample from selected database entries | Array | DVAR(database, field, criteria) | Estimate variance for a filtered sample of measurements |
DVARP | Calculates variance based on the entire population of selected database entries | Array | DVARP(database, field, criteria) | Compute population variance for a fully filtered dataset |
ERROR.TYPE | Returns a number corresponding to an error type | Any | ERROR.TYPE(error_value) | Identify which type of error occurred in a formula result for routing |
EVEN | Rounds a number up to the nearest even integer | Number | EVEN(number) | Round a quantity up to the nearest even number for paired packaging |
EXACT | Checks to see if two text values are identical | Text | EXACT(text1, text2) | Verify that two status strings match exactly (case-sensitive) |
EXP | Returns e raised to the power of a given number | Number | EXP(number) | Compute e^x for exponential growth or decay models |
FACT | Returns the factorial of a number | Number | FACT(number) | Calculate permutations or combinations in scheduling logic |
FALSE | Returns the logical value FALSE | — | FALSE() | Return a hardcoded false value in a conditional branch |
FIND | Finds one text value within another (case-sensitive) | Text | FIND(find_text, within_text, [start]) | Locate the position of "@" in an email address field (case-sensitive) |
FIXED | Formats a number as text with a fixed number of decimals | Number | FIXED(number, [decimals]) | Format a price to exactly 2 decimal places as a text string |
FLOOR | Rounds a number down to the nearest multiple of significance | Number | FLOOR(number, significance) | Round a discount percentage down so customers always get at least the stated discount |
FORECAST | Calculates a future value using existing values | Number | FORECAST(x, known_y, known_x) | Predict next month's revenue based on historical trend data |
FREQUENCY | Calculates how often values occur within a range of values | Array | FREQUENCY(data_array, bins_array) | Bucket response times into performance ranges (fast / medium / slow) |
FV | Returns the future value of an investment | Number | FV(rate, periods, payment, [pv]) | Calculate the future value of a recurring subscription payment plan |
GEOMEAN | Returns the geometric mean | Number | GEOMEAN(number1, number2, ...) | Compute compound growth rate across multiple periods |
HLOOKUP | Looks for a value in the top row of a table and returns the value in the same column from a specified row | Any | HLOOKUP(value, table, row_index) | Look up a tier label from a horizontally-oriented pricing table |
HOUR | Converts a serial number to an hour | Date | HOUR(time) | Extract the hour from a timestamp to route tickets to the right team |
HYPERLINK | Creates a shortcut or jump that opens a document or URL | Text | HYPERLINK(url, [display_text]) | Create a clickable link to a Zendesk ticket inside a Slack message |
IF | Specifies a logical test to perform and returns one of two values | Any | IF(condition, true_value, false_value) | Set urgency to "High" if response time exceeds the SLA threshold |
INDEX | Returns a value or reference from within a table or range | Any | INDEX(array, row, [column]) | Retrieve a value at a specific row and column from a result set |
INDIRECT | Returns a reference specified by a text string | Text | INDIRECT(ref_text) | Dynamically reference a field by constructing its name as text |
INT | Rounds a number down to the nearest integer | Number | INT(number) | Convert a string ticket ID to an integer for numeric comparison |
INTERCEPT | Returns the intercept of the linear regression line | Array | INTERCEPT(known_x, known_y) | Find the y-intercept of a regression line for baseline forecasting |
IPMT | Returns the interest payment for an investment for a given period | Number | IPMT(rate, period, periods, pv) | Calculate the interest portion of a loan payment for a given period |
IRR | Returns the internal rate of return for a series of cash flows | Array | IRR(values, [guess]) | Evaluate the internal rate of return on a project investment |
ISBLANK | Returns TRUE if the value is blank | Any | ISBLANK(value) | Check if an optional field was left empty before processing the record |
ISERR | Returns TRUE if the value is any error value except #N/A | Any | ISERR(value) | Catch formula errors before they propagate to downstream nodes |
ISERROR | Returns TRUE if the value is any error value | Any | ISERROR(value) | Detect any formula error and route to a fallback branch |
ISLOGICAL | Returns TRUE if the value is a logical value | Any | ISLOGICAL(value) | Verify a field contains a true/false value before branching on it |
ISNA | Returns TRUE if the value is the #N/A error value | Any | ISNA(value) | Check if a lookup returned no match and handle the empty case gracefully |
ISNONTEXT | Returns TRUE if the value is not text | Any | ISNONTEXT(value) | Confirm a field holds a numeric or boolean value before arithmetic |
ISNUMBER | Returns TRUE if the value is a number | Any | ISNUMBER(value) | Validate that a price field contains a numeric value before calculations |
ISREF | Returns TRUE if the value is a reference | Any | ISREF(value) | Check whether a dynamic reference resolves to a valid range |
ISTEXT | Returns TRUE if the value is text | Any | ISTEXT(value) | Confirm a field is a string before applying text transformation functions |
LARGE | Returns the k-th largest value in a data set | Array | LARGE(array, k) | Get the 3rd highest deal amount from a set of opportunities |
LEFT | Returns the leftmost characters from a text value | Text | LEFT(text, [count]) | Extract the country code from the start of a phone number |
LEN | Returns the character length of a string or size of an array | Text, Array | LEN(text) | Check if a description exceeds 500 characters before truncating it |
LN | Returns the natural logarithm of a number | Number | LN(number) | Compute natural log for exponential decay or growth models |
LOG | Returns the logarithm of a number to a specified base | Number | LOG(number, [base]) | Calculate the logarithm of a metric to compress a wide numeric range |
LOG10 | Returns the base-10 logarithm of a number | Number | LOG10(number) | Convert a large numeric range to log scale for easier analysis |
LOOKUP | Looks up values in a vector or array | Any | LOOKUP(value, lookup_vector, [result_vector]) | Find a value in a sorted list and return a corresponding result |
LOWER | Converts text to lowercase | Text | LOWER(text) | Normalize an email address to lowercase before deduplication |
MATCH | Looks up values in a reference or array and returns the position | Any | MATCH(value, array, [match_type]) | Find the position of a status value in a priority order list |
MAX | Returns the maximum value in a list of arguments | Number | MAX(number1, number2, ...) | Get the highest bid amount from a list of responses |
MAXA | Returns the maximum value including numbers, text, and logical values | Any | MAXA(value1, value2, ...) | Find the maximum across a mixed-type field (numbers, text, booleans) |
MDETERM | Returns the matrix determinant of an array | Array | MDETERM(array) | Compute the determinant of a matrix in scientific data workflows |
MEDIAN | Returns the median of the given numbers | Number | MEDIAN(number1, number2, ...) | Find the median ticket resolution time to avoid skew from outliers |
MID | Returns a specific number of characters from a text string starting at a given position | Text | MID(text, start, length) | Extract the account ID from the middle of a composite reference string |
MIN | Returns the minimum value in a list of arguments | Number | MIN(number1, number2, ...) | Get the earliest deadline from a set of task due dates |
MINA | Returns the smallest value including numbers, text, and logical values | Any | MINA(value1, value2, ...) | Find the minimum value across a field that may include text or booleans |
MINUTE | Converts a serial number to a minute | Date | MINUTE(time) | Extract the minute from a timestamp for fine-grained scheduling logic |
MINVERSE | Returns the matrix inverse of an array | Array | MINVERSE(array) | Compute the inverse of a matrix in mathematical processing pipelines |
MIRR | Returns the modified internal rate of return for a series of periodic cash flows | Array | MIRR(values, finance_rate, reinvest_rate) | Calculate modified IRR accounting for cost of capital and reinvestment rate |
MMULT | Returns the matrix product of two arrays | Array | MMULT(array1, array2) | Multiply two matrices in a data transformation pipeline |
MOD | Returns the remainder from division | Number | MOD(number, divisor) | Determine if a ticket ID is even or odd for load balancing between agents |
MODE | Returns the most common value in a data set | Number | MODE(number1, number2, ...) | Find the most frequently occurring priority level across a set of tickets |
MONTH | Converts a serial number to a month | Date | MONTH(date) | Extract the month from a date to group records by reporting period |
NORMDIST | Returns the normal distribution | Number | NORMDIST(x, mean, std_dev, cumulative) | Compute probability scores for normally distributed performance metrics |
NORMINV | Returns the inverse of the normal cumulative distribution | Number | NORMINV(probability, mean, std_dev) | Find the value at a given percentile of a normal distribution |
NORMSDIST | Returns the standard normal cumulative distribution | Number | NORMSDIST(z) | Get the cumulative probability for a standard normal z-score |
NORMSINV | Returns the inverse of the standard normal cumulative distribution | Number | NORMSINV(probability) | Find the z-score at a given probability level for threshold setting |
NOT | Reverses the logic of its argument | Boolean | NOT(condition) | Proceed only if a ticket is NOT already resolved |
NOW | Returns the serial number of the current date and time | — | NOW() | Stamp the current date and time onto a processed record |
NPER | Returns the number of periods for an investment | Number | NPER(rate, payment, pv) | Calculate how many payment periods are needed to pay off a loan |
NPV | Returns the net present value of an investment based on a series of periodic cash flows and a discount rate | Number | NPV(rate, value1, value2, ...) | Compute the net present value of projected cash flows for a deal |
ODD | Rounds a number up to the nearest odd integer | Number | ODD(number) | Round a count up to the nearest odd number for specific packaging logic |
OFFSET | Returns a reference offset from a given reference | Reference | OFFSET(reference, rows, cols, [height], [width]) | Reference a cell a dynamic number of rows away from an anchor cell |
OR | Returns TRUE if any argument is TRUE | Boolean | OR(condition1, condition2, ...) | Trigger an alert if a ticket is overdue OR marked as critical |
PEARSON | Returns the Pearson product moment correlation coefficient | Array | PEARSON(array1, array2) | Measure the linear correlation between two numeric KPI series |
PERCENTILE | Returns the k-th percentile of values in a range | Array | PERCENTILE(array, k) | Find the 90th percentile of response times to set SLA thresholds |
PERCENTRANK | Returns the percentage rank of a value in a data set | Array | PERCENTRANK(array, x) | Rank a lead score as a percentage within the full pipeline distribution |
PI | Returns the value of pi | — | PI() | Use π in circular area or trigonometric calculations |
PMT | Returns the periodic payment for an annuity | Number | PMT(rate, periods, pv) | Calculate the monthly payment amount for a subscription or loan |
POISSON | Returns the Poisson distribution | Number | POISSON(x, mean, cumulative) | Model the probability of N support tickets arriving in a given time window |
POWER | Returns the result of a number raised to a power | Number | POWER(base, exponent) | Raise a base metric to a power for exponential scaling calculations |
PPMT | Returns the payment on the principal for an investment for a given period | Number | PPMT(rate, period, periods, pv) | Calculate the principal portion of a loan payment for a given period |
PRODUCT | Multiplies its arguments | Number | PRODUCT(number1, number2, ...) | Multiply quantity by unit price to compute a line-item total |
PROPER | Capitalizes the first letter in each word of a text value | Text | PROPER(text) | Format a contact name with proper title capitalization |
PV | Returns the present value of an investment | Number | PV(rate, periods, payment) | Compute the present value of a future cash flow stream |
RADIANS | Converts degrees to radians | Number | RADIANS(angle) | Convert a degree value to radians before passing to trigonometric functions |
RAND | Returns a random number between 0 and 1 | — | RAND() | Generate a random number to assign records to A/B test groups |
RANK | Returns the rank of a number in a list of numbers | Number | RANK(number, reference, [order]) | Rank a lead score against the rest of the pipeline |
RATE | Returns the interest rate per period of an annuity | Number | RATE(periods, payment, pv) | Calculate the implied interest rate on a series of payments |
REPLACE | Replaces characters within text | Text | REPLACE(text, start, length, new_text) | Overwrite a fixed-length portion of a reference string with updated text |
REPT | Repeats text a given number of times | Text | REPT(text, times) | Repeat a separator character to build a visual divider in a message |
RIGHT | Returns the rightmost characters from a text value | Text | RIGHT(text, [count]) | Extract the file extension from the end of a filename field |
ROMAN | Converts an arabic numeral to roman as text | Number | ROMAN(number) | Convert a chapter or version number to roman numerals for a document |
ROUND | Rounds a number to a specified number of digits | Number | ROUND(number, digits) | Round a calculated price to 2 decimal places for display |
ROUNDDOWN | Rounds a number down toward zero | Number | ROUNDDOWN(number, digits) | Round a discount down so customers always receive at least the stated discount |
ROUNDUP | Rounds a number up away from zero | Number | ROUNDUP(number, digits) | Round a quantity up so orders always meet the minimum pack size |
ROW | Returns the row number of a reference | Reference | ROW([reference]) | Get the row number of a reference for dynamic range construction |
ROWS | Returns the number of rows in a reference | Array | ROWS(array) | Count the number of rows returned in a data range |
SEARCH | Finds one text value within another (not case-sensitive) | Text | SEARCH(find_text, within_text, [start]) | Find the position of a keyword in a support ticket body (case-insensitive) |
SECOND | Converts a serial number to a second | Date | SECOND(time) | Extract the seconds component from a precise event timestamp |
SIGN | Returns the sign of a number | Number | SIGN(number) | Determine if a variance is positive, negative, or zero for routing |
SIN | Returns the sine of the given angle | Number | SIN(angle) | Compute sine for angle-based or physics calculations |
SINH | Returns the hyperbolic sine of a number | Number | SINH(number) | Calculate hyperbolic sine in scientific data workflows |
SLOPE | Returns the slope of the linear regression line | Array | SLOPE(known_y, known_x) | Compute the trend slope of a metric over time for forecasting |
SMALL | Returns the k-th smallest value in a data set | Array | SMALL(array, k) | Get the 2nd lowest response time from a set of records |
SQRT | Returns a positive square root | Number | SQRT(number) | Calculate the standard deviation manually from a variance value |
STANDARDIZE | Returns a normalized value | Number | STANDARDIZE(x, mean, std_dev) | Normalize a raw score against a population mean and standard deviation |
STDEV | Estimates standard deviation based on a sample | Number | STDEV(number1, number2, ...) | Measure the spread of ticket resolution times in a sample |
STDEVA | Estimates standard deviation based on a sample including numbers, text, and logical values | Any | STDEVA(value1, value2, ...) | Compute standard deviation over a mixed-type response field |
STDEVP | Calculates standard deviation based on the entire population | Number | STDEVP(number1, number2, ...) | Calculate standard deviation across the full population of records |
STDEVPA | Calculates standard deviation based on the entire population including numbers, text, and logical values | Any | STDEVPA(value1, value2, ...) | Population standard deviation over a mixed-type dataset |
SUBSTITUTE | Substitutes new text for old text in a text string | Text | SUBSTITUTE(text, old_text, new_text, [instance]) | Replace all occurrences of "v1" with "v2" in a version string |
SUBTOTAL | Returns a subtotal in a list or database | Any | SUBTOTAL(function_num, ref1, ...) | Compute a sum or average on a filtered list while ignoring hidden rows |
SUM | Adds its arguments | Number | SUM(number1, number2, ...) | Add up all line-item amounts to produce an order total |
SUMIF | Adds the cells specified by a given criteria | Array | SUMIF(range, criteria, [sum_range]) | Sum revenue only for records where region = "APAC" |
SUMPRODUCT | Returns the sum of the products of corresponding array components | Array | SUMPRODUCT(array1, array2, ...) | Multiply quantities by prices and sum the results in a single step |
SUMSQ | Returns the sum of the squares of the arguments | Number | SUMSQ(number1, number2, ...) | Sum the squares of deviation values for variance calculations |
SUMX2MY2 | Returns the sum of the difference of squares of corresponding values in two arrays | Array | SUMX2MY2(array_x, array_y) | Compute the difference of sum-of-squares between two data arrays |
SUMX2PY2 | Returns the sum of the sum of squares of corresponding values in two arrays | Array | SUMX2PY2(array_x, array_y) | Compute the sum of sum-of-squares across two arrays |
SUMXMY2 | Returns the sum of squares of differences of corresponding values in two arrays | Array | SUMXMY2(array_x, array_y) | Compute the sum of squared differences between two data arrays |
T | Converts its arguments to text | Any | T(value) | Convert a non-text value to an empty string when it isn't text |
TAN | Returns the tangent of a number | Number | TAN(angle) | Compute the tangent of an angle in geometric calculations |
TANH | Returns the hyperbolic tangent of a number | Number | TANH(number) | Calculate hyperbolic tangent in scientific data pipelines |
TDIST | Returns the Student's t-distribution | Number | TDIST(x, degrees_freedom, tails) | Compute the t-distribution probability for hypothesis testing |
TEXT | Formats a number and converts it to text | Any | TEXT(value, format) | Format a date value as "MMMM DD, YYYY" for a report field |
TIME | Returns the serial number of a particular time | Number | TIME(hour, minute, second) | Construct a specific time value from separate hour, minute, and second fields |
TIMEVALUE | Converts a text time to a serial number | Text | TIMEVALUE(time_text) | Convert a text time string like "14:30" to a time serial number |
TODAY | Returns the serial number of today's date | — | TODAY() | Set a default due date to today when no date is provided |
TRANSPOSE | Returns the transpose of an array | Array | TRANSPOSE(array) | Flip rows and columns in a data array to reshape it for a downstream node |
TREND | Returns values along a linear trend | Array | TREND(known_y, [known_x], [new_x]) | Project future values along the linear trend of historical data |
TRIM | Removes leading and trailing whitespace from text | Text | TRIM(text) | Remove extra spaces from a pasted name or address field |
TRUE | Returns the logical value TRUE | — | TRUE() | Return a hardcoded true value in a conditional expression |
TRUNC | Truncates a number to an integer | Number | TRUNC(number, [digits]) | Drop decimal places from a price without rounding |
UPPER | Converts text to uppercase | Text | UPPER(text) | Convert a category tag to uppercase for consistent display |
VALUE | Converts a text argument to a number | Text | VALUE(text) | Convert a text-format number like "42" to a numeric value for arithmetic |
VAR | Estimates variance based on a sample | Number | VAR(number1, number2, ...) | Estimate the variance in response times from a sample of tickets |
VARA | Estimates variance based on a sample including numbers, text, and logical values | Any | VARA(value1, value2, ...) | Compute variance over a field that may include text or boolean values |
VARP | Calculates variance based on the entire population | Number | VARP(number1, number2, ...) | Calculate variance across the full population of records |
VARPA | Calculates variance based on the entire population including numbers, text, and logical values | Any | VARPA(value1, value2, ...) | Population variance over a mixed-type dataset |
VLOOKUP | Looks for a value in the leftmost column of a table and returns a value in the same row from a specified column | Any | VLOOKUP(value, table, col_index) | Look up a customer tier from a reference table by account ID |
WEEKDAY | Converts a serial number to a day of the week | Date | WEEKDAY(date, [return_type]) | Get the day of week from a date to skip weekend scheduling |
YEAR | Converts a serial number to a year | Date | YEAR(date) | Extract the year from a date to group records by fiscal year |
Notes
Formulas are the fastest way to transform data inside a node without writing code. To make the most of them:
Type = immediately — without a leading space — to enter formula mode; a leading space is treated as literal text.
Use the live preview to catch type mismatches before saving; a red preview means the formula will error at runtime.
Nest functions rather than adding separate transformation nodes — TRIM(LOWER({{name}})) is one field, not two nodes.
For complex multi-step transformations, prefer Code by UnifyApps — formulas are best for single-expression work.
A well-placed formula keeps the canvas readable by handling data shaping where the data is consumed, not in a separate step.