Introducing Inquisit 5

Inquisit is a general purpose psychological experimentation application for designing and administering psychological experiments and measures. Inquisit can run a given script locally on a Windows PC or Mac, or it can be used to administer tasks over the web. Inquisit can be used to implement a wide range of psychological measures, including reaction time tasks, psychophysiological experiments, attitude measures, surveys, games, learning and memory tasks, judgement and decision making paradigms, and more.


An Inquisit experiment is specified using Inquisit's powerful and intuitive scripting language. The script defines all of the pieces of the experiment such as the stimuli, questionaire items, trials, blocks of trials, instructions, as well as the logic determining the flow of events. An Inquisit script is saved as a plain text UTF-8 file with the *.iqx file extension. The file format is unicode, so it can store and present characters from any locale, including east Asian, Hebrew, Arabic, and Cyrillic character sets.

To edit a script, simply open the script file using the Open command on the File menu. Once you've opened a script, you can edit it in the rich text editor, or validate the syntax, and run it using the corresponding commands from the Experiment menu.

The Inquisit Scripting Language

The Inquisit language was designed to be easy and approachable to nonprogrammers who are familiar with the basics of experimental psychology. The structure of the Inquisit scripting language should be familiar to anyone who has programmed html and javascript. However, some of the cumbersome aspects of html syntax have been streamlined to make Inquisit scripts easier to read and write.

The Inquisit scripting language consists of elements and attributes, which enable you declare and configure the various parts that make up the task. Elements are the basic building blocks of a script. Commonly used elements include
expt (experiment)
just to name a few.

Each element, in turn, has a set of attributes that determine exactly how that element behaves. For example, Inquisit's text element, which defines a set a text stimuli, has attributes that specify the color, font, and the location of the screen to present the text.

Some elements, such as the expt, block, and trial elements, include event handler attributes that are triggered when the element is run. These enable you to dynamically get and set properties on any element as the script is running using a simple expression syntax similar to Javascript. These special event handler attributes are useful for defining more sophisticated paradigms in which the flow of the task changes based on the subject's performance or other conditions.

Writing an Inquisit script is simply a matter of defining the elements of your experiment and setting their attributes to the desired values. Once you understand this basic idea, it's just a matter of familiarizing yourself with the details of the elements and attributes. To get started learning how to write Inquisit scripts, read through the tutorials.

Running Scripts

For experiments run on a dedicated Windows PC or Mac, scripts are written and run using the Inquisit application. Once you have written script, downloaded one from the Inquisit Task Library, or obtained one from some other source, you can open the script in Inquisit run the entire experiment or right click on a particular element to run just that piece. For web experiments, scripts are run by uploading them to the Millisecond server from your account and then starting them from the launch web page.

When a script is run, Inquisit first parses its commands. If the script contains no errors, it runs. Otherwise, Inquisit reports the errors in the output window at the bottom of the screen. If you click the error, the editor will jump to the line of code that caused the problem. Note that Inquisit does not compile a script into an executable file that can be run by itself. Running a script thus requires the Inquisit application to be installed on the machine, or that it be launched from an Inquisit web page that is specially designed to run it over the web.

Recording Data

As Inquisit Lab runs an experiment, it writes the data to a file. By default, the data file is located in the same folder as the script file using the same name as the script file except that the file extension is changed to "dat". By default, Inquisit Web saves data files to the Inquisit web server where you can log in to your Millisecond account and download the files.

For cognitive tasks, each line of data in the file corresponds to a single trial. In addition, a task can be configured to recorded a single line of summary data for each participant using the summarydata element. For surveys, all responses from each participant are stored on a single line. Inquisit data files can be imported directly into programs like SPSS and Excel for analysis. Inquisit can be configured to record metrics such as mean and median response latencies, standard deviations, percentage of correct response, and even custom statistics, but for most purposes, it is necessary to analyze the data using a statistical analysis program.

Learning Resources

To learn Inquisit, we suggest the following:

  1. Read through the tutorials.
  2. Download and run scripts from the Inquisit Task Library.
  3. Make minor modifications to a scripts from the library using the language reference as your guide (tip: from the editor, press F1 and the reference topic for the currently selected element will open).
  4. Read through the How To topics.
  5. If you get stuck, go to and enter your question in the search box (powered by Google). If you are unable to find the information you need, you can post a question to our online forums or email