Apple has had 15 years to fix this. We stopped waiting.

Every window back where it was.

Your Mac sleeps, and every window ends up on one monitor. Again. Many Displays is a menu bar app that remembers where every window lives — which display, position, size and Space — and puts everything back when your Mac wakes up, unlocks, or reconnects its displays. Even with two identical monitors.

14-day free trial · One-time purchase with one year of updates · macOS 13+, Apple Silicon and Intel

You are not alone. You are not doing anything wrong.

People have been reporting this to Apple since 2011. The biggest Apple Community thread has over 800 "Me too" votes. It still happens on macOS 26 and 27. Here is what they say.

"It feels like someone is walking over to your desk and moving everything around, just to annoy you."

JR1427, Hacker News

"For something like 14 years(!), this has driven me up a wall."

peterjmag, Hacker News

"It was driving me crazy to have to redistribute every time my new M1 MacBook took a nap."

EmmerEff, Apple Community

"Forgetting to do this and you're spending a minute+ re-organizing your windows. Such an annoyance for such an expensive machine."

davidandora, Apple Community

"I've had this problem for years with pre-M1 MacBooks and shockingly the M1's have still not fixed the problem."

betaclone, Apple Community

"I have this issue for years now so that I am not noticing anymore."

milkers, Hacker News

Apple's reply to the bug report, as quoted by the person who filed it: "This issue behaves as intended."

That is why this app exists. Read every workaround people have tried, or skip them all:

The problem

Your Mac sleeps, locks, or you unplug a dock. When the displays come back, macOS piles every window onto one monitor — and with two identical monitors it often swaps them, because they share the same serial number and macOS cannot tell them apart. Apple has not fixed it. You spend the first minute of every session dragging windows around.

After waking up macOS stacks everything on whichever display came back first
With Many Displays each window goes back to its physical display, position and size

What it does

It sits in the menu bar and stays out of the way. You should never need to open it.

Works with identical monitors

Two of the same model that share a serial number are told apart by their system UUID, then by the physical port they are plugged into, and only then by position. One layout is kept per combination of displays.

Fast, and it never hangs

Other tools ask every app for every window through Accessibility, which is slow and stalls when one app stops responding. Many Displays reads the window server's list instead: around 20 ms for hundreds of windows, without talking to any app.

Restores the displays too

If macOS swapped left and right, changed the main display, resolution, refresh rate, rotation or HDR, or turned on mirroring after a reconnect, each one is put back before the windows. Can be turned off in the menu.

Saves what you do, not the mess

Moves and resizes are saved within about 1.5 seconds, event-driven, no polling. The moment the Mac locks, sleeps or a display disconnects, saving freezes so the pile-up is never recorded.

A calm restore

While windows move, the screens get a soft blur with a countdown, so you are not watching windows jump around. It only appears when something actually needs to move and never stays longer than 10 seconds. Optional.

Private by design

No network access, no analytics, no account. Your layouts stay in a JSON file in your Library folder. The source is MIT-licensed on GitHub, so you can read exactly what it does.

How it works

Tracks windows in near real time

When you move, resize, open or close a window, the layout is saved within about 1.5 seconds, plus a light check every 20 seconds. With the MacBook alone and no external displays it goes idle: no observers, no timers.

Freezes while macOS reshuffles

On lock, sleep, display sleep or a reconnect, saving stops. Whatever macOS does to your windows in the meantime is ignored, and the last good layout is kept.

Restores when the displays are stable

Once the displays have been steady for a few seconds, the arrangement is fixed first, then every window goes back in several quick passes, because macOS keeps nudging windows for a while. For three minutes afterwards, changes nobody asked for are undone instead of saved.

Stop rearranging windows. Today.

You have tried the settings, the cables, maybe a dummy plug. Apple is not going to fix it. Install Many Displays once, forget it is there, and never drag a window back across the desk again. Free for 14 days, no account. Then one purchase for up to 3 Macs, with one year of updates; after that, the last version released during your year keeps working forever.

  • Notarized, auto-updating build
  • 14-day money-back guarantee
  • Source code on GitHub under the MIT licence
€19one-time

Requirements

  • macOS 13 Ventura or later
  • Apple Silicon or Intel (universal build)
  • Accessibility permission, granted in System Settings → Privacy & Security → Accessibility. Without it, positions are still saved but windows cannot be moved.

Privacy

The app makes no network connections and has no analytics. It only talks to the update server when you choose "Check for Updates…" or have automatic update checks turned on, and to the licence server once, when you enter your key. Read the privacy policy.

Questions

I have two identical monitors. Will this really work?

Yes, that is the case the app was built for. macOS identifies displays by vendor, model and serial number, and many monitors ship with the same serial (0 or 0x01010101), so two identical screens look the same to macOS and it shuffles them after every sleep. Many Displays tells them apart by their system UUID, then by the physical port they are plugged into (on Apple Silicon), and only then by position. If macOS swapped the arrangement, it is put back before the windows.

Does it restore windows to their Space (virtual desktop)?

It remembers the Space, but since macOS 14.5 Apple blocks moving other apps' windows between Spaces unless System Integrity Protection is disabled, so the app does not do it. In practice, with "Displays have separate Spaces" turned off, sleeping does not change a window's Space, only its display, which is what gets restored. If a window ends up on a different Space, the menu says so. Some apps hide their off-Space windows from Accessibility; those are restored the moment you switch to their Space.

How does the trial work?

Download the app and use everything for 14 days. No account, no card. After that it asks for a licence key, which you get by email right after buying.

What does the licence include?

One licence is for one person on up to 3 Macs. It includes every update released in the year after your purchase. When that year ends, the last version you are entitled to keeps working for as long as you like; buying again only matters if you want newer versions. There is a 14-day money-back guarantee. See the terms.

The source is open. Why pay?

The code is MIT-licensed and you are welcome to build it yourself with Xcode. Paying gets you the signed and notarized build that opens without warnings, automatic updates, and support by email. It is also how the project is funded.

Does it work with the MacBook alone?

With no external displays the app goes idle and never touches your windows. Layouts are kept per combination of displays, so your desk setup and your lid-open setup are remembered separately. If undocking leaves the built-in screen at a wrong resolution, the last known good mode is restored.

Will it reopen windows I closed, or move new ones?

No. Windows you closed while away are never reopened, and new windows are left alone and tracked from then on.