Cmd+Tab, on a Mac, hasn't meaningfully changed since 1984. It's a flat strip of application icons. You hold Cmd, tap Tab to move right, release to switch. There's no window preview, no per-window switching, no filtering by workspace, no memory of what you did five minutes ago. In 1984, when the average Mac ran three apps and had one window per app, this was fine. In 2026, when the average knowledge worker has fifteen apps open and forty windows across them, it's a bottleneck.
The core problem is that Cmd+Tab treats app switching as a linear scan. You start at position 0, and to reach position 8 you have to visit every position in between. Your eyes can pattern-match a target in 200 ms; your fingers can't tap Tab eight times in the same window. So you overshoot, back up with Shift+Tab, overshoot the other way, and finally land — three seconds later, focus broken.
The good news: there's a long tradition of Mac apps trying to fix this. Here's what's actually out there, what each one does well, and where each one falls down.
The alternatives, in shape order
AltTab — the Windows port
AltTab is free, open source, and models itself explicitly on the Windows Alt+Tab: a horizontal strip of window thumbnails, one per window, not one per app. You switch between windows, not apps. This is the correct model — most of the time you're not trying to switch to "Chrome," you're trying to switch to a specific Chrome window.
The trade-off is density. Because AltTab shows one thumbnail per window, if you have thirty windows open, the strip either fills your entire screen or the thumbnails become postage stamps. It's configurable — you can filter by space, by app, by minimised state — but the default view assumes you don't have that many windows open, and modern setups usually do.
Contexts — the sidebar
Contexts takes a completely different approach: a persistent sidebar of every open window, indexed by hotkey. Cmd+Tab still works for recents; a longer press opens the sidebar and lets you type-to-search or click a specific window. It's the best pure keyboard-driven switcher on the platform if you're willing to learn the model.
It's also opinionated in a way that some people bounce off. The sidebar takes screen real estate. The multiple modes (recents, sidebar, search) are powerful but discoverable only by reading docs. If you like a heavy, feature-forward tool, Contexts is the pick.
Witch — the veteran
Witch has been around since roughly 2007 and is the elder statesman of Cmd+Tab replacements. It's a list-based switcher — a floating panel with app names and window titles as text, no thumbnails. You can bind separate hotkeys for "switch app" and "switch window within app," which is Witch's real trick.
The text-list model is fast when you know what you're looking for and the window has a distinctive title. It's less useful when you have five identically named "New Document" windows or when window titles are truncated. If you live in code editors and terminals where titles are meaningful, Witch shines. If you live in a browser where every tab is "Untitled — Chrome," less so.
Raycast — the launcher that also switches
Raycast is primarily a Spotlight/Alfred replacement, but its app-switcher extension is genuinely capable — type-to-search across every open app, jump directly. If you already use Raycast, you probably don't need a dedicated switcher on top.
The friction is context-switching between modes: you invoke Raycast, then decide whether you want the launcher, the switcher, or a clipboard action. When Cmd+Tab is muscle memory, adding a decision to the front of it slows you down. Raycast's switcher is best used as a fallback for the case where you don't remember which window you want and need to search.
Tesserac — the grid
Tesserac is the app we built. It replaces the linear strip with a grid — apps laid out spatially rather than linearly, so your eyes reach the target in one saccade instead of scanning through everything in between. It's a small, calm menu-bar app: no sidebar, no search index, no config sprawl.
The bet behind Tesserac is that most of the time you know exactly which app you want, and the fastest interface is one where your eyes can jump straight to it. It doesn't try to replace every use case — if you need window-level switching or workspace-aware filtering, AltTab or Contexts will do more. Tesserac does one thing and gets out of the way.
Tesserac is on the App Store and available direct. It's a small studio project, priced accordingly — no subscription, no telemetry.
How to choose
Pick AltTab if you want per-window switching and you like configurability. It's free, it's under active development, and the Windows model is the model that scales.
Pick Contexts if you have thirty-plus windows open at all times and you're willing to learn a slightly heavier tool in exchange for genuinely great keyboard-driven navigation.
Pick Witch if your work is text-heavy and your window titles are meaningful — code editors, terminals, writing apps.
Pick Raycast if you're already using it as a launcher. Don't install it just for switching.
Pick Tesserac if you want the smallest, quietest thing that makes Cmd+Tab feel less like scanning and more like pointing. It's the tool for people who don't want a config tree — they just want their fingers to reach the right app faster.
What Apple could do (but probably won't)
The reason all these tools exist is that Apple hasn't touched the Cmd+Tab UI in forty years. Meanwhile Windows added thumbnails, Mission Control adopted spatial layout, and iPadOS grew a decent app switcher. macOS is oddly frozen on this one interaction.
If Apple ever ships an updated switcher — spatial, filterable, with per-window granularity — most of these third-party tools become redundant overnight. Until then, pick one from the list above.