labvanced logoLabVanced
  • Research
    • Publications
    • Researcher Interviews
    • Use Cases
      • Developmental Psychology
      • Linguistics
      • Clinical & Digital Health
      • Educational Psychology
      • Cognitive & Neuro
      • Social & Personality
      • Arts Research
      • Sports & Movement
      • Marketing & Consumer Behavior
      • Economics
      • HCI / UX
      • Commercial / Industry Use
    • Labvanced Blog
    • Services
  • Technology
    • Feature Overview
    • Code-Free Study Building
    • Eye Tracking
    • Mouse Tracking
    • Generative AI Integration
    • Multi User Studies
    • More ...
      • Reaction Time/Precise Timing
      • Text Transcription
      • Heart Rate Detection (rPPG)
      • Emotion Detection
      • Questionnaires/Surveys
      • Experimental Control
      • Data Privacy & Security
      • Desktop App
      • Mobile App
  • Learn
    • Guide
    • Videos
    • Walkthroughs
    • FAQ
    • Release Notes
    • Documents
    • Classroom
  • Experiments
    • Cognitive Tests
    • Sample Studies
    • Public Experiment Library
  • Pricing
    • Licenses
    • Top-Up Recordings
    • Subject Recruitment
    • Study Building
    • Dedicated Support
    • Checkout
  • About
    • About Us
    • Contact
    • Downloads
    • Careers
    • Impressum
    • Disclaimer
    • Privacy & Security
    • Terms & Conditions
    • Third-Party Licenses
  • Appgo to app icon
  • Logingo to app icon
Learn
Guide
Videos
Walkthroughs
FAQ
Newsletter Archive
Documents
Classroom
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • 日本語
Guide
Videos
Walkthroughs
FAQ
Newsletter Archive
Documents
Classroom
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • 日本語
  • Guide
    • GETTING STARTED

      • Task Editor
      • Stimulus Presentation
      • Correctness of Response
      • Objects
      • Events
      • Variables
      • Task Wizard
      • Trial System
      • Study Design
        • Tasks
        • Blocks
        • Sessions
        • Groups
    • FEATURED TOPICS

      • Experiment Design
        • Creating a Study
        • Data Frame Patterns
      • Randomization & Balance
      • Eye Tracking
      • Questionnaires
      • Desktop App
      • Sample Studies
      • Participant Recruitment
      • API Access
        • REST API
        • Webhook API
        • WebSocket API
      • Other Topics

        • Precise Stimulus Timings
        • Multi User Studies
        • Head Tracking in Labvanced | Guide
    • MAIN APP TABS

      • Overview: Main Tabs
      • Dashboard
      • My Studies
      • Shared Studies
      • My Files
      • Experiment Library
      • My Account
      • License & Services
    • STUDY TABS

      • Overview: Study-Specific Tabs
      • Study Design
        • Tasks
        • Blocks
        • Sessions
        • Groups
      • Task Editor
        • Task Controls
        • The Trial System
        • Canvas and Page Frames
        • Objects
        • Object Property Tables
        • Variables
        • System Variables Tables
        • The Event System
        • Text Editor Functions
        • Eyetracking in a Task
        • Head Tracking in a Task
        • Multi-User Studies
      • Settings
      • Variables
      • Media
      • Texts & Translate
      • Launch & Participate
      • Subject Management
      • Dataview and Export
        • Dataview and Variable & Task Selection (OLD Version)
        • Accessing Recordings (OLD Version)
  • Videos
    • Video Overview
    • Getting Started in Labvanced
    • Creating Tasks
    • Element Videos
    • Events & Variables
    • Advanced Topics
  • Walkthroughs
    • Introduction
    • Stroop Task
    • Lexical Decision Task
    • Posner Gaze Cueing Task
    • Change Blindness Flicker Paradigm
    • Eye-tracking Sample Study
    • Infant Eye-tracking Study
    • Attentional Capture Study with Mouse Tracking
    • Rapid Serial Visual Presentation
    • ChatGPT Study
    • Eye Tracking Demo: SVGs as AOIs
    • Multi-User Demo: Show Subjects' Cursors
    • Gamepad / Joystick Controller- Basic Set Up
    • Desktop App Study with EEG Integration
    • Between-subjects Group Balancing and Variable Setup
  • FAQ
    • Features
    • Support Policy & Guidelines
    • Security & Data Privacy
    • Licensing
    • Precision of Labvanced
    • Programmatic Use & API
    • Using Labvanced Offline
    • Troubleshooting
    • Study Creation Questions
  • Newsletter Archive
  • Documents
  • Classroom
Multiple Choice Object in the Labvanced experiment editor.

Multiple Choice Object

The Multiple Choice Object presents participants with a set of labeled options and records which one they select. Options can be static text labels or driven by Labvanced variables at runtime, making it straightforward to build dynamic questionnaires where option labels and submitted values change based on prior answers or experimental conditions. The selected response is stored in a linked string variable.

Table of Contents

  • Adding the Multiple Choice Object
  • Object Properties
  • Adding and Configuring Options
  • Per-Entry Variable Linking
  • Randomizing Option Order
  • Custom Answer
  • Variable Integration
  • Further Reading

Adding the Multiple Choice Object

In the task editor toolbar, open the Question Options group and select Multiple Choice to add the element to the current frame.

When the element is added, Labvanced prompts you to name the variable that will store the participant's selected response. The variable is a string type and records the submitted value of whichever option the participant chooses.

By default, two options are added automatically. You can add or remove options using the + and - controls in the Object Properties panel.


Object Properties

PropertyDefaultDescription
Randomize Item OrderOffWhen enabled, the order of options is randomized at the start of each trial.
Link Item Order to ArrayOffWhen Randomize Item Order is on, stores the randomized order in a numeric array variable. Useful for recording presentation order in the data.
Show Question HeaderOnShows the question text above the options. Edit the question text directly on the frame in the editor.
RequiredOffWhen enabled, the participant cannot proceed until they have selected an option.
Allow Custom AnswerOffAdds a free-text entry field as an additional option at the bottom of the list.
Show only if last option selectedOffWhen Allow Custom Answer is enabled, keeps the free-text field hidden until the participant selects the last option.

Adding and Configuring Options

Each option has two parts:

  • Display label: The text shown to the participant. Click the option text directly on the frame in the editor to type or edit it. This is not editable in the Object Properties panel.
  • Variable Value: The string recorded in the linked variable when the participant selects this option. Defaults to option_1, option_2, etc. Change it in the Variable Value column of the Object Properties panel.

To add an option, click + in the Object Properties panel. To remove the last option, click -.


Per-Entry Variable Linking

Each option can be linked to a Labvanced variable. When a variable is linked to an option, both the display label and the submitted value are driven by that variable's current value at runtime rather than the static text and value set in the editor.

This makes it possible to:

  • Build questionnaires where option labels change based on prior answers or experimental factors
  • Load option content from a data frame for counterbalanced or personalized stimulus presentation
  • Use the same Multiple Choice Object across conditions while varying what options say

To link a variable to an option:

In the Object Properties panel, locate the option entry and use the variable selector to choose an existing variable or create a new one. Once linked, the option's display label updates to show the variable name as a placeholder in the editor, and the variable's runtime value is used for both label and submitted value during the experiment.

Note: When a variable is linked, the static label and submitted value fields for that entry are overridden by the variable. If the variable has no value at runtime, the option renders empty.


Randomizing Option Order

Enable Randomize Item Order in the Object Properties panel to randomize the order in which options are presented to each participant at the start of each trial.

If you also need to record the presentation order for analysis (for example, to account for order effects), enable Link Item Order to Array and provide a variable name. This creates a numeric array variable that stores the shuffled order as a sequence of option index numbers, recorded at trial end alongside the participant's response.


Custom Answer

Enable Allow Custom Answer to add a free-text entry field as an additional option at the bottom of the list. Participants who select it can type a custom response. The typed value is recorded in the main linked variable in place of a static submitted value.

Enable Show only if last option selected to keep the text field hidden until the participant selects the last option in the list. This is a common pattern for "Other (please specify)" designs.


Variable Integration

The Multiple Choice Object is linked to one string variable, created when you add the element. When a participant selects an option, the submitted value for that option is written to the variable and recorded at trial end.

  • If the option uses a static submitted value, that string is recorded.
  • If the option is linked to a variable, the runtime value of that linked variable is recorded.
  • If Allow Custom Answer is selected, the participant's typed text is recorded.

To relink the element to a different variable, use the variable selector in the Object Properties panel.


Further Reading

Working with Variables

How to create, configure, and record variables. Covers the string variable that stores the selected response and the array variable used to record randomized option order.

Data Frame Variables

How to load stimulus content from a CSV at runtime. Relevant when using per-entry variable linking to drive option labels and values from a data frame.

Event System

How triggers and actions are structured. Use the event system to branch experiment logic based on which option a participant selected.