Calculated fields
A Calculation field is read-only for respondents. Write a formula over other answers, format the display, and use the result in logic. The server always recomputes the stored number.
What you can do
- Add a Calculation field from the builder palette.
- Keep it visible so respondents see a live total, or hide it from respondents and still store the value.
- Reference other fields by key:
{quantity} * {unit_price}. - Use
SUM,IF,ROUND,MIN, andMAX. - Give radio, dropdown, and checkbox options a numeric weight. Checkboxes sum the selected weights.
Formula language
Set a Field key / name on each input you want to reference, then insert tokens from the formula editor. Arithmetic (+ - * / %), comparisons (> < >= <= == !=), and && || ! are allowed. Division by zero and non-numeric answers become empty. There is no eval — only a small allowlisted parser.
Hidden-by-logic fields count as empty. Multi-step forms keep updating as answers change, including values from earlier steps.
Saving a form rejects unknown tokens and circular references (A depends on B and B depends on A).
Examples
Order total
Number fields quantity and unit_price, then a Calculation:
{quantity} * {unit_price}Tax on that subtotal (another Calculation named tax):
ROUND({order_total} * 0.08, 2)Quiz score
Radio questions with option weights (correct = 1, others = 0), then:
SUM({q1}, {q2}, {q3}, {q4}, {q5})Quote with a discount
IF({order_total} > 500, {order_total} * 0.9, {order_total})Show a “Request invoice” field with logic: IF total > 500 THEN show that field.
Formatting
Currency symbol, decimal places, prefix, and suffix change only how the number is shown. The entry stores the raw number. Exports, API v1, webhooks, Zapier, and mapped integration payloads include that stored value.
Submit and security
The public form updates live as people type. On submit the server ignores any client-sent calculation value and writes the recomputed number. Tampering with the total in the request does not change what is stored.