EVERYTHING XIAOMI
Get listed

WebGazer.js

WebGazer.js is a JavaScript library that estimates where a website visitor is looking using an ordinary webcam, with gaze locations available in real time.

Place
#22 of 27
Score
5.6
WebGazer.js's website

What WebGazer.js is

WebGazer.js is a JavaScript library that estimates where a website visitor is looking using an ordinary webcam, with gaze locations available in real time. It runs entirely in the visitor's browser, so video data does not need to be sent to a server, and webcam access requires the user's consent. The model calibrates itself by observing page interactions such as clicks and cursor movements. A site can add the library with a script tag and a few lines of code. Tracker and regression modules can be swapped; included prediction models are ridge, weightedRidge, and threadedRidge, and MediaPipe Facemesh is the default tracker. The library can provide real-time gaze coordinates and calibration points. Training data can be saved between sessions in the browser using localforage and IndexedDB, or cross-session saving can be disabled. Supported browsers are Chrome, Edge, Firefox, Opera, and Safari. WebGazer.js is free under the GPLv3 license. The project offers a webcam video dataset with 51 participants for training and evaluation. As of February 24, 2026, updates are no longer guaranteed, though community support continues through GitHub Issues.

Good

  • Uses a common webcam rather than special hardware.
  • Video data need not be sent to a server.
  • Self-calibrates from clicks and cursor movements.
  • Free under the GPLv3 license.
  • Supports Chrome, Edge, Firefox, Opera, and Safari.

Watch out

  • Webcam access requires user consent.
  • Updates are no longer guaranteed.
  • Training data may be stored between sessions unless disabled.

Who it suits

It suits website developers exploring browser-based gaze estimation without special hardware. Its consent requirement and local processing may matter to sites handling webcam access.

Verdict

WebGazer.js offers browser-based gaze estimation with swappable components and local data options. Its updates are no longer guaranteed, so prospective users should account for ongoing maintenance uncertainty.

The facts

Each one read from WebGazer.js's own pages, with the date it was checked.

Where it runs

Browser processing
The library runs entirely in the client browser, so video data does not need to be sent to a server.checked 7 Oct 2026
Browsers
The project lists Google Chrome, Microsoft Edge, Mozilla Firefox, Opera, and Safari as supported browsers.checked 7 Oct 2026
Browser support
The listed supported browsers are Chrome, Edge, Firefox, Opera, and Safari.checked 7 Oct 2026

What it does

Calibration
Its model self-calibrates by observing interactions with the page, including clicks and cursor movements.checked 7 Oct 2026
Client-side processing
It runs entirely in the client browser, so video data does not need to be sent to a server.checked 7 Oct 2026
Consent
WebGazer.js requires the user’s consent to access their webcam.checked 7 Oct 2026
Dataset
The project provides a dataset containing data from 51 participants, including webcam videos, interaction logs, and gaze locations predicted by a Tobii eye tracker.checked 7 Oct 2026
Data storage
Training data can be saved between browser sessions in the browser using IndexedDB via localForage.checked 7 Oct 2026
Eye tracking components
Tracker and regression modules can be swapped, and MediaPipe Facemesh is included as the default tracker.checked 7 Oct 2026
Hardware
It uses a common webcam and does not require special hardware.checked 7 Oct 2026
Integration
The project says it can be added to a website with a few lines of JavaScript, including as a script or through the npm package.checked 7 Oct 2026
Intended use
The site describes WebGazer.js as a way for websites to understand visitors and transform their user experience.checked 7 Oct 2026
License
The official site lists WebGazer.js under the GPLv3 license.checked 7 Oct 2026
Local data
Training data can be saved between browser sessions using localforage and IndexedDB; saving across sessions can be disabled.checked 7 Oct 2026
Maintainer
The site identifies Jeff Huang as the current maintainer and says WebGazer research began at Brown University, with recent work and maintenance jointly at Pomona College and Brown University.checked 7 Oct 2026
Maintenance
As of February 24, 2026, updates are no longer guaranteed, while community support continues through GitHub Issues.checked 7 Oct 2026
Maintenance and support
As of February 24, 2026, updates are no longer guaranteed, while community support continues through GitHub Issues.checked 7 Oct 2026
Modules
Eye tracking components can be swapped, and the library includes multiple gaze prediction models.checked 7 Oct 2026
Prediction models
The included regression modules are ridge, weightedRidge, and threadedRidge.checked 7 Oct 2026
Purpose
WebGazer.js uses ordinary webcams to estimate web visitors’ gaze locations on a page in real time.checked 7 Oct 2026
Use cases
The site describes the library as a way for websites to understand visitors and transform their user experience.checked 7 Oct 2026

The company

Founded
2016checked 28 Sep 2026

Alternatives to WebGazer.js

All alternatives
  1. 1RealEye logo

    RealEye

    AndroidiOSWeb
    7.0From $325 a month
  2. 2

    Hawkeye

    Free planiOSWeb
    6.8From $39.99 a month
  3. 3

    GazeRecorder

    Free planAndroidiOSWebWindows
    6.7Free plan
  4. 4Chiasm logo

    Chiasm

    Free planWebAPI
    6.6From €199 a month
  5. 5GazePlotter logo

    GazePlotter

    Free planAndroidiOSWebLinux
    6.6Free plan
  6. 6

    iTrace

    Free planWebLinuxSelf-hosted
    6.5Free plan