Window layout how-to

How to save a window layout on Mac.

Arrange once, capture it under a name, and call it back instead of rebuilding it.

macOS does not include a feature to save and recall named window layouts. You can line up windows for the task at hand, but after a restart, a dock change, or a switch to another project, that arrangement generally has to be rebuilt by hand.

Other apps cover nearby needs, for example Stay for per-display window positions and Moom for tiling with saved layouts; see the Stay comparison and the Moom comparison for where each one fits.

Short version: capture the layout you already made as a named SnapState workspace, then restore it from the menu bar, a Control-Command shortcut, or an automatic display or wake trigger.

How to save a layout with SnapState

  1. Arrange the windows for one context. Put the editor, browser, terminal, notes, or call windows for a single task where you want them on the current desktop.
  2. Capture the layout from the menu bar and name it. Open the SnapState menu bar app, capture the current setup, and give the workspace a name such as Coding, Writing, Calls, or Research.
  3. Restore it from the menu bar. Choose the named workspace from the menu bar whenever you want that arrangement back, on the same or a different display setup.
  4. Restore it with a keyboard shortcut. Press the workspace global shortcut, Control-Command-1 to 6, to recall the layout without reaching for the mouse.
  5. Let it restore automatically when you want. Optionally arm the workspace to restore when a monitor connects or disconnects, when a matching display layout appears, or on wake from sleep.

What SnapState saves vs doesn't

Each workspace is a snapshot of the current desktop, with clear boundaries on what is included.

ItemSavedNotes
Window position and sizeYesVisible windows on the current desktop
Apps needed to relaunch the workspaceYesMissing apps are relaunched on restore
Monitor and display layoutYesFrames remap when the setup differs
Active browser tab URL per windowYesSafari, Chrome, Edge, Brave, Arc, Chromium; needs Automation permission
Full tab sets per windowNoOnly the active tab URL is restored
macOS SpacesNoCurrent desktop only
Firefox windowsNoFirefox is not supported
Tiling or snapping behaviorNoSnapState recalls snapshots; it is not a tiling manager

Tips: one workspace per context

Named workspaces work best when each one matches a single context. Keep separate coding, writing, calls, and research workspaces so restoring one always means the same thing. Name them for the task, arm the display and wake triggers only where they help, and keep the rest on menu bar or Control-Command-1 to 6 recall so layouts never change under you unexpectedly.

Practical details

SnapState is a native macOS menu bar app, version 2.5.2, requiring macOS 15.7 or later on Apple Silicon and Intel Macs. It costs $9.99 as a one-time purchase through Lemon Squeezy, with a lifetime license for up to three Macs and a 14-day refund, and ships as a signed, notarized DMG rather than through the Mac App Store. It needs Accessibility permission to read and move windows, and workspace data stays local on your Mac as JSON in ~/Library/Application Support/SnapState/.

Common questions

Can macOS save a window layout by itself?

macOS does not include a feature to save and recall named window layouts. You can arrange windows by hand, but there is no built-in way to capture several named arrangements and call each one back later.

What does SnapState save in a workspace?

Each named workspace saves the visible windows on the current desktop with position and size, the apps needed to relaunch them, the monitor and display layout, and the active tab URL of each window in Safari, Chrome, Edge, Brave, Arc, and Chromium after Automation permission is granted.

What does SnapState not save?

SnapState does not save or restore macOS Spaces, only the visible windows on the current desktop. It restores only the active tab URL per supported browser window, not full tab sets, and Firefox is not supported. It is not a tiling or snapping window manager.

How do I restore a saved layout?

Restore from the SnapState menu bar, with global Control-Command-1 to 6 shortcuts, or automatically when a monitor connects or disconnects, when a matching display layout appears, or on wake from sleep. Saved window frames are remapped onto the current displays when the setup differs.

How many workspaces should I keep?

One workspace per context tends to work best: coding, writing, calls, and research, for example. Name each one for the task so the right layout is one click or one shortcut away.

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