Skip to content

Text formatting and inserted values

The texts of a form are stored as plain strings. Two things are interpreted when a text is shown: a small set of formatting marks, and placeholders in double braces that are replaced with data of the current response.

TextFormattingInserted values
Question title and properties.descriptionYesYes
Welcome page and end page title and properties.descriptionYesYes
End page properties.button_url and properties.automatic_redirect_urlNoYes
Option labels (choices[].label), row texts, scale labelsNoNo
You writeRespondents see
**bold**bold
*italic*italic
***both***both
~~struck~~struck
[our terms](https://example.com/terms)a link that opens in a new tab
![logo](https://example.com/logo.png)an image
a line breaka line break

Rules:

  • Links accept http, https, mailto and tel addresses. Images accept http and https.
  • Links are not available on the free plan. There, the link text is shown without the link.
  • HTML tags are removed. A form text cannot hold markup or scripts, and the editor refuses to save one that does.
  • To show a formatting character as it is, put a backslash before it: \* shows an asterisk.
  • One text can be up to 10000 characters long.

A placeholder is replaced with a value from the response being filled in. When there is no value yet, it is replaced with nothing.

PlaceholderReplaced with
{{component:<ref>}}The answer to the question with that ref.
{{hidden:<name>}}The value of a hidden field.
{{variable:<name>}}The current value of a variable.
{{response:id}}The identifier of the response.
{{response:time}}Time spent on the form so far, as m:ss or h:mm:ss.
{{response:seconds}}The same time in whole seconds.
{{compare:<ref>|…}}A check of the answer against the correct one. See Quiz feedback.

A placeholder without a prefix, {{name}}, is also accepted. The form looks for a variable with that name first, then a hidden field, then a question with that ref.

Inserted values are always shown as plain text. Formatting marks and tags inside an answer or a hidden field are not interpreted.

{
"type": "rating",
"title": "Thanks, {{hidden:first_name}}! How would you rate **{{component:5c1e9a40-3b7d-4f1e-9d2a-7a6f0c8e2b11}}**?"
}

With the hidden field first_name set to Anna and the earlier question answered Laptop, the respondent reads: “Thanks, Anna! How would you rate Laptop?”.

Question typeInserted text
textThe text.
dropdownThe label of the picked option.
number, rating, customer_sat, opinion_scaleThe number.
phone_numberThe phone number.
dateThe date as DD/MM/YYYY.
yesno, legalYes or No.
multiple_choice, picture_choiceThe labels of the picked options, separated by a comma and a space. For the “Other” option, the text the respondent typed.

The answers of matrix, ranking, slider, numbers_scale, constant_sum and semantic_differential questions cannot be inserted.

The editor writes placeholders for you: a text field has a list of the values that can be inserted at that point.

TextValues offered
Question title and descriptionAnswers to earlier questions, variables, hidden fields.
Welcome pageVariables and hidden fields.
End page title and descriptionAnswers to all questions, variables, hidden fields, {{response:time}}.
End page button and redirect addressesThe same, with {{response:id}} and {{response:seconds}}.

{{compare:…}} shows whether an answer was correct. It is meant for the end page of a quiz and for the questions after the checked one.

FormMeaning
{{compare:<question ref>|ref:<option ref>}}For multiple_choice, picture_choice and dropdown: the correct option, by its ref.
{{compare:<question ref>|'expected text'}}For other questions: the expected answer as text.

The placeholder is replaced with a check mark and the correct answer when the respondent’s answer matches. Otherwise it shows the respondent’s answer struck through, followed by the correct one.

A choice answer matches when the respondent picked exactly that one option. Because the option is named by its ref, the check works in every language of a translated form.