Installation

Download

PsychoPy Standalone (Stable)

Tried and tested, PsychoPy Standalone is the best option for an install that “just works”.

We will continue to release new versions until PsychoPy Studio is stable enough to replace it.

PsychoPy Standalone 2026.1.3

PsychoPy Studio (Beta)

PsychoPy Studio is a full rebuild of the PsychoPy desktop app using web-based libraries (Svelte and Electron).

The underlying experiment engine is still Python, but Studio provides a smoother, more user-friendly interface and better version independence with useVersion.

PsychoPy Studio 2026.1.3

PsychoPy Standalone (Stable)

Tried and tested, PsychoPy Standalone is the best option for an install that “just works”.

We will continue to release new versions until PsychoPy Studio is stable enough to replace it.

PsychoPy Standalone 2026.1.3

PsychoPy Studio (Beta)

PsychoPy Studio is a full rebuild of the PsychoPy desktop app using web-based libraries (Svelte and Electron).

The underlying experiment engine is still Python, but Studio provides a smoother, more user-friendly interface and better version independence with useVersion.

PsychoPy Studio 2026.1.3

PsychoPy Standalone (Stable)

Make sure curl is installed (most distros include it by default).

Show installer options:

bash <(curl -LsSf https://github.com/wieluk/psychopy_linux_installer/releases/latest/download/psychopy_linux_installer) --help

Start installer with GUI:

bash <(curl -LsSf https://github.com/wieluk/psychopy_linux_installer/releases/latest/download/psychopy_linux_installer) --gui

Note: zenity must be installed for GUI mode.

Start installer without GUI:

bash <(curl -LsSf https://github.com/wieluk/psychopy_linux_installer/releases/latest/download/psychopy_linux_installer)

For help, troubleshooting, or to report issues, visit the psychopy_linux_installer GitHub page.

For uninstall instructions, see the Uninstall section of the README.

PsychoPy Studio (Beta)

PsychoPy Studio is a full rebuild of the PsychoPy desktop app using web-based libraries (Svelte and Electron).

The underlying experiment engine is still Python, but Studio provides a smoother, more user-friendly interface and better version independence with useVersion.

Plus, it’s much easier to install on Linux!

PsychoPy Studio 2026.1.3

For all versions see the PsychoPy releases on github

PsychoPy® is distributed under the GPL3 license

Manual installations

See below for options if you want to run the Python app but don’t want to use the Standalone releases. Before any of these options, you should setup a Python environment of the correct version for the version of PsychoPy you want to install.

Setup Python

The version of Python on which PsychoPy runs best has increased with successive versions, so before installing PsychoPy you should check that you have the correct version of Python installed. Below are the versions at which PsychoPy updated to support different Python versions:

  • 2022.1.0: 3.8

  • 2024.2.0: 3.10

  • 2026.2.0: 3.11

Once you know what version you want, you can install Python by whatever method you prefer. Installers are provided on the Python website, or you can use a package manager like UV to install Python along with the packages.

uv/pip install

pip is the package manager recommended by Python, you can read more about it here. UV is a newer tool which handles packages and Python environments in one interface, you can read more about it here. When you first open PsychoPy Studio and it sets up a Python environment for you, UV is what it uses, so we take great care to make sure UV installs specifically work smoothly! We include these together as UV is intentionally similar to pip, so the process of installing via either manager is extremely similar.

Installing in either UV or pip can be done with a single command in the terminal:

# for pip
python -m pip install psychopy psychopy-app
# for uv
uv pip install psychopy psychopy-app

This will install both the PsychoPy library (psychopy) and the Python app (psychopy-app), and all their dependencies. To install just the library (for running experiments as scripts), just remove psychopy-app from the command. To install without any dependencies (if you prefer to set them up yourself), just add --no-deps to the end of the command.

brew install

This is a user-contributed option and may or may not work.

On a MacOS machine, brew can be used to install PsychoPy®:

brew install --cask psychopy
Anaconda and Miniconda

Support for conda was contributed and is badly outdated but you may be able to get it working using pip install within your conda environment.

Generally we recommend you use StandalonePsychoPy instead, for experiment creation, as an entirely separate app, and use your conda installation for other (e.g. analysis) scripts.

Alternatively if someone wants to jump in and get things working here again that would be appreciated by other users I’m sure.

Linux

Installing just the PsychoPy library on Linux is the same as installing on Windows or Mac, see instructions for uv/pip above. However, the PsychoPy Python app uses wxPython, which is notorious for poor Linux support, so installing that on Linux is often rather painful. For this reason, we strongly recommend using PsychoPy Studio if you’re on Linux.

If you do need the Python app, here are the legacy instructions for installing it on Linux:

Legacy install

We are aware that the procedure for installing on Linux is often rather painful. This is not the platform that the core PsychoPy developers currently use so support is less good than on some platforms. Feel free to jump in and help improve it as a contributor! :-)

There used to be neurodebian and Gentoo packages for PsychoPy® but these are both badly outdated. We’d recommend you first make sure you have a compatible Python version installed (currently >=3.8, <3.11). If you need an older version, you can on Ubuntu for example do:

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.10-venv python3.10-dev
python3.10 -m venv path/to/new/psychopyenv  # choose a path of interest!
source path/to/new/psychopyenv/bin/activate

Once you have a compatible Python activated, copy the link to a wxPython wheel for your platform from:

https://extras.wxpython.org/wxPython4/extras/linux/gtk3/

and having downloaded the right wheel you can then install it with something like:

pip install https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-22.04/wxPython-4.2.1-cp310-cp310-linux_x86_64.whl

wxPython>=4.0 doesn’t have universal wheels yet which is why you have to find and install the correct wheel for your particular flavor of linux. If a wheel is not yet available for your platform (e.g., a new version of Linux), you will have to build it manually. For example, you can use pip download wxPython, extract the archive, enter the directory, and try python setup.py bdist_wheel to build a wheel yourself. You will likely need to install some system build dependencies. Once it builds, you can install for example with pip install dist/wxPython*.whl.

For some reasons wxPython (wx.html2) is using an older version of libwebkitgtk e.g. psychopy will not show up to fix this (of our own risk): sudo add-apt-repository ‘deb http://archive.ubuntu.com/ubuntu bionic main universe’ sudo apt install -t bionic libwebkitgtk-1.0-0

Finally, you can do:

# with --no-deps flag if you want to install dependencies manually
pip install psychopy

Building Python PsychToolbox bindings:

The PsychToolbox bindings for Python provide superior timing for sounds and keyboard responses. Unfortunately we haven’t been able to build universal wheels for these yet so you may have to build the pkg yourself. That should not be hard. You need the necessary dev libraries installed first:

sudo apt-get install libusb-1.0-0-dev portaudio19-dev libasound2-dev

and then you should be able to install using pip and it will build the extensions as needed:

pip install psychtoolbox
Developers install

First, follow the instructions to fork and fetch to fetch the latest versions of the psychopy and psychopy-app repositories.

From each directory where you cloned these two projects to, run:

# for pip
python -m pip install -e .
# for uv
uv pip install -e .

This will install PsychoPy® (from the psychopy directory) and the PsychoPy Python app (from the psychopy-app directory) in such a way that when you change the code, you won’t have to reinstall to see your code changes in effect.

To run the app, you can now call in terminal (or by your preferred means, e.g. a shortcut file or VS Code launch config):

python -m psychopy_app

Back to top