How to reduce WindowServer CPU usage on your Mac

One of the most important macOS elements is the relationship between the calculations carried out by the CPU and what you see on the screen. That relationship is managed by WindowServer on your Mac — a process that is responsible for drawing graphical elements on display.

Most of the time, you won’t have to think about it or even know it exists, but if it starts using lots of CPU cycles, it may slow down your Mac. Here’s how to fix that.

What is WindowServer on Mac?

Simply, it’s the macOS process that draws elements on the screen, whether they are application windows, icons, or websites. The more windows you have open at any one time, the more CPU cycles WindowServer needs. Most graphical elements are refreshed regularly, which is why WindowServer needs those CPU cycles. Every time you move a window around, edit an image in Photoshop, or switch to a different tab in Safari, WindowServer needs to redraw your screen.

When you consider that windows in macOS have lots of effects, such as transparency and drop shadows, it’s hardly surprising that drawing and redrawing them on screen consumes resources. However, on most Macs, the number of CPU cycles WindowServer consumes should be so small you don’t notice it.

Why is WindowServer using so much CPU

There are a few things that can cause WindowServer to use so many CPU cycles that you notice it or that it slows down your Mac. These include:

Misbehaving apps

Some applications “hogging” memory

Multiple displaysHaving multiple displays can use up computer memory
Cluttered desktop

Each icon has to be redrawn every time the screen contents change

Visual effectsOlder Macs struggle with modern graphics

How to find out if WindowServer is using excessive CPU cycles

  1. Navigate to Applications > Utilities and open Activity Monitor.
  2. Click the top of the CPU column.
  3. Look at the names of the processes in that column.
  4. If WindowServer is near the top and takes up more than 60% of CPU resources, you know it’s using more CPU cycles than it should.
  5. Quit Activity Monitor.

Is WindowServer related to mds_stores?

No, not directly. While WindowServer controls the drawing of elements on the screen, mds_stores on your Mac — mds stands for metadata server — is part of Spotlight. If you see mds_stores consuming CPU cycles, it’s probably because Spotlight is reindexing your Mac.

Tip

If you find that your Mac is struggling and often runs slowly, CleanMyMac X’s Maintenance Module can help. It runs several routines, including freeing up RAM, running maintenance scripts, and repairing disk permissions that can improve your Mac’s performance. Its System Junk module will also identify and remove junk files that are littering your boot drive and may be hampering performance. Here’s how to use it. 

1. Download and install CleanMyMac X, then open it. 

2. Select System Junk and click Scan. 

3. When it’s finished, click Clean to get rid of the files it has found or Review Details to find out more.


How to reduce WindowServer CPU usage

1. Close windows you don’t need

      The more windows you have open, the harder WindowServer has to work, especially if you have an older Mac. You should also close browser tabs you’re not using, as this will reduce the overall load on your system. And if there are any applications open that you are not using at the moment, quit those (press Option-Command-Escape to open the Force-Quit menu). 

      2. Turn off visual effects

      Features like transparency in windows also use more CPU cycles. You can’t turn off every visual effect, but you can switch off transparency using the Accessibility pane in System Settings. To turn it off:

      1. Go to the Apple menu and choose System Settings.
      2. Click on Accessibility and select Display.
      3. Select the box next to Reduce transparency.

      3. Reduce the number of desktops in Mission Control

        Closing additional desktops may help lower down WindowServer CPU usage:

        1. Press the F3 key to invoke Mission Control or if you’re using a non-Apple keyboard, click on the Launchpad icon in the Dock and choose Mission Control.
        2. Hover the mouse pointer over any desktops you are not using.
        3. Click on the ‘x’ in the corner of the desktop to close it.

        4. Check if apps and macOS are up to date

          Newer versions of macOS and apps can help reduce WindowServer CPU usage. It is due to the fact that they are usually more optimized. 

          Speaking of the macOS, having an outdated one can cause other issues as well, so taking time to update it is necessary. Here’s how to update macOS:

          1. From the main Apple menu, go to System Settings > General.
          2. Click Software Update. 
          3. Follow the on-screen instructions if an update is available. You can also turn on automatic updates.
          System Preferences - Software Update

            Once you’ve updated macOS, it’s time to make sure that apps are up to date as well. There are several ways to do it. For example, for apps downloaded from the App Store, open the App Store app and check the Updates section. From here, click Update next to a particular app or Update all. 

            AppStore Updates tab

            If you’ve downloaded apps from a developer’s website, open the app and click on its name in the menu bar. From there, choose Check for Updates. Alternatively, look for some sort of the Automatic Updates option in the app’s settings. You can also visit the developer’s website to check for updates. Note that you will have to repeat the process for every app installed on your Mac. 

            Tip

            CleanMyMac X can check all the apps on your Mac for new versions and install any available updates. It’s much quicker and easier than installing patches individually.

            5. Reduce files and folders saved on Desktop

            As mentioned above, the WindowServer process focuses on visual elements. With this in mind, if you reduce the number of files and folders you store on the Desktop, it may help reduce CPU usage. It works because the WindowServer process now has to redraw fewer elements. 

            Here are several solutions: 

            1. Organize files into folders. Try to reduce the number of elements to the maximum.
            2. Move files and folders that are not essential to the Documents folder. 
            3. Use Stacks (right-click anywhere on the Desktop and select Use Stacks).

            6. Turn off Spaces for multiple displays

            If you work with several displays, it is necessary to turn off Spaces for them. Luckily, it is done easily from System Settings:

            1. Go to System Settings > Desktop & Dock.
            2. Scroll to the bottom of the window. 
            3. Under Mission Control, turn off “Displays have separate Spaces.”
            4. Restart your Mac.

            7. Restart your Mac

              Many of us don’t restart our Macs very often; we just close the lid when we’re finished working and then open it again when we need to use our computer. However, restarting is important to free up RAM and delete caches and other temporary files. It can also fix problems like certain processes occupying too many CPU cycles.

              WindowServer is a process that controls the drawing of graphical elements and windows on your Mac’s display. Under normal circumstances, it should take up so few system resources you won’t notice that it’s running. However, occasionally things can go wrong, and it consumes way more CPU cycles or RAM than it should. If that happens on your Mac, follow the steps above to reduce the resources it uses.


              FAQ

              What is the WindowServer process? 

              On a Mac, the WindowServer process is a process responsible for the communication between displays and apps. Simply put, it is necessary for drawing graphical elements on display.

              Why is WindowServer process CPU usage so high? 

              The most common causes include working with multiple displays at a time, heavy use of visual effects, and app glitches. 

              How to reduce WindowServer process CPU usage?

              There are several ways to deal with the issue, such as making sure that apps and macOS are up to date, restarting your Mac, and closing unnecessary windows.

              Laptop with CleanMyMac
              CleanMyMac X

              Your Mac. As good as new.