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

      • 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

Variable Types

Labvanced organizes variables into six types. Understanding which type a variable belongs to tells you how it was created, what it can hold, and how it behaves during the experiment.

System Variables

System variables are created automatically by Labvanced and cannot be modified or deleted. They track experiment-level information such as trial number, subject counter, browser type, screen size, and session start and end times. They are particularly useful in event requirements, for example to execute an action only on a specific trial number. For a full list, see System Variables.

Factor Variables

Factor variables are linked to a factor in the trial system. Each factor has one linked variable with a categorical data type, and the factor levels are the possible values of that variable. When creating a factor, Labvanced can create the linked variable automatically, or you can link an existing variable. Factor variables appear in the data export for every trial, making it easy to identify the condition each trial belonged to.

Note: changing the levels of a factor variable also changes the trial structure in all linked tasks and trial groups.

Object Variables

Object variables are created automatically when you add a questionnaire or response-capturing object to a frame, such as a checkbox, slider, Likert scale, or dropdown. Labvanced prompts you to name the variable at the time of adding the object. The participant's response is stored in this variable during the experiment. Object variables are recorded by default and most of their properties cannot be changed to preserve their functionality.

Custom Variables

Custom variables are created by the researcher for any purpose not covered by the automatic types. Common uses include recording participant responses (mouse clicks, key presses), tracking reaction times, counting correct answers, storing indices for loops, or holding file data (images, audio, video). When a custom variable has no active usage in objects or events, it is listed as unused in the Variables tab.

Array Variables

An array variable holds an ordered list of values, like one column in a spreadsheet. Arrays are useful for storing stimulus sets, randomization lists, or any sequence of values that needs to be accessed one entry at a time during the experiment.

To populate an array, upload a .csv file or add entries manually using the plus icon in the variable properties panel.

Creating an array variable in the variables tab

For actions that work with arrays, see Array Actions.

Data Frame Variables

A data frame holds multiple variables in a tabular structure, like a spreadsheet with multiple columns. Each column is a variable that can hold string, numeric, boolean, or file values. By default, data frame cells are read-only. To edit values directly, enable the Edit Values checkbox in the Data Frame Dialog. You can also add or replace all data by uploading a new .csv file.

To add a data frame, click Upload 2D CSV Data in the variable properties panel. When importing, you can choose:

  • Map Strings to Files: treats string values as filenames and maps them to files in a folder.
  • Use First Row as Header: uses the first row as column (variable) names.
  • Transpose Data: uploads the data as-is without transposing rows and columns.

Data frame dialog box

To add columns to an existing data frame, use Add variable/column at the top of the Data Frame dialog.

For a full guide to setting up and using data frames, see Data Frame Variables. For the event system actions, see Data Frame Operations.

Further reading

Creating Variables

The four ways to create a variable in Labvanced, with step-by-step instructions for each method.

Variable Properties

A full reference for every variable setting: data type, scale, format, start value, reset behavior, and recording options.

Working with Variables

The hub page for the working-with-variables section: types, properties, recording options, and data frames.