Beacon guide

Get a clearer picture of Mac power use

macOS exposes detailed power data, but it's scattered across pmset, powermetrics, and Activity Monitor. Here's how to pull it together.

5 min read

If you want to know what your Mac is doing power-wise — package wattage, what’s keeping it awake, why battery is draining — macOS has the data. It’s just spread across three commands and one GUI tool, none of which talk to each other.

The tools you have

Each gives a partial view. Together they tell you almost everything.

A pragmatic workflow

  1. Start with Activity Monitor's Energy tab. Sort by "Energy Impact" — top of the list is using the most power.
  2. Check what's preventing low-power states: pmset -g assertions. Anything claiming "PreventUserIdleDisplaySleep" or "PreventSystemSleep" is keeping the chip awake.
  3. Get current draw: pmset -g batt shows discharge rate. On battery, the rate matters more than the percentage.
  4. Get package power: sudo powermetrics --samplers cpu_power,gpu_power -i 1000 -n 5. Look for "Combined Power" — that's total package watts.
  5. Check thermal pressure: pmset -g thermlog. Throttling is a power story too — limited power equals limited performance.

What the numbers mean

For a typical MacBook Air or 14” Pro at idle, combined package power should be 2-4W. Light browsing: 5-10W. Video call with effects: 12-20W. Heavy work (encoding, ML, compilation): 25-50W on the Air, 50-90W on Pro models.

If you’re at idle and package power is 15W+, something is using the chip and you’ll feel it as heat and battery drain.

Sleep assertions worth watching

Some assertions are legitimate (Zoom holds one during a call, video apps hold one during playback). Some are stuck (an app that crashed but left the assertion behind, a Bluetooth audio device that won’t release). Run pmset -g assertions regularly when on battery and you’ll quickly learn which ones are normal for your setup.

Common offenders that hold sleep assertions: Zoom, Teams, OBS, screen-sharing apps, Bluetooth audio drivers, some development servers, and any app that wants to “keep the display awake.”

Wattage in your menubar

Running pmset and powermetrics by hand gets old. A menubar monitor that shows live package power, CPU load, and battery state gives you the full picture without typing. Beacon surfaces package wattage, CPU load, and battery info in the menubar — $14.99 lifetime. Download Beacon if you’d rather see than command.

When this matters

Most people don’t care about package wattage day-to-day. The times it matters:

The power telemetry is there. macOS just doesn’t surface it well by default.

← All Beacon tips