← Blog Mac Productivity

What's Keeping My Mac Awake? How to Find It

By FavTray ·

Written by the team behind FavTray, a Mac developer dashboard for the menu bar. We check every app we cover against its own site, docs or a hands-on test, and each post says which.

To see what’s keeping your Mac awake, run pmset -g assertions in Terminal. Under “Listed by owning process” macOS names every app that’s blocking sleep and how: PreventUserIdleSystemSleep stops the Mac sleeping, and PreventUserIdleDisplaySleep keeps the screen on. Quit or finish whatever that app is doing and your Mac can sleep again.

TL;DR

  • Fastest: pmset -g | grep sleep → sleep 0 (sleep prevented by caffeinate, Zoom)
  • Full detail: pmset -g assertions
  • No Terminal: Activity Monitor › Energy › Preventing Sleep column
  • What woke it: pmset -g log | grep -E "Wake from|DarkWake from" | tail
  • Ignore: powerd, “Prevent sleep while display is on”
  • In the menu bar: FavTray System › Power lists what’s keeping the Mac awake, by app, free

How do you see what’s keeping a Mac awake in Terminal?

Start with the one-line version:

pmset -g | grep sleep
 sleep                0 (sleep prevented by Claude, caffeinate, powerd)

That tells you who. For what, ask for the assertions:

pmset -g assertions

Here’s real output from a Mac while we wrote this, trimmed:

Assertion status system-wide:
   PreventUserIdleDisplaySleep    0
   PreventSystemSleep             0
   PreventUserIdleSystemSleep     1
Listed by owning process:
   pid 787(Claude): [...] 21:36:23 NoIdleSleepAssertion named: "Electron"
   pid 24989(caffeinate): [...] 00:02:19 PreventUserIdleSystemSleep named: "caffeinate command-line tool"
	Details: caffeinate asserting for 300 secs
   pid 349(powerd): [...] 00:45:55 PreventUserIdleSystemSleep named: "Powerd - Prevent sleep while display is on"

How to read it:

  • pid 787(Claude) is the process ID and app name.
  • 21:36:23 is how long it has held the assertion (hours:minutes:seconds). An app that has blocked sleep for 21 hours is your answer.
  • The type says what it blocks: see the table below.
  • named: is the reason the app gave. Browsers say things like “Playing audio” or “Video Wake Lock”; Electron apps often just say “Electron”.
Assertion typeWhat it blocks
PreventUserIdleSystemSleep / NoIdleSleepAssertionThe Mac sleeping when idle; the screen can still turn off
PreventUserIdleDisplaySleep / NoDisplaySleepAssertionThe display turning off
PreventSystemSleepAll sleep, including closing the lid (only while on power)
UserIsActiveShort “user is here” signal from WindowServer; not a culprit
BackgroundTaskDoesn’t block sleep

Ignore powerd. Its “Prevent sleep while display is on” assertion just mirrors your screen being on, and disappears when the display sleeps.

How do you find it without Terminal?

Open Activity Monitor and click the Energy tab. Apple’s guide describes its Preventing Sleep column as “whether this app is preventing your Mac from going to sleep”. Click the column header to sort the Yes rows to the top. If you don’t see it, right-click any column header and tick Preventing Sleep.

Activity Monitor only shows Yes or No. It doesn’t say whether the app blocks the display or the whole Mac, or for how long, which is why pmset is more useful for the stubborn cases.

What usually keeps a Mac awake?

  • Video calls and screen sharing: Zoom, Teams, Meet in a browser. They block display sleep on purpose.
  • A browser tab playing media, even muted or paused on a video page.
  • Keep-awake tools you forgot about: a caffeinate in an old terminal tab, KeepingYouAwake, Amphetamine or a keep-alive app. killall caffeinate ends stray ones.
  • Downloads, syncs and backups: cloud drives, Time Machine, app updates.
  • Dev tools: long builds, Docker Desktop, simulators, a test runner in watch mode, and AI coding agents that hold the Mac awake while they work.
  • Remote access: Screen Sharing, SSH sessions (ttyskeepawake in pmset -g keeps the Mac up while a remote terminal is active).
  • Bluetooth and USB devices, which can wake a sleeping Mac rather than stop it sleeping.

How do you find out what woke your Mac?

If the Mac sleeps but doesn’t stay asleep, look at the wake log:

pmset -g log | grep -E "Wake from|DarkWake from" | tail -5
2026-09-24 05:46:15 DarkWake from Deep Idle ... due to ... rtc/Maintenance Using AC (Charge:80%)
2026-09-24 05:56:13 Wake from Deep Idle ... due to ... lid ... UserActivity Assertion
  • Wake is a full wake: the screen came on. The reason says why, for example lid or UserActivity.
  • DarkWake is a short background wake with the screen off, for maintenance, Power Nap, Find My or network requests. A few a night are normal.
  • Too many DarkWakes? In System Settings › Battery › Options (or Energy on a desktop Mac), turning off Wake for network access stops wakes for network requests.

Why won’t a MacBook sleep with the lid closed?

A closed MacBook keeps running in clamshell mode: on power, with an external display and a keyboard or mouse connected. That’s by design. Otherwise, look for a PreventSystemSleep assertion in pmset -g assertions with the lid open; it’s the only type that overrides the lid, and only on AC power. Amphetamine’s Closed-Display Mode, some backup tools and caffeinate -s can create one.

How can you see what’s keeping your Mac awake from the menu bar?

FavTray’s System tool has a Power & Battery section with a card called What’s keeping your Mac awake. It reads the same assertions as pmset, groups them by app, says whether each one prevents system or display sleep and since when, and leaves out powerd’s display mirror. If nothing’s holding the Mac awake, it says so. The same section shows system and charger watts, battery condition and cycles, and Low Power Mode. The Processes section lists the heaviest apps by energy and what last woke the Mac.

Free vs Pro: that glance is free. Pro, a one-time Lifetime licence, adds an alert when an app keeps your Mac awake on battery, every wake in the last day, and 30 days of battery sessions.

Looking for the opposite, keeping the Mac awake on purpose? See how to keep a Mac awake, the caffeinate guide, or KeepingYouAwake alternatives.

Sources (checked 28 September 2026): man pmset and man caffeinate on macOS 26.6; Apple’s Activity Monitor Energy pane guide. Terminal output captured on a MacBook running macOS 26.6.2.

Frequently Asked Questions

How do I see what is keeping my Mac awake?

Open Terminal and run pmset -g assertions. Under 'Listed by owning process' you'll see each app holding the Mac awake, with a type such as PreventUserIdleSystemSleep (stops the Mac sleeping) or PreventUserIdleDisplaySleep (keeps the screen on). For a quick answer, pmset -g | grep sleep prints a line like 'sleep prevented by caffeinate, Zoom'. Activity Monitor's Energy tab also has a Preventing Sleep column.

Why does pmset say sleep is prevented by powerd?

powerd is macOS's own power daemon. It holds an assertion called 'Prevent sleep while display is on', which just mirrors the fact that your screen is on. It isn't a problem and goes away when the display sleeps. Look at the other processes in the list.

How do I find out what woke my Mac?

Run pmset -g log | grep -E 'Wake from|DarkWake from' | tail in Terminal. Each line gives the time and a reason, such as a lid open, user activity, a network or Bluetooth device, or a scheduled maintenance wake (DarkWake). DarkWakes are short background wakes for things like Power Nap and are normal.

Why won't my Mac sleep when I close the lid?

A closed MacBook stays awake when it's in clamshell mode (on power with an external display and keyboard or mouse), or when an app holds a PreventSystemSleep assertion, which some backup, sync and keep-awake tools do. Check pmset -g assertions with the lid open and look for PreventSystemSleep.

Can I stop an app from preventing sleep?

Quit the app, or end the task it's doing, such as a download, a video call or a screen share. For a stuck caffeinate, run killall caffeinate. For apps that keep the display awake because a video is paused on screen, close the tab or window. You can't block assertions system-wide without breaking things like video calls.

Something new: My Dock Buddies