PyGaze
PyGaze is a free, open-source toolbox for running eye-tracking experiments in Python.
What PyGaze is
PyGaze is a free, open-source toolbox for running eye-tracking experiments in Python. It presents a common interface for stimulus presentation and communication with eye trackers, including EyeLink, SMI, Tobii and mouse-simulated tracking modes. For stimuli, PyGaze supports PsychoPy and PyGame. The EyeTracker interface includes calibration, recording, gaze sampling, pupil-size retrieval, and functions for fixation and saccade events. Its gaze-contingent tools include forced retinal location, a gaze-following cursor and areas of interest. PyGaze supports Windows, Linux and macOS, with pip instructions, source packages and portable Windows environments listed as download options. The about page recommends Python 2.X and describes its intended users as people with minor to advanced programming skills. Some tracker connections have separate requirements: PyLink is proprietary and requires SR Research registration, while SMI and Tobii API downloads must be requested from their makers. Fresh gaze samples arrive at the eye tracker's sampling rate; between fresh samples, PyGaze returns the newest available one.
Good
- Free and open source.
- Supports EyeLink, SMI, Tobii and mouse simulation.
- Works with PsychoPy and PyGame.
- Includes calibration, recording and gaze-event functions.
- Runs on Windows, Linux and macOS.
Watch out
- The about page recommends Python 2.X.
- PyLink is proprietary and requires registration.
- SMI and Tobii API downloads must be requested from their makers.
- Fresh samples depend on the eye tracker's sampling rate.
Who it suits
PyGaze suits researchers or developers with some Python programming skills who are building eye-tracking experiments. It may also suit users who need gaze-contingent tools or support for the listed tracker and stimulus systems.
Verdict
PyGaze provides a shared Python interface for experiment presentation and eye-tracker communication, with additional gaze-contingent tools. Check the Python recommendation and separate tracker requirements before building around it.
Plans and prices
From PyGaze's own pricing page, checked 5 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| PyGaze | Free | Open-source eye-tracking toolbox · Python package and source downloads |
The facts
Each one read from PyGaze's own pages, with the date it was checked.
What it does
- Display integrations
- PyGaze supports PsychoPy and PyGame for stimulus presentation.checked 5 Oct 2026
- Downloads
- The download page provides pip installation instructions for Windows, Linux, and Mac OS X, plus source packages and portable Windows environments.checked 5 Oct 2026
- Eye-tracking functions
- The EyeTracker interface includes calibration, recording, gaze sampling, pupil-size retrieval, and fixation and saccade event functions.checked 5 Oct 2026
- Gaze-contingent tools
- Its gaze-contingent library includes forced retinal location, a gaze-following cursor, and areas of interest.checked 5 Oct 2026
- Intended users
- The about page describes PyGaze as aimed at people with minor to advanced programming skills, preferably in Python 2.X.checked 5 Oct 2026
- Performance limit
- PyGaze provides fresh gaze samples only at the eye tracker's sampling rate and returns the newest available sample between fresh samples.checked 5 Oct 2026
- Python requirement
- The about page recommends Python 2.X for users with minor to advanced programming skills.checked 5 Oct 2026
- Support
- The documentation invites users who cannot find an answer to contact the PyGaze team.checked 5 Oct 2026
- Supported trackers
- The documentation lists EyeLink, SMI, Tobii, and dummy mouse-simulated tracking modes.checked 5 Oct 2026
- Tracker dependencies
- Installation instructions say PyLink is proprietary and requires registration with SR Research, while SMI and Tobii API downloads must be requested from their makers.checked 5 Oct 2026
- Unified interface
- PyGaze wraps packages for stimulus presentation and eye-tracker communication behind a uniform, user-friendly syntax.checked 5 Oct 2026
- What it does
- PyGaze is an open-source toolbox for running eye-tracking experiments in Python.checked 5 Oct 2026
Where it runs
- Platforms
- The about page says PyGaze supports Windows, Linux, and Mac OS X.checked 5 Oct 2026
Alternatives to PyGaze
- 1

RealEye
AndroidiOSWeb7.0From $325 a month - 2
Hawkeye
Free planiOSWeb6.8From $39.99 a month - 3
GazeRecorder
Free planAndroidiOSWebWindows6.7Free plan - 4

Chiasm
Free planWebAPI6.6From €199 a month - 5

GazePlotter
Free planAndroidiOSWebLinux6.6Free plan - 6
iTrace
Free planWebLinuxSelf-hosted6.5Free plan
