Skip to content

Guide

What is WindowServer on a Mac?

WindowServer puts every window, menu and animation on your screens. When it's busy, it's doing what your apps and your display setup ask of it. Here's how to find out which.

By the iKnowMyMac team · Updated · 6 min read

The short answer

WindowServer is the macOS process that draws every window, the menu bar and the Dock onto your displays. It works harder with more or larger displays, scaled resolutions, transparency, lots of open windows, and apps that redraw constantly. Never quit it: force quitting WindowServer logs you out straight away and closes every app, unsaved work included. To calm it down, close windows and tabs you don't need, quit apps that animate constantly, use each display's default resolution, and turn on Reduce transparency in System Settings → Accessibility → Display.

On this page

What WindowServer does

Each app draws its own windows and hands them to WindowServer, which combines them with the menu bar, the Dock, shadows, transparency and animations into the picture each display shows. Every display, every window and every frame goes through it. See WindowServer in the glossary.

So its CPU, GPU and memory use follow what's on screen. A few percent CPU while you work is normal, and its memory grows with the number and size of your displays.

Is it safe to quit WindowServer?

No, never. Force quitting WindowServer logs you out immediately and closes every app without asking to save, and you're back at the login window. There's never a reason to quit it to fix high CPU.

Why it gets busy

  • More and larger displays. Each external display is another full picture to draw, and high-resolution displays mean more pixels in every frame.
  • Scaled resolutions. With a scaled setting that fits more on screen, macOS draws at a higher resolution and scales it down. Apple notes that using a scaled resolution may affect performance.
  • Transparency and motion. Translucent menus, sidebars and the Dock, and animations, all add drawing work.
  • Lots of windows. Every open window has to be kept ready to draw, including ones behind others or on another desktop.
  • An app that redraws constantly. A web page with video or animation, a game, a moving wallpaper or a busy dashboard makes WindowServer redraw every frame. This is the most common cause of a sudden spike.

High WindowServer use is usually a symptom: another app is asking it to draw a lot.

How to find the cause

In Activity Monitor, sort the CPU tab by % CPU and look for the app that is busy alongside WindowServer; that's usually the one redrawing. Window → GPU History shows how hard the GPU is working.

The busiest processes, in Terminal
top -l 2 -o cpu -n 10 -stats pid,command,cpu | tail -11
Your displays and their resolutions
system_profiler SPDisplaysDataType

A quick test: quit or hide the app you suspect and watch WindowServer's % CPU in Activity Monitor. If it drops, you've found the cause.

What helps

  1. Close windows and browser tabs you don't need, especially ones playing video or animating.
  2. Quit apps that animate constantly while you're not looking at them.
  3. Use each display's default resolution. In System Settings → Displays, the default is the one macOS picks as best for that display; scaled options that fit more on screen take more work.
  4. Turn on Reduce transparency in System Settings → Accessibility → Display. It replaces the transparent effect on some backgrounds with a solid one.
  5. Disconnect an external display you aren't using, and check whether WindowServer drops.

The faster way: “What is this?” in iKnowMyMac

iKnowMyMac explains this inside the app. Every process row has a “What is this?” action that says what the process is, whether it's safe to quit, why it's busy right now and the one fix. For WindowServer, it says how many displays it's drawing right now.

Know why your Mac is slow.

macOS 15 Sequoia or later · Apple silicon. A 4.2 MB native app, notarized by Apple. No account, no analytics, no telemetry.

One-time purchase · every feature · 14-day refund