Skip to content

responseOptions

Experiments Surveys & forms In surveys it lists the answer choices; on experiment trials the same cell configures the response widget (slider, box, clicks, mic, sort).

A column with several distinct uses: what it means depends on the trial’s responseType (and, for surveys/forms, on the question type). It carries: (a) the list of answer choices for form/survey questions and label responses, (b) slider configuration, (c) input-box constraints, (d) click-response settings, (e) microphone recording settings, and (f) response-flow flags (min/max multiple responses, waitResponseWindow, waitTimeout, noButton).

For a survey or form question, list the answer choices separated by ;: Never;Sometimes;Often. That is the most common use.

Everything in the cell is written as ;-separated values and flags. What those values mean depends on the trial’s responseType:

  • Form/survey choices (responseType = radio, checkboxes, dropdown, rank, likert, or a matrix built with responseRows): ;-separated choice texts; empty segments are ignored and %var% variables are replaced. A choice ending in :exclusive becomes a mutually exclusive checkbox option, with the keyword removed from the displayed text.
  • Slider (responseType=slider, standalone or in a form): the first segment is min_max, min_max_step, or a _-separated list of labels; numeric endpoints may carry a label in parentheses, as in 0(low)_10(high). Later segments: an optional start value (a number, or one of the labels), then any of the flags hideValue, hideStart, hideGrid, hideMinMax, hideLabels, removeFill. noButton removes or defers the Next button.
  • Input boxes (responseType=box / box*N): option:value pairs separated by ;, namely sum:N, min:N, max:N and width:N, plus HTML input attributes such as pattern:"[0-9]+", placeholder:... and maxlength:.... type: accepts color, date, datetime-local, email, month, number, range, tel, text, time, url and week; quotes around a value are removed.
  • Clicks (responseType=clicks): flags can be written in any case: min:N/max:N (multi-click selection), pixel (report pixel coordinates), origin:center|topright|bottomleft|bottomright (shift the coordinate origin), grid(RxC) (bucket clicks into an RxC grid; ignored when pixel is present).
  • Mic (responseType=mic): flags can be written in any case: save or save:MS (save a recording anchored on the voice onset; 1000 ms by default), save:all (record the entire trial from trial start; implies start:trial), save:no (never save), start:trial (start recording at trial start instead of at voice onset), prevoice:N (keep N ms of audio before the detected voice onset), noHide, hideRec. save:all, save:no, start:trial and prevoice:N must each be their own ;-separated segment; save, noHide and hideRec are recognized anywhere in the cell.
  • Sort trials: ;-separated stimulus positions (2;4;5) or a lower:upper range (2:5) saying which stimuli are sortable.
  • Keyboard and default trials: min:N / max:N (spaces around : are allowed) let the participant give several key responses.
  • Flow flags (any responseType): waitResponseWindow keeps the trial open until the response window closes even after a response; waitTimeout prevents the response window’s timeout from closing it.
  • Scoring labels: with a score column, the ;-separated segments here are the response values that map, in order, onto the ;-separated numbers in score.
Token / segmentApplies toEffect
text;text;...forms, label, rank, likert, matrixChoice list, order = display order (unless responseOptionsRandom)
choice:exclusivecheckboxesExclusive option (unchecks/blocks others)
min_max, min_max_stepsliderNumeric range and step (default step 1)
N(label) endpointssliderEndpoint labels: 0(not at all)_10(very)
lab1_lab2_lab3sliderDiscrete labeled slider (values 1..n)
number or label after first ;sliderStart position
hideValuesliderNever show tooltip value
hideStartsliderHide handle until touched; untouched slider records NA
hideGrid, hideMinMax, hideLabelssliderHide the respective chrome
removeFillslider (standalone + forms)Hide the filled bar
noButtonslider (standalone)No auto Next button
sum:NboxAll boxes must sum to N; boxes become type=number
min:N / max:NboxPer-box numeric bounds; boxes become type=number
width:NboxBox width in px
attr:value (e.g. pattern:"\d+", type:email, placeholder:x, maxlength:5)boxSet as HTML input attribute
min:N / max:Nkeyboard/default trialsMultiple responses: confirm after >=min, auto-end at max
min:N / max:NclicksMulti-click selection with Confirm button
N (standalone segment)clicksNo effect; use min:/max: instead (see Tips & gotchas)
pixelclicksResponse is stim_topxleft pixel position
origin:center/topright/bottomleft/bottomrightclicks + pixelShift coordinate origin; only works when origin: is the sole x:y pair in the cell (see Tips & gotchas)
grid(RxC)clicksResponse bucketed to grid cell
save, save:MSmicSave an onset-anchored recording; MS = duration in ms (default 1000)
save:allmicRecord the whole trial from trial start (forces start:trial); without buttons, keyboard or a responseWindow timeout the trial can never end
save:nomicNever save the recording, even if another segment contains save
start:trialmicStart recording at trial start instead of at voice onset
prevoice:NmicKeep N ms of audio before the detected voice onset in the saved file
noHide, hideRecmicKeep stimuli visible / hide the REC-waiting indicator; only unsaved voice-key trials ever hide stimuli, saved and start-at-trial recordings stay visible
2;4;5 or 2:5sortWhich stimulus indices are sortable
waitResponseWindowanyDo not end trial before the response window closes
waitTimeoutanyResponse-window timeout does not close the trial
left blankallNo options
  • With no responseOptions column, or with the cell left blank, the trial falls back to the plain behavior of its response type: no answer choices, no extra flags, no multiple responses, and nothing recorded from the microphone.
  • Form question types that need choices (radio, checkboxes, dropdown, rank, likert) should always fill this column in. Left blank, the question has nothing for the participant to pick.
  • Slider defaults: step 1, the handle starts at the minimum, and none of the hide flags apply. The scale is numeric unless the first segment is not a number, or has more than three _-separated parts, in which case those parts become labels with the values 1 to n.
  • Sort trials with the cell left blank have no sortable stimuli.
  • responseType: decides which of this column’s meanings applies, both on test trials and in form questions.
  • responseOptionsRandom: any value shuffles the choice order shown to the participant; responseCode in the results still counts positions in the ORIGINAL order you wrote here.
  • responseRows: turns choices into matrix columns, one row per responseRows entry.
  • responseOther: appends an “other” choice with text input.
  • keyboard: min:/max: here is what enables multiple keyboard responses; see the keyboard page.
  • key: for radio/dropdown/rank/checkboxes the expected answer is usually expressed as responseCode=N against the 1-based position in this column’s original order.
  • score: this column’s segments are the lookup keys for the score column’s values.
  • required: with box responses, any value in required forces every box to be filled in before the trial can be submitted, and pressing Enter on an empty single box shows the error message and keeps the trial open (without it, that Enter is ignored); with sliders, it hides the automatic Next button until the slider is touched.
  • responseWindow: the waitResponseWindow and waitTimeout flags change how the response window opens and closes the trial. The minimum-duration lock is written as min: in the responseWindow column itself, not here.
  • Multiplayer: responseOptions is one of the columns shared to the arena.
  • Dynamic lists and variables: on form trials the expanded dynamic-list value is used, and variables in the cell are substituted before the question is built.
typeheadresponseTyperesponseOptionsresponseOptionsRandom
testHow do you feel today?radioBad;Neutral;Good;None of these:exclusive1

Randomized radio choices; responseCode records the position in the written (unrandomized) list.

typestim1responseTyperesponseOptions
testpain_scaleslider0(no pain)_10(worst pain);5;hideValue;removeFill

Numeric slider 0-10 with endpoint labels, starting at 5, tooltip hidden, fill bar removed.

typestim1stimFormatresponseTyperesponseOptions
testmap.jpgclickspixel;origin:center

Click response on the image reported as pixel coordinates relative to the image center. Do not add min:/max: (or any other x:y pair) to a cell that uses origin: (see Tips & gotchas); plain pixel;min:1;max:3 without origin: is fine.

  • On click trials min:/max: must be written without spaces around the colon; on keyboard trials spaces are tolerated.
  • The standalone number for clicks does nothing; min:/max: is what controls how many clicks are collected.
  • pixel and grid(...) cannot be combined: pixel wins.
  • For form sliders with label lists, the recorded response is the label text and responseCode is the slider’s numeric value.
  • An untouched STANDALONE slider only records NA when hideStart is present. An untouched slider inside a form always records NA, with or without hideStart, even though the handle was showing its start value. A form slider the participant deliberately sets to 0 records 0, not NA, and a required slider cannot be submitted untouched at all.
  • Input attributes written in this column are only applied to input boxes, whatever the trial’s response type.
  • The standalone box and comment response types split the cell on : as well as ;, so labels containing a colon behave differently there.

responseOptions appears in these worked recipes:

  • Label choice task: Let participants assign on-screen text labels to images by drag and drop, requiring a minimum amount of labelling before they can continue.
  • Likert block in random order: Present a block of likert questions in a fresh random order per participant, with the answer options in a fixed order.
  • Slider rating trial: Rate each stimulus on a configurable slider scale inside an experiment trial.
  • Voice-recorded picture naming: Collect spoken picture-naming responses, saving an audio recording and the voice onset for every trial.
  • Factorial vignette study: Show each participant one version of a scenario from a factorial design, then have everyone rate it on the same questions.