FREEDOM251

Freedom251 › Eye Tracking Software

PyGaze

Free plan LinuxMacWindows

Visit PyGaze Alternatives Pricing

PyGaze's own site

What PyGaze is

PyGaze is a free, open-source Python toolbox for running eye-tracking experiments. It places a consistent interface around stimulus-presentation packages and eye-tracker communication, and supports EyeLink, SMI, Tobii, and mouse-simulated tracking. Experiments can present stimuli through PsychoPy or PyGame. Its EyeTracker interface covers calibration, recording, gaze sampling, pupil-size retrieval, and fixation and saccade events. The gaze-contingent library includes forced retinal location, a gaze-following cursor, and areas of interest.

PyGaze runs on Linux, macOS, and Windows; downloads include pip instructions, source packages, and portable Windows environments. The about page recommends Python 2.X and describes an audience with minor to advanced programming skills. Tracker connections can require separate steps: PyLink is proprietary and requires registration with SR Research, while SMI and Tobii API downloads must be requested from their makers. Fresh gaze samples arrive at the tracker’s sampling rate; between them, PyGaze returns the newest available sample.

Who it suits

PyGaze suits people with minor to advanced programming skills who want to run eye-tracking experiments in Python. It is intended for users of Linux, macOS, or Windows and supports several named trackers as well as mouse simulation.

What it does well

  • Free and open source.
  • Supports EyeLink, SMI, Tobii, and mouse simulation.
  • Works with PsychoPy and PyGame.
  • Includes calibration, gaze sampling, and event functions.
  • Offers gaze-contingent tools and areas of interest.

What to know first

  • The about page recommends Python 2.X.
  • PyLink requires SR Research registration.
  • SMI and Tobii API downloads require requests to their makers.
  • Fresh gaze samples arrive only at tracker sampling rate.

Limits

PyGaze supplies fresh gaze samples only at the eye tracker’s sampling rate; between fresh samples, it returns the newest available sample. PyLink is proprietary and requires registration with SR Research, while SMI and Tobii API downloads must be requested from their makers.

Plans

PlanBilled and limitsPrice
PyGazeOpen-source eye-tracking toolbox · Python package and source downloadsFree

As pygaze.org lists them, read 5 Oct 2026. The maker's own page has the final word.

Getting started

  1. Visit the PyGaze website.
  2. Choose pip installation, a source package, or a portable Windows environment.
  3. Install on Windows, Linux, or macOS.
  4. Use the tracker documentation to arrange access to any required PyLink, SMI, or Tobii API.
  5. Connect a supported tracker or use the dummy mouse-simulated mode.

PyGaze is a free, open-source Python toolbox for building eye-tracking experiments. It suits researchers and experiment designers who are comfortable programming and need one interface for visual stimuli, tracker input, and gaze-contingent behavior. The main choice is between its broad experiment controls and the programming, Python-version, and hardware setup it demands.

Overview

PyGaze puts stimulus presentation and eye-tracker communication behind a uniform syntax. In practice, that can reduce the need to learn a separate control layer for every supported tracker while keeping experiments programmable. It is therefore a better fit for custom studies than for users seeking a point-and-click experiment builder.

The project is aimed at people with minor to advanced programming skills, preferably using Python 2.X. That recommendation is a significant practical constraint for teams standardizing on newer Python environments. PyGaze is free to use, with source and package downloads rather than a paid service tier.

Key features

Stimulus presentation works through PsychoPy and PyGame integrations. This gives developers two established ways to control what participants see, while the shared PyGaze syntax keeps tracker calls in the same experiment code.

The EyeTracker interface covers calibration, recording, gaze sampling, pupil-size retrieval, and fixation and saccade event functions. That range supports studies that need both raw gaze information and higher-level eye-movement events, instead of requiring separate interfaces for each operation.

Supported tracking options include EyeLink, SMI, Tobii, and a dummy mouse-simulated mode. The dummy mode is useful for developing or demonstrating experiment logic without live eye-tracker input; hardware workflows require the relevant vendor connection. PyLink is proprietary and requires registration with SR Research, while SMI and Tobii API downloads must be requested from their manufacturers.

Gaze-contingent tools include forced retinal location, a gaze-following cursor, and areas of interest. These are directly relevant to experiments whose display changes according to where a participant looks, rather than merely recording gaze after the fact.

Sampling behavior matters for timing-sensitive designs: PyGaze provides fresh samples only at the tracker's sampling rate and returns the newest available sample between fresh samples. It cannot create higher-frequency gaze data than the attached tracker supplies.

Pricing

PlanPriceIncludes
PyGazefreeOpen-source eye-tracking toolbox; Python package and source downloads

There is no paid upgrade, seat charge, quota, or free-trial period in the published plan. The free package suits academic, exploratory, and development work that can accommodate its programming model. The cost advantage does not remove integration work: tracker-specific software access and vendor registration can still be required.

Platforms

PyGaze supports Windows, Linux, and macOS. Download instructions cover pip installation on Windows, Linux, and Mac OS X, alongside source packages and portable Windows environments. The cross-platform options help teams use the same toolbox across operating systems, although tracker and API requirements remain part of each setup.

Who it's for

Choose PyGaze for a coded eye-tracking study that combines PsychoPy or PyGame stimuli with EyeLink, SMI, Tobii, or simulated input. It is especially suitable when gaze-contingent behavior, pupil measurements, or fixation and saccade events are central to the design.

It is a poor fit for users who want a visual study builder, have little programming experience, or need a modern Python-first workflow without accommodating the Python 2.X recommendation. Teams should also confirm access to their tracker's proprietary or requested APIs before committing.

Pros and cons

Pros

  • Unified Python interface: stimulus and tracker control share one syntax, reducing integration changes across supported hardware.
  • Broad experiment coverage: calibration, recording, sampling, pupil size, fixation, saccades, and gaze-contingent tools cover common research requirements.
  • Free and open source: there is no software-plan cost, and package, source, and portable Windows downloads are provided.
  • Simulation option: mouse-based dummy tracking lets developers exercise experiment logic without a live tracker.

Cons

  • Programming required: the intended audience ranges from minor to advanced programmers, so non-coders will find no ready-made workflow.
  • Python 2.X recommendation: this can complicate adoption in environments built around current Python versions.
  • Vendor dependencies: EyeLink, SMI, and Tobii integrations may require registration or API requests outside PyGaze.
  • Tracker-limited freshness: samples are fresh only at the eye tracker's rate, limiting designs that expect faster gaze updates.

Alternatives

Eye Tracking Software is the broader category to browse when you want to compare tools rather than commit to a Python toolbox.

GazePlotter is a free, open-source GNU GPL v3 option spanning Android, iOS, Linux, macOS, web, and Windows, making it preferable when wider platform coverage matters.

GazeRecorder offers free non-commercial use across Android, iOS, web, and Windows, a better match for browser or mobile-oriented recording under that usage condition.

Labvanced suits researchers wanting a web-capable freemium platform with a free tier capped at 300 MB, 10 recordings, and one active recruiting link, plus a trial.

Hawkeye is aimed at iOS and web users who can work within a free plan of one project and five sessions or pay for a monthly Starter plan.

iTrace is a free MIT-licensed Python package for Linux, self-hosted, and web deployments.

Chiasm is a paid web/API alternative with pay-per-use and monthly plans, appropriate when participant-minute billing fits better than a local toolbox.

OGAMA is free, open-source Windows freeware for users who prefer a Windows-focused application.

OpenGazer is free, open-source Linux software that requires a webcam and Linux build dependencies, suited to webcam-based gaze tracking rather than dedicated hardware integration.

Verdict

PyGaze is a strong choice for programmers building custom, gaze-responsive experiments across supported trackers and operating systems, especially when avoiding software licensing fees matters. Choose it for the unified interface and substantial eye-tracking functions; look elsewhere if you need a visual authoring environment, current-Python convenience, or tracker setup without vendor-specific dependencies.

Verdict

PyGaze combines experiment presentation and eye-tracker functions behind one Python interface, with gaze-contingent tools included. Check the separate tracker requirements and Python recommendation before choosing it.

Questions

Is PyGaze free?

Yes. It is open source, and its plan is listed as free.

Which operating systems does it support?

Windows, Linux, and macOS.

Which eye trackers are listed?

The documentation lists EyeLink, SMI, and Tobii, as well as a dummy mouse-simulated tracking mode.

Which stimulus-presentation packages does it support?

PyGaze supports PsychoPy and PyGame for stimulus presentation.

Does it require separate tracker access?

PyLink is proprietary and requires registration with SR Research. SMI and Tobii API downloads must be requested from their makers.

Who makes PyGaze, and what programming background is recommended?

The facts do not name a maker. The about page recommends Python 2.X and describes the intended users as people with minor to advanced programming skills.

Facts from PyGaze's own pages

Display integrations
PyGaze supports PsychoPy and PyGame for stimulus presentation. · pygaze.org, 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. · pygaze.org, 5 Oct 2026
Eye-tracking functions
The EyeTracker interface includes calibration, recording, gaze sampling, pupil-size retrieval, and fixation and saccade event functions. · pygaze.org, 5 Oct 2026
Gaze-contingent tools
Its gaze-contingent library includes forced retinal location, a gaze-following cursor, and areas of interest. · pygaze.org, 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. · pygaze.org, 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. · pygaze.org, 5 Oct 2026
Platforms
The about page says PyGaze supports Windows, Linux, and Mac OS X. · pygaze.org, 5 Oct 2026
Python requirement
The about page recommends Python 2.X for users with minor to advanced programming skills. · pygaze.org, 5 Oct 2026
Support
The documentation invites users who cannot find an answer to contact the PyGaze team. · pygaze.org, 5 Oct 2026
Supported trackers
The documentation lists EyeLink, SMI, Tobii, and dummy mouse-simulated tracking modes. · pygaze.org, 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. · pygaze.org, 5 Oct 2026
Unified interface
PyGaze wraps packages for stimulus presentation and eye-tracker communication behind a uniform, user-friendly syntax. · pygaze.org, 5 Oct 2026
What it does
PyGaze is an open-source toolbox for running eye-tracking experiments in Python. · pygaze.org, 5 Oct 2026

Where PyGaze stands on Freedom251

Look at these too