- Using SafetyCulture
- Templates (editing)
- Add functions to calculation formulas
Add functions to calculation formulas
Learn how to add functions to calculation formulas via the web app and the mobile app.
What does it mean to add functions to formulas?
Manually extracting data from inspections and transferring it to spreadsheet programs for calculations can be time-consuming and inefficient. With functions in your calculation formulas, you can instantly process and analyze data within SafetyCulture, eliminating the need for third-party tools. This ensures you have real-time insights at your fingertips, enabling faster, data-driven decisions the moment information is captured.
What you'll need
Users must have version 25.12 or later of the SafetyCulture mobile app to view functions added to calculation questions in inspections.
Add functions to a calculation formula
Select
Templates from the menu on the left-hand side.
Click the template and select Edit template in the side panel.
Add a new number response question or select an existing one.
In the side panel, type $ and select the function you want to use. Then, type $ followed by a question's label to use it as an argument. Please note that functions are case-sensitive.
You can also select the relevant function and question from the "Functions" and "Questions" dropdowns.
Click Save and apply.
Click Publish on the upper-right of the page to publish the template. If you're not ready to publish the template, you can go back to the template list and publish the changes when you're ready.
Open the mobile app.
Tap
Inspections at the bottom of your screen.
Select Templates tab at the top of your screen.
Tap the template and select
Edit template from the pop-up options.
Add a new number response question or select an existing one.
Under the question, tap
on the right-hand side of "Number" and tap Number next to "Format".
On this screen, select Calculation.
Type $ and select the function you want to use. Then, type $ followed by a question's label to use it as an argument. Please note that functions are case-sensitive.
You can also select the relevant function and question from the "Functions" and "Questions" dropdowns.
Tap Save and apply.
Tap Publish on the upper-right of the screen to publish the template. If you're not ready to publish the template, you can go back to the template list and publish the changes when you're ready.
Formulas using number questions with units will not be converted automatically.
For example, if you’re calculating the speed in kilometers per hour, and you referenced a number question using meters as a unit in your calculation, meters will not be converted to kilometers. You will need to change the unit in the number question or the number question altogether.
Available functions
This table outlines all the available functions for calculation formulas. In a function, "Value" can either be a referenced question or an integer.
Function | Format | Description |
---|---|---|
SQRT (Square root) |
| Returns the square root of the value. For example, SQRT(9) = 3. |
ABS (Absolute value) |
| Returns the absolute (positive) value of the input. For example, ABS(-5) = 5. |
SIN (Sine) |
| Returns the sine of the given radian. For example, SIN(3.14 / 2) = 1. |
COS (Cosine) |
| Returns the cosine of the given radian. For example, COS(0) = 1. |
POWER |
| Raises the first value to the power of the second. For example, POWER (2,3) = 8. |
LOG |
| Returns the logarithm of the first value to the base of the second. For example, LOG(8,2) = 3. |
SUM |
| Calculates the sum of all values. For example, SUM(1,5,9) = 15. |
AVERAGE |
| Computes the average (mean) of all values. For example, AVERAGE(4,8,12) = 8. |
MEDIAN |
| Returns the median value from the input numbers. For example, MEDIAN(3,1,4,2,5) = 3. |
MODE |
| Returns the most frequently occurring value from the given values. For example, MODE(3,5,3,7,5,5) = 5. |
STDEV (Standard deviation) |
| Calculates the standard deviation of the given values. For example, STDEV(4,8,6,5,9) = 1.87. |
AVEDEV (Average deviation) |
| Calculates the average deviation of the given values. For example, AVEDEV(4,8,6,5,9) = 1.68. |
DEFAULT_VALUE |
The DEFAULT_VALUE function will need to reference a question and an integer in the respective order. | Returns the default value if a referenced question is unanswered. For example, DEFAULT_VALUE(Question, 15). If the question is answered, the function is equal to the number entered. If unanswered, the function is equal to 15. |
Frequently asked questions
An argument is a value or input that a function uses to perform a calculation. In calculation formulas, arguments can be numbers or questions, enclosed in parentheses. Some functions allow multiple arguments to refine calculations further.
For example, in the formula AVERAGE(Question 1, Question 2, Question 3)
, each question referenced is considered as 3 separate arguments.
Although calculation response questions are supported in repeat sections, there are scenarios where you won't be able to create a formula and reference number or calculation response question in repeat sections.
Scenario 1: A formula inside a repeat section can't reference a number or a calculation response question that is part of a nested repeat section.
In the example below, the Total - Parent calculation response question can't reference number response questions in the Repeat sections (Child) as it's nested inside the Repeat section (Parent).

Scenario 2: A formula inside a repeat section can't reference a number or a calculation response question from a separate repeat section.
In the example below, Total - 2 calculation response question can't reference number response questions in the Repeat sections (1) as questions are in separate repeat sections.

If your inspection has a calculation formula with functions, you may get an error message on mobile app versions below 25.12. While the data entered will be calculated and can still be viewed on the web app, it's best to keep your mobile app up to date to ensure you can view functions in inspections.
Was this page helpful?
Thank you for letting us know.