Skip to content

WindowServer using high CPU on a Mac: what it is and how to calm it down

WindowServer draws everything on your screen. On our M1 it ranged from 23% to 65% CPU while we worked, and it topped energy impact. What drives it up.

6 min read

What is WindowServer on a Mac?

WindowServer puts every window, menu and animation on your displays. It runs as its own user, _windowserver, from /System/Library/PrivateFrameworks/SkyLight.framework/Resources/WindowServer. Every app that draws anything asks it to, so its load is the sum of everything on screen.

Moment on our MacWindowServer CPUEnergy impact
Idle with a few apps open23%about 23
Normal work in an editor and browser32%32
Moving windows while recording the screen65%65
Memory, in all casesabout 385 MB

It was the top process by energy impact in every sample, above the browser and editor.

Why is WindowServer using so much CPU?

  • Many windows, especially across several desktops. Each one is kept ready to show.
  • External displays, above all at a scaled resolution, which means drawing at a larger size and shrinking.
  • Transparency and motion: blurred menu bars, sidebars and animations cost drawing work.
  • Screen recording or sharing: every frame is copied as well as drawn. Our 65% sample was during a recording.
  • An app redrawing nonstop: a busy web page, a spinning animation, a chart updating many times a second.

How do I reduce WindowServer CPU?

  1. Close windows you are not using, and merge browser windows into tabs.
  2. Turn on Reduce transparency in System Settings, Accessibility, Display.
  3. For an external display, try its default resolution instead of a scaled one.
  4. Quit apps one at a time and watch WindowServer's number: the one that drops it is the app causing the redraws.

Can I quit or kill WindowServer?

Do not. Force quitting it ends your login session: every app closes and you are back at the login window. If it is stuck very high, a log out and back in does the same thing more gently.

See it live

Free Mac's System tab ranks every process by processor use and energy impact, once a second, and marks the ones macOS will not let you quit as protected. For other processes that drain a battery, see what energy impact means and kernel_task.

Related: mds_stores high CPU and mdworker_shared.

Common questions

What is WindowServer on a Mac?

The macOS process that draws every window, menu and animation on your displays. It runs as the _windowserver user.

Why is WindowServer using so much CPU?

Too many windows, external displays at scaled resolutions, transparency effects, screen recording, or an app redrawing nonstop.

Can I force quit WindowServer?

Not safely. Quitting it logs you out and closes every app. Log out and back in instead if it is stuck.

Read next