Stimulus Display
Stimulus Display lets you show an image alongside any input component, so participants can view a visual stimulus while providing their response. This is useful for tasks like "rate this image," "describe what you see," or "rank these features based on the photo."
Overview
Seven input components support inline stimulus display:
When enabled, an image appears next to the input in one of four layout positions. The image can be a static file from your media library or a dynamic URL that changes per trial using {variableName} syntax.
The Image component is a standalone focus component — it occupies the entire state by itself. Stimulus Display embeds an image within an input component, so participants see the image and the response interface together in a single state. This avoids the need for a separate "view image" state followed by a "respond" state.
Enabling Stimulus Display
- Select a state that uses one of the 7 supported input components
- Open the component configuration panel
- Toggle "Show Stimulus Image" to on
- Select an image from the media browser, or enter a dynamic URL
- Configure the layout, size, and optional caption
Configuration
Image Selection
| Setting | Values | Description |
|---|---|---|
| Show Stimulus Image | On / Off | Enables or disables the stimulus display |
| Stimulus Image | Static image or dynamic URL | Select from the media browser for a fixed image, or enter a {variableName} template for dynamic selection |
You can select an image in two ways:
- Static: Click "Select Image" to open the media browser and choose a file. The image URL is stored directly in the component config.
- Dynamic: Enter a template expression in the "Or enter dynamic URL" field. For example,
{lookup(chosenCategory, "imageSet")}resolves to a different image based on the participant's earlier choice. See Using Dynamic Stimulus URLs below.
Layout Options
| Setting | Values | Description |
|---|---|---|
| Stimulus Layout | above, below, left, right | Position of the image relative to the input |
Layout behaviors:
- above — Image appears above the input, centered. Good for "view then respond" flows.
- below — Image appears below the input, centered. Useful when the question text should be read first.
- left — Image and input are side-by-side, with the image on the left. Good when participants need to reference the image while responding.
- right — Image and input are side-by-side, with the image on the right.
The left and right layouts automatically collapse to a stacked (above) layout on smaller screens to ensure usability on mobile devices.
Size Options
| Setting | Values | Description |
|---|---|---|
| Stimulus Size | small, medium, large, fullwidth | Maximum width of the displayed image |
Size presets:
| Value | Max Width |
|---|---|
small | 300px |
medium | 500px |
large | 800px |
fullwidth | 100% of container |
The image maintains its aspect ratio within the max width. Choose a size appropriate to your stimuli — small works for icons or thumbnails, large or fullwidth for detailed images that participants need to examine closely.
Caption
| Setting | Values | Description |
|---|---|---|
| Stimulus Caption | Text (optional) | Caption displayed below the image |
The caption supports {variableName} syntax, so you can display dynamic text like "Image: {trialNumber} of {totalTrials}" or "Category: {selectedCategory}".
Using Dynamic Stimulus URLs
Instead of selecting a fixed image, you can use variable templates to show different images across trials or conditions. Enter a template expression in the dynamic URL field:
{lookup(userChoice, "imageChoices")}
{sample("facePool", "without_replacement")}
{lookupAndSample(emotion, "emotionFolders")}
These expressions use the same lookup(), sample(), and lookupAndSample() functions documented in Stimulus Mappings. The key difference is that Stimulus Mappings describes how to set up the variable-to-image mapping logic, while Stimulus Display controls how and where the resolved image appears alongside the input.
Typical workflow for dynamic stimuli:
- Define your stimulus mapping in the Variables tab (see Creating Stimulus Mappings)
- Enable Stimulus Display on your input component
- Enter the template expression (e.g.,
{sample("faces")}) as the dynamic URL - The image resolves at runtime based on the participant's state and variables
Data Collection
Stimulus metadata is automatically recorded alongside each component response. You don't need to configure anything extra — if a stimulus was displayed, its URL and caption are included in the response data.
Viewing in Data Management
In the Data Management > Components tab:
- The Content column shows a
[+stimulus]indicator for any response that had a stimulus displayed - The Stimulus URL column (optional, add via column selector) shows the resolved image URL
- The Stimulus Caption column (optional) shows the resolved caption text
In Exported Data
When you export component data as CSV, the stimulus URL and caption are included as separate columns for each response row, making it straightforward to analyze which stimulus was paired with which response.
Examples
Basic: Image Above a Likert Scale
A simple "rate this image" task:
- Add a state with a Likert Scale component
- Set the question to "How pleasant is this image?"
- Toggle Show Stimulus Image on
- Click Select Image and choose an image from your media library
- Set Stimulus Layout to
above(default) - Set Stimulus Size to
medium
The participant sees the image centered above the Likert scale and selects their rating.
Side-by-Side: Image Left of Multiple Choice
An image identification task where participants need to reference the image while choosing:
- Add a state with a Multiple Choice component
- Set the question to "What emotion is shown in this face?"
- Add options: "Happy", "Sad", "Angry", "Neutral"
- Toggle Show Stimulus Image on
- Click Select Image and choose a face image
- Set Stimulus Layout to
left - Set Stimulus Size to
medium
The image appears on the left side with the multiple choice options on the right, making it easy to look back and forth.
Dynamic: Variable-Driven Stimulus with VAS Rating
A multi-trial design where each trial shows a different image from a pool:
- In the Variables tab, create a Category stimulus mapping called
scenePictureswith your images - Add a state with a VAS Rating component
- Set the question to "How arousing is this scene?"
- Toggle Show Stimulus Image on
- In the dynamic URL field, enter:
{sample("scenePictures", "without_replacement")} - Set Stimulus Layout to
above - Set Stimulus Size to
large
Each time the participant enters this state (e.g., in a loop), a different image is drawn from the pool without repetition.
Best Practices
- Choose appropriate sizes for your stimuli — use
largeorfullwidthfor images with fine detail;smallormediumfor simple icons or thumbnails - Use
leftorrightlayout when participants need to reference the image while responding — this keeps both the stimulus and the input visible without scrolling - Use
abovelayout for simple "view then rate" flows — it provides a natural top-to-bottom reading order - Keep captions brief — they're meant for context (e.g., trial number), not lengthy descriptions
- Test on different screen sizes — side-by-side layouts collapse to stacked on mobile, so verify your experiment works well in both modes
- Use dynamic URLs with stimulus mappings for multi-trial designs — this avoids creating a separate state for each image
Related Documentation
- Stimulus Mappings — set up dynamic image/video selection with variables, sampling strategies, and lookup functions
- Component Overview — all available focus and global components
- Text Input | Likert Scale | VAS Rating | Multiple Choice | Ranking | Audio Recording | Rapid Rate — individual component documentation