Three monitors on a Mac: the outer two swap after wake

30 October 2026 · Martín Acuña Lledó · Applies to macOS 13 Ventura through macOS 27

You run three external monitors. The middle one behaves, but every time the Mac wakes up, the left and right ones have traded places: the arrangement in System Settings is mirrored, the mouse leaves the wrong edge of the screen, and the windows that lived on the left are now on the right. People describe it on Macs with Max chips driving three screens, and very often the two outer monitors are the same model. This page explains why, how to check your own monitors, and what you can do about it.

Why the outer two swap

A common three-monitor desk is a pair of identical monitors on the sides and a different one in the middle, or three of the same model. Two things combine:

That is why the middle monitor usually stays put: if it is a different model, macOS always recognises it. Only the identical pair gets mixed up, and since they sit on opposite sides, it looks as if the outer two swapped. The windows follow the arrangement, so they end up on the wrong side too, or piled on one screen if macOS moved them during the disconnect.

The two-monitor version of this problem, with a closer look at serials, is in two identical monitors swap places after sleep.

Check what your monitors report

On a Mac with Apple silicon, this prints one line per external monitor with its model, serial number and manufacture date:

ioreg -r -c IOMobileFramebufferShim -l -w0 | grep -o '"ProductAttributes"={[^}]*}'

If two lines show the same ProductID and the same SerialNumber, or a SerialNumber of 0, macOS cannot tell those two monitors apart by serial. A different YearOfManufacture or WeekOfManufacture means they were made at different times, which some tools can use as a tiebreaker.

This shows which port of the Mac each monitor is on:

ioreg -r -c IOMobileFramebufferShim -l -w0 | grep -o '"PortID"=[0-9]*'

Different numbers mean the monitors are on different ports. On Apple silicon the port is the most reliable way to tell identical monitors apart, as long as each one has its own port on the Mac and they do not share a dock.

Fixes without an app

The full list, including display apps that protect the arrangement, is in every fix for windows moving after sleep.

What those fixes do not cover

How Many Displays handles it

Many Displays tells identical monitors apart in this order: serial, then system UUID, then the physical port they are plugged into (Apple silicon), then the EDID manufacture date (since version 1.1.6), and only then position. It keeps one layout per combination of displays, so your three-monitor desk is remembered on its own.

While the Mac sleeps, locks or the monitors reconnect, saving freezes, so the swapped state is never recorded. Once the displays have been stable for a few seconds, it puts the arrangement and main display back first, along with resolution, refresh rate and rotation, and then returns every window to its physical monitor, position and size. You do not save layouts or press a shortcut. To see which clue it used for each monitor, run /Applications/ManyDisplays.app/Contents/MacOS/ManyDisplays --dump: an ID ending in -port, -made or -pos tells you.

Since macOS 14.5 no app can move another app's window to a different desktop (Space) without disabling System Integrity Protection, so it restores display, position and size, not the desktop.

Download the free trial How it works

Questions

Why do the two outer monitors swap after my Mac wakes?

Usually because they are the same model. macOS recognises a display by the vendor, model and serial number it reports, and many monitors report the same serial in every unit. When the monitors reconnect after sleep, macOS cannot tell which of the two was on the left, so the arrangement follows whichever one comes back first.

Why does the middle monitor stay in place?

If the middle monitor is a different model, macOS can always recognise it, so its position is remembered. Only the identical pair gets mixed up.

Will a script like displayplacer fix it?

It can put the arrangement back after each wake, but it does not move windows, and with identical monitors the IDs it relies on can change between sleeps.

How do I check whether two of my monitors report the same serial?

On Apple silicon, run ioreg -r -c IOMobileFramebufferShim -l -w0 | grep -o '"ProductAttributes"={[^}]*}' in Terminal. If two lines show the same SerialNumber, or 0, macOS cannot tell those monitors apart by serial.