Repeat-from-data (stimulus testing)

Repeat a section of questions for each row in an uploaded data table — ideal for product testing, ad evaluation, and stimulus-driven research.

Repeat-from-data lets you upload a table of stimuli (product images, brand names, ad creatives, etc.) and have a section of questions repeat once for each row. Each trial shows the stimulus to the respondent and collects their responses, enabling within-subjects comparisons at scale.

survey-designadvancedstimulusresearch10-15 minutesIntermediate to AdvancedResearchersAcademicsProduct teamsBrand managers

Steps

  1. Create a section for your questions
    In the survey editor, create a section with the questions you want to repeat for each stimulus (e.g., "Rate this product" and "What do you like about it?").
  2. Enable repeat-from-data
    Open the section settings and enable Repeat from Data. This converts the section into a data-driven loop.
  3. Define fields and upload data
    Define the columns in your data table. Each field has a name, type (text or image), and visibility (participant — shown to respondents — or analysis — hidden, for your records only). Then add rows manually or import from a file.
  4. Configure selection and ordering
    Choose whether respondents see all rows or a random subset (set a sample size). Set the order to authored (fixed) or randomized (each respondent sees rows in a different order). Optionally filter rows per respondent using a URL parameter.
  5. Bind fields to question content
    Map data fields to where they appear in the section. Bind an image field to the stimulus display, or a text field to dynamic question text. Respondents see the bound content change for each trial.
  6. Preview and publish
    Use the live preview to see how the section repeats for each data row. Each trial shows the correct stimulus and collects independent responses.

Repeat-from-data is designed for stimulus-driven research: product evaluations, ad testing, packaging comparisons, and any study where respondents react to a series of items.

Each data row becomes a trial. The section's questions are asked once per row, with the row's image or text shown as a stimulus. Responses are tagged with the row they belong to for easy analysis.

Randomized ordering and random subsets help control for order effects and reduce respondent fatigue when testing large stimulus sets.

Row-level filtering lets you show different stimuli to different respondents based on a URL parameter — useful for between-subjects designs or panel routing.

Fields marked as "analysis only" are included in exports but hidden from respondents, letting you attach metadata (product IDs, categories, internal codes) to each trial without exposing it.

Repeat-from-data (stimulus testing) | QuestionPunk