GazeFocus
GazeFocus Free · macOS 14+

Stop clicking
before you type.

GazeFocus watches which screen you're facing and moves keyboard focus there automatically. Look at the other monitor, start typing — the text lands where you're looking.

Free and open source · Apple silicon & Intel · No account, no tracking

The two-second tax on every monitor you own

A second display is supposed to save time. But every time you turn to it, macOS leaves focus behind — so you reach for the mouse, hunt for the window, click, and only then start typing. Dozens of times a day.

⌨️

Typing into the void

You start a sentence on the second screen and discover it went into the chat window you left behind.

🖱️

Mouse round-trips

Every switch is a hand off the keyboard, a drag across two or three displays, and a click.

🪟

Wrong window, right screen

Clicking the display isn't enough — you still have to pick out the window you actually wanted.

How it works

Four steps, about two minutes, then you can forget it is running.

editor terminal focus follows
Turn toward a screen and keyboard focus arrives before you do.
  1. Allow the cameraIt reads the position and angle of your head from the camera you already have. 720p, 15 frames a second.
  2. Allow AccessibilityMoving keyboard focus between other apps' windows is something only this permission can do.
  3. Calibrate your screensA dot appears at five places on each display. Look at each one, turning your head toward it. Around twenty seconds per screen.
  4. Just workLook at a screen and type. It keeps getting more accurate, because every click teaches it where you were looking.

Focus follows your eyes at three levels

Screen, window, and split pane.

🖥️

Switches screens

Detects which display you're facing and restores the window you were last using there, rather than whatever happens to be frontmost.

🪟

Switches windows

Works on a single display too — look at a different window on the same screen and focus follows.

⌗

Focuses split panes

Inside editors and terminals, it focuses the individual pane you're reading, not just the window around it.

🎯

Learns as you work

Clicks that agree with its prediction are treated as hints and refine the fit. Clicks you make without looking are ignored.

⏸️

Knows when to stay out of the way

Never switches mid-keystroke, mid-shortcut, while a menu is open, or while you are typing a password.

📏

Adapts to how you sit

Compensates when you lean in or sit back, and says when it has drifted far enough to be worth recalibrating.

Split panes work in

iTerm2TerminalGhosttyWarp kittyWezTermHyperVS Code CursorWindsurfVSCodiumZed Sublime TextXcodeJetBrains IDEsAndroid Studio

Tuned not to annoy you

A tool that fires too eagerly is worse than no tool at all. Every one of these is adjustable, and the defaults are deliberately cautious.

Settles first

A 300 ms rest filters quick glances, so looking away briefly moves nothing.

Waits for typing

Focus never moves mid-keystroke, nor for a few seconds after your last one.

Understands ⌘C

A copy is not typing. After one, focus follows faster — so your paste lands where you are looking.

Never mid-shortcut

While a modifier is held, focus stays put so the rest of the chord reaches the same app.

Respects passwords

While macOS secure input is active, it stands down completely.

Sleeps when you do

Releases the camera the moment your Mac locks or sleeps — the camera light goes out.

Private by design

The camera is the whole point of the app, so it is worth being precise about what happens to it.

Stays on your Mac

Head position is computed with Apple's Vision framework, locally. Nothing is uploaded.

Nothing is stored

Frames live in memory for a few milliseconds and are discarded. Nothing is written to disk, ever.

No network at all

It ships without the network entitlement — it cannot open a connection, accidentally or otherwise.

No account, no analytics

Nothing to sign up for and no telemetry. It is free, so there is nothing to verify either.

Questions

Is this real eye tracking?

It tracks head pose, not pupils. A webcam cannot resolve a pupil accurately enough at desk distance to pick a window — but head angle, combined with where your face sits in the frame, is enough to tell which screen you are facing. In practice you turn your head toward another monitor anyway.

Does it work with one monitor?

Yes. On a single display it focuses the window or split pane you are reading. The gain is smaller than with two or three screens, but it is real.

Where should my camera be?

Accuracy depends on the camera seeing your face while you look at each screen. A laptop camera below a large external monitor sees you at a steep angle and detects less reliably. A camera mounted on the display you look at most will track noticeably better.

Will it fight me when I use the mouse?

No. Pointer movement stands it down, and a click is treated as you deciding where focus belongs — it learns from that rather than overriding it.

How much CPU does it use?

Frames are processed at 15 per second from a 720p stream, a small fraction of one core. Pause any time with ⇧⌘G.

Do I need to recalibrate often?

Usually never — it learns from your clicks. It prompts you if you start sitting at a noticeably different distance, and resets automatically if you rearrange your displays.

Try it

Free, about two minutes to set up.

Download for macOS