Window position guide

Mac apps reopen in the wrong position.

The window is the wrong size or in the wrong spot, not merely on the wrong monitor. Here is why, what to try for free, and how to put a saved frame back.

Mac apps reopen in the wrong position because macOS only loosely remembers the last window frame, and that memory often fails after a quit, a display or resolution change, or an app that opens a fresh window. There is no system setting that locks every app to the size and coordinates you chose. SnapState saves those positions and sizes and puts them back when you restore a workspace.

Why do Mac apps reopen in the wrong position?

Many apps store the last frame they used, then ignore it the next time they launch. A window comes back at a default size, a few dozen points off, or squeezed into a corner even when you are still on the same screen. A display or resolution change makes that worse: coordinates that used to sit in the middle of a monitor no longer match the pixels that are there, so the window shifts or shrinks.

That is a different problem from windows opening on the wrong monitor and from windows resetting after a restart. The wrong screen is about which display gets the window. A restart quits the apps and starts from login. This page is about size and coordinates: the app comes back, and the window is still not where you left it. Saving the layout you want is covered in how to save a window layout on Mac.

What free options should you try first?

Try these before you pay for anything. None of them locks every app to one frame.

  • Resize, then quit.Put the window at the size and place you want, then quit the app. macOS sometimes reopens it there. It often forgets as soon as the display, the resolution, or the app's own window changes.
  • Check "Close windows when quitting an application."In System Settings, under Desktop & Dock, that checkbox changes whether apps try to reopen their windows at all. It does not set precise coordinates. Leave it however you prefer documents to come back, and do not expect it to fix a shifted frame.
  • Do not treat a restart as the fix. The shutdown option to reopen windows when logging back in can bring apps back. It does not lock sizes or positions, especially after the displays change.
  • Try Stay. Stay by Cordless Dog has been free since version 1.5.1. It stores window positions for each display setup. If that covers you, it is a good free choice. See SnapState vs Stay for the difference: Stay is per-display memory, SnapState is a named workspace that also relaunches apps and the active browser tab.

How do you put windows back to the saved position?

  1. Size and place each window first. With the displays you actually use connected, drag every window to the spot and the size you want back. Do this before you save. A snapshot records the frames that are on screen, not the place an app used last week.
  2. Save that desktop as a workspace. Capture it from the SnapState menu bar. The snapshot stores window positions and sizes, the apps to relaunch, the monitor layout, and the active tab URL in each supported browser window.
  3. Let the apps reopen however they want. Quit and relaunch as usual. A window can still come back smaller, shifted, or in a default frame. SnapState does not intercept that first open, and it does not lock a permanent size for every future window the app creates.
  4. Restore the saved positions. Open SnapState from the menu bar, or press the workspace shortcut (Control-Command-1 through 6). SnapState moves the saved windows back to the sizes and coordinates in the snapshot and relaunches apps that are not running.
  5. Use a display or wake trigger only for those events. You can arm monitor connect, monitor disconnect, a matching display layout, or wake from sleep. Those triggers watch the displays or wake, not every time an app reopens a window. None of them run on login or restart.

SnapState 2.5.2 is a native Swift menu bar app. A workspace records visible windows on the current desktop, their position and size, the apps to relaunch, the monitor layout, and the active tab URL in Safari, Chrome, Edge, Brave, Arc, and Chromium once Automation permission is granted. If a monitor is missing when you restore, saved frames are remapped onto the displays that are connected. SnapState does not restore by itself when you log in or restart the Mac.

What does a restore include, and what does it leave out?

It includes the window positions and sizes you saved, relaunched apps, the saved monitor layout, and one active tab URL per supported browser window. It does not tile or snap windows into halves and thirds. It does not save or restore macOS Spaces. Firefox is not supported. Only the active tab is restored, not the rest of the tab bar. If the browser window itself comes back blank or on a new tab, see restore a Chrome or Safari tab after restart. A window that was not part of the snapshot can still open wherever the app puts it.

SnapState also does not restore by itself when you log in or restart the Mac. After a relaunch, restore the workspace yourself. Display connect, display disconnect, a matching display layout, and wake are the only automatic triggers, and they react to the monitors or to wake, not to every new window an app creates.

What are the practical details?

SnapState costs $9.99 once, with a license for up to three Macs and a 14-day refund. There is no free trial. It requires macOS 15.7 or later on Apple Silicon and Intel. It needs Accessibility permission to move windows. Workspace data stays on your Mac as JSON in ~/Library/Application Support/SnapState/.

What else should you know?

Why does a Mac app reopen smaller, shifted, or not where I left it?

macOS and many apps keep only a loose memory of the last window frame. That memory goes stale after you quit, after a display or resolution change, or when the app opens a fresh window instead of the one it saved. There is no system setting that locks every app to the size and coordinates you chose.

Can I lock an app to one window size and position?

Not with a built-in rule. Resizing the window and quitting sometimes makes the next launch match, and often does not. SnapState does not add a permanent per-app lock either. It restores the positions and sizes you saved when you restore the workspace.

Does SnapState move the window the moment the app opens?

No. SnapState does not watch for new windows and shove them back as soon as an app creates them. After the windows are open in the wrong place, restore the workspace from the menu bar or with Control-Command-1 through 6. Optional triggers are monitor connect, monitor disconnect, a matching display layout, and wake from sleep. There is no login or restart trigger.

Will it restore every browser tab?

No. SnapState restores the active tab URL in each window of Safari, Chrome, Edge, Brave, Arc, and Chromium when Automation permission is granted. It does not restore every tab, and Firefox is not supported. It saves only the visible windows on the current desktop, not other macOS Spaces. It also does not tile or snap windows.

Is the wrong position the same as the wrong screen or a restart?

No. The wrong screen means a window opened on the wrong monitor while the displays were already connected. A restart quits the apps, and SnapState will not restore by itself when you log back in. This page is about the size and the spot: the window comes back smaller, shifted, or not where you left it, including on a single display.

Get SnapState for $9.99One-time purchase · up to three Macs · 14-day refund