Guide

How to schedule your Mac to sleep and wake automatically

Set your Mac to sleep, wake, or power on at fixed times using pmset from the Terminal - recurring schedules, one-off events, how to view them, and how to cancel.

You can tell your Mac to go to sleep every night and wake up every morning on its own - handy for a machine that runs backups overnight, a Mac mini server that should power down after hours, or just to have it awake and ready before you sit down. Modern macOS hides the old Energy Saver “Schedule” panel on most Macs, so the reliable way is the built-in pmset command. Here’s the whole thing.

Two kinds of schedule

pmset gives you two tools:

  • pmset repeat - a recurring schedule (e.g. sleep at 23:00 every weekday). You get one repeating sleep event and one repeating wake event.
  • pmset schedule - one-off events at a specific date and time (e.g. wake once on July 15 at 09:00).

Both need sudo, because they change system power policy.

Recurring schedule (the common case)

The format is pmset repeat <type> <days> <HH:MM:SS>. Set a wake and a sleep in one command:

sudo pmset repeat wakeorpoweron MTWRF 09:00:00 sleep MTWRF 23:00:00

That wakes (or powers on) the Mac at 9am and sleeps it at 11pm, Monday to Friday.

The day letters are: M Mon, T Tue, W Wed, R Thu, F Fri, S Sat, U Sun. So weekends are SU, every day is MTWRFSU.

The event types you’ll use most:

TypeWhat it does
sleepPuts the Mac to sleep
wakeWakes it from sleep
poweronPowers it on from a full shutdown
wakeorpoweronWakes if asleep, powers on if off (usually what you want)
shutdownShuts it down
restartRestarts it

One-off events

For a single event, give a date as MM/dd/yyyy HH:mm:ss:

sudo pmset schedule wake "12/31/2026 08:30:00"
sudo pmset schedule sleep "12/31/2026 23:00:00"

Handy for a specific early start without touching your recurring schedule.

See what’s scheduled

pmset -g sched

This lists both your repeating schedule and any one-off events, so you can confirm what will happen.

Cancel a schedule

# Remove the recurring schedule
sudo pmset repeat cancel

# Remove all one-off events
sudo pmset schedule cancelall

The catches worth knowing

  • Powering on from OFF needs power. poweron / wakeorpoweron can start the Mac from a full shutdown only when it’s connected to power. Waking from sleep works on battery.
  • Scheduled sleep is a real sleep. If you’re in the middle of something at the sleep time, macOS will still sleep the Mac (you may get a brief prompt). Schedule sleep for a time you’re truly done.
  • The lid still rules. A scheduled wake turns the machine on, but if the lid is closed and you’re not on power with an external display, it goes right back to clamshell sleep. See keeping your Mac awake with the lid closed.
  • This is a blunt, always-on policy, like the rest of pmset - see the full pmset guide. It runs on the clock, not on whether work is happening.

Scheduling vs keeping awake - they solve different problems

A schedule is about fixed times: be awake at 9, asleep at 11. It has no idea whether a build or backup is still running at 11pm - it will sleep the Mac anyway.

If what you actually want is “stay awake while my work is running, whenever that is,” a schedule is the wrong tool. That’s AwakeMate: it watches the apps and tools you choose - builds, downloads, backups, AI agents - and holds the Mac awake only while they’re active, then lets it sleep. The two pair nicely: schedule a morning wake with pmset, and let AwakeMate decide when it’s safe to sleep based on your actual work, instead of a hard 11pm cutoff that could kill an overnight job.

For a job that must finish tonight, reach for keep-awake. For “on at 9, off at 11 no matter what,” pmset repeat is exactly right.

Let your Mac stay awake on its own

AwakeMate keeps your Mac awake only while the tools you care about are running - builds, AI agents, renders, downloads - then lets it sleep. No commands to remember. Free 14-day trial.