WakeHold
WakeHold Free · macOS 14+

Awake while it works.
Asleep when it's done.

Your Mac shouldn't sleep through a render, a build, or a long download — and it shouldn't stay awake all night afterwards either. WakeHold watches what's actually running and decides for you.

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

Caffeinate is a blunt instrument

The usual options are "never sleep" and "sleep on a timer". Neither knows whether your export finished ten minutes ago or is still going.

😴

Slept mid-job

You come back to a render that stopped at 40% because the idle timer won.

🔋

Awake for nothing

You left caffeinate running on Friday and found a flat battery on Monday.

🤷

Guessing timers

"Sleep after 3 hours" is a guess that is wrong in both directions.

How it decides

The same counters Activity Monitor shows, read a few times a minute.

brief spike ignored sustained work awake grace idle asleep
A spike is not work. Sustained activity holds sleep; a grace period rides over the gaps.
  1. Samples every processCPU, disk and network per app — the real numbers, straight from the system.
  2. Ignores brief spikesOpening a file or loading a page does not count. Work has to persist before it registers.
  3. Trusts apps that askBrowsers and editors raise their own "don't sleep" signal during downloads and exports. It honours them.
  4. Waits, then lets goWhen everything goes quiet it waits out a grace period — so a gap between build steps does not drop the hold — then allows sleep.

What it handles

🎬

Knows your tools

Recognises 38 apps across video, downloads, AI agents, development and sync, each with sensible thresholds. Anything unknown still counts if it is genuinely busy.

🎚️

You choose what counts

Two lists — staying awake for, and not watching. Click any app to move it between them. A VM that is always busy never holds your Mac awake again.

💻

Works with the lid closed

One-time admin approval, and a watchdog that restores normal sleep within seconds if it ever stops.

🔋

Battery aware

Stops holding below a threshold you set, and respects Low Power Mode. Never applies to desktops.

🌙

Lets the screen sleep

Only system sleep is held. Your display still goes dark on its own schedule — unless you would rather it did not.

🪶

Barely there

Well under 1% of one core. It is reading counters, not doing work.

Recognises, among others

Final Cut ProPremiere ProDaVinci ResolveLogic Pro ffmpegHandBrakeChromeSafariArc TransmissionClaude CodeCodexGemini CLIAider OllamaXcodeDockernpmcargoGradle DropboxGoogle DriveBackblazeTime Machinersync

What it can see

Only activity counters — the same numbers Activity Monitor displays.

Not your content

It reads how much CPU, disk and network each process used. Not what any of them were doing.

No network

Ships without the network entitlement. It cannot open a connection even by accident.

No account

Nothing to sign up for, nothing to verify. It is free.

No analytics

No telemetry, no crash reporting, no update pings.

Stop guessing timers

Install it and forget it is there.

Download for macOS