Founding offerNapless Pro is $8 for the first 50 customers, then $24. Pay once, yours for life on 3 Macs.Get Napless Pro

Wake reasons

Why does my Mac wake up from sleep by itself?

A Mac wakes itself for timers set before it slept, for Power Nap and network upkeep, for Wake for network access, and for keyboard, trackpad or lid input. Run pmset -g log to see each wake and its reason, then turn off the setting behind the wakes you don't want.

By the Napless team · Updated

On this page

How do you find out what woke your Mac?

Run pmset -g log in Terminal. man pmset says it “displays a history of sleeps, wakes, and other power management events.”

Easiest way: Napless. You still need this log to see why a Mac woke. When you wanted it to stay awake and it slept during a hold, the menu notes why, and Check Health or napless doctor reports it. Try Napless free for 7 days.

The full log is long. The MacBook Pro used for this guide had over 130,000 lines covering about a week. To see only the wakes, filter it:

pmset -g log | grep -E '(Wake|DarkWake) from'

Each line starts with a date and time, then a wake type, then the reason after due to. Four lines from that Mac (macOS 27.2), trimmed after the battery charge:

2026-09-25 14:25:28 +0530 DarkWake  DarkWake from Deep Idle [CDNP] : due to NUB.SPMI0Sw3IRQ nub-spmi0.0x02 rtc/Maintenance Using BATT (Charge:97%) 6 secs
2026-09-25 13:12:29 +0530 DarkWake  DarkWake from Deep Idle [CDNP] : due to NUB.SPMI0Sw3IRQ nub-spmi0.0x02 rtc/SleepService Using BATT (Charge:98%) 2 secs
2026-09-27 00:35:21 +0530 DarkWake  DarkWake from Deep Idle [CDNP] : due to smc.sysState.Wake(0x70070000) wifibt SMC.OutboxNotEmpty bluetooth-pcie/ Using BATT (Charge:52%) 9 secs
2026-09-27 00:35:48 +0530 Wake      Wake from Deep Idle [CDNVA] : due to smc.sysState.Wake(0x70070000) lid SMC.OutboxNotEmpty RTP.multi-touch/HID Activity Using BATT (Charge:52%)

The number at the end of a DarkWake line sits in the log’s Duration column. Most of these wakes lasted a few seconds.

To see what the Mac asked for before it slept, look at the Wake Requests lines:

pmset -g log | grep 'Wake Requests' | tail -3

pmset -g stats gives totals since boot. On this Mac it printed Sleep Count:1087, Dark Wake Count:1085 and User Wake Count:127. A Mac that wakes “by itself” is usually doing dark wakes like these.

What do the wake reasons in pmset -g log mean?

The word before from tells you the kind of wake, and the text after due to names what triggered it. Wake reason strings are not documented in man pmset, so read them by matching them to the settings and requests you can see.

Log wording What it means in practice
Wake from ... HID Activity A full wake from input. In the sample it was the lid and trackpad (lid, RTP.multi-touch). Apple says a key press or a mouse or trackpad click wakes a Mac, as does opening a laptop’s display.
DarkWake from ... A partial wake for background work. Apple’s IOKit header IOPM.h describes the CPU and core hardware running in “Dark Wake” state instead of sleeping. The Mac goes back to sleep without fully waking.
DarkWake to FullWake ... due to Notification A dark wake that turned into a full wake. The sample Mac logged 28 of these.
rtc/Maintenance, rtc/SleepService A timed wake. The names match the request=Maintenance and request=SleepService entries in the Wake Requests line written just before the Mac slept.
wifibt, bluetooth-pcie The wake came through the Wi-Fi and Bluetooth hardware.

The wake lines in that log cover about 35 hours (25 to 27 September 2026). In that time the sample Mac logged 632 dark wakes: 510 named wifibt and 122 were rtc timed wakes. It also logged 2 full wakes from the lid and trackpad.

Older Macs write the reason differently. The Apple Community thread “Mac waking up every 2 hours” quotes Wake reason: EC.RTC (Alarm) on a 2020 iMac with Catalina. That is a timer alarm, the same family as rtc above.

Does Power Nap wake the Mac?

Yes. Power Nap does its work while the Mac sleeps, and those check-ins show up as dark wakes in the log.

Apple’s Power Nap page says Power Nap checks Mail, updates Calendar and updates other iCloud events on battery. On a power adapter it can also download software updates and run Time Machine backups (Time Machine and Power Nap covers backups).

To turn it off on a laptop, open System Settings > Battery > Options and change Enable Power Nap. On a desktop the switch is under Energy, and Apple says it “is only available on Intel-based Mac computers.” From Terminal, pmset -g shows the current value as powernap 1 or powernap 0.

Does Wake for network access wake the Mac?

Yes. With Wake for network access on, a Mac wakes when another computer uses its shared resources, and at regular intervals to tell the network those resources are available.

That is Apple’s own description in “Share your Mac resources when it’s in sleep”. Apple’s unexpected sleep and wake page adds that “other users may be waking your Mac remotely to use its shared resources.”

Mac Where the setting is Choices
Laptop System Settings > Battery > Options > Wake for network access Always, when plugged into a power adapter, or Never
Desktop System Settings > Energy > Wake for network access On or off

The choices come from Apple’s Battery settings and Energy settings pages. In pmset the same setting is womp, which man pmset calls “Same as ‘Wake for network access’ in System Settings.” The sample Mac had womp 1 on its power adapter and womp 0 on battery.

Can a Bluetooth or USB device wake the Mac?

Yes. A key press or a mouse or trackpad click wakes a sleeping Mac, and that includes a wireless keyboard, mouse or trackpad.

Apple’s guide for macOS Big Sur 11 documented a checkbox for this: Bluetooth > Advanced > “Allow Bluetooth devices to wake this computer”. The current Bluetooth settings page lists no such option. If a wireless device keeps waking the Mac, turn it off or move it away before sleep.

USB and Thunderbolt devices can also cause trouble. Apple warns that “malfunctioning USB and Thunderbolt storage and devices may keep your Mac from going to sleep,” and suggests unplugging external devices one at a time to find the problem.

man pmset lists more wake triggers: lidwake (wake when the lid opens), acwake (wake when the power source changes) and proximitywake (wake for nearby devices on the same iCloud account). Not every Mac has them. pmset -g cap lists the settings your Mac supports, and the Apple silicon MacBook Pro used here listed none of the three.

What does tcpkeepalive do?

tcpkeepalive keeps some network connections alive while the Mac sleeps. man pmset does not document it, but pmset -g lists it, and the pmset program warns that turning it off can stop Find My Mac from working.

On the sample Mac, pmset -g showed tcpkeepalive 1, and pmset -g cap listed it as supported. Sleep entries in the log mention it directly:

Entering Sleep state due to 'Sleep Service Back to Sleep':TCPKeepAlive=active Using Batt (Charge:98%)

The pmset binary on macOS 27.2 contains this warning for the option: “This option disables TCP Keep Alive mechanism when system is sleeping. This will result in some critical features like ‘Find My Mac’ not to function properly.”

In the Apple Community thread about wakes every 2 hours, the poster reported that sudo pmset -a tcpkeepalive 0 stopped them, and 19 people marked the question “me too.” The 2-hour rhythm also shows up in this guide’s sample log. In 632 of its 633 Wake Requests lines, mDNSResponder asked for a Maintenance wake about 7,200 seconds later, labeled info="upkeep wake". mDNSResponder is the macOS Multicast DNS and DNS Service Discovery daemon (man mDNSResponder).

Apple doesn’t document turning tcpkeepalive off as a fix, and the pmset warning above is the cost. If you try it and want the old behavior back, set it to 1 again.

What do scheduled wakes look like?

Run pmset -g sched. man pmset says it “displays scheduled startup/wake and shutdown/sleep events.”

Output from the sample Mac on 2 October 2026:

Scheduled power events:
 [0]  wake at 09/27/2026 01:39:12 by 'com.apple.alarm.user-invisible-com.apple.StatusKit.presence.reassertion.groupsessionservice-com.apple.notes.MeToMeChannel-539f'
 [1]  wake at 09/27/2026 05:25:45 by 'com.apple.alarm.user-invisible-com.apple.osanalytics.hardhighengagementtimer'

The by field names the owner. Both entries here belong to macOS services (com.apple...). A wake you set yourself with pmset schedule or pmset repeat shows up in the same list. How to schedule a Mac to wake covers creating and cancelling those.

How do you stop the wakes you don’t want?

Match each wake reason to the setting behind it, then change only that setting. Work through the list from the most common cause:

  1. Network wakes. Set Wake for network access to Never (laptop) or turn it off (desktop). This is the first fix on Apple’s unexpected wake page.
  2. Sharing. Turn off sharing services you don’t use, in System Settings > General > Sharing. Apple says people using shared services can keep a Mac from sleeping.
  3. Power Nap. Turn off Enable Power Nap if dark wakes for Mail, iCloud, updates or backups bother you more than the updates help.
  4. Devices. Unplug USB and Thunderbolt devices one at a time, and switch off wireless keyboards, mice and trackpads before sleep.
  5. Your own schedules. Run pmset -g sched and cancel events you or your apps created. Leave the com.apple entries alone.
  6. Apple’s other fixes. Update macOS, test in safe mode, and, on Apple silicon, restart the Mac. Apple’s page also covers resetting the SMC on Intel Macs.

Apple notes that changing sleep and wake behavior can raise power use: “delaying, preventing, or allowing disruption of sleep may increase power consumption” (sleep and wake settings).

The opposite problem, a Mac that never goes to sleep, has a different cause: something holds a power assertion while the Mac is awake. For that, read what is keeping a Mac awake.

When should you stop troubleshooting and accept maintenance wakes?

Accept them when the log shows short dark wakes and the Mac never fully wakes on its own. Those are background tasks macOS sets up itself, such as Power Nap and the timed upkeep requests in the log.

The sample Mac’s log has hundreds of DarkWake lines, most of them under 10 seconds, and after each one the Mac went back to sleep. Some of that is Power Nap, and some is timed upkeep requested by system services such as mDNSResponder and dasd.

Keep digging when:

  • the screen turns on by itself, or the log shows full Wake lines you can’t match to a key press, the lid or a schedule;
  • the Mac stays awake after a wake instead of going back to sleep, which points to an assertion (check what is holding sleep);
  • the battery drops much more overnight than it used to.

For a Mac that should stay up through the night instead, see every way to keep a Mac awake. If it slept during a hold and you want the menu to say why, Try Napless free for 7 days.

Questions

How do I see why my Mac woke up?

Run pmset -g log | grep -E '(Wake|DarkWake) from' in Terminal. Each line has a time stamp and a reason after 'due to', such as rtc/Maintenance, a network source or HID Activity.

What is a DarkWake on a Mac?

A DarkWake is a partial wake for background work. Apple's IOKit headers describe the CPU and core hardware running in Dark Wake instead of sleeping. In pmset -g log it often lasts a few seconds.

Why does my Mac wake up every 2 hours?

In pmset logs, mDNSResponder often asks for a Maintenance wake 7,200 seconds after sleep. An Apple Community thread reports that turning off tcpkeepalive stopped these 2-hour wakes, but pmset warns this can break Find My Mac.

How do I stop my Mac waking up from sleep?

Find the reason in pmset -g log first. Then turn off Wake for network access or Power Nap, stop sharing services you don't use, unplug devices you suspect, and cancel scheduled wakes you created.