After 4 years of being a Mac user, there is only one thing that I still miss from the Windows world, and that is being able to switch with a single keystroke between all open windows in the computer.

What is the best app or utility, free or not, for accomplishing that?

I've used Witch, but I never was completely satisfied with it. It's a bit slow and the switcher UI is not very pretty.

Do you know any alternative?

EDIT (2016): This question keeps getting views and upvotes after 6 years. When I asked this question in 2010 I was still transitioning from being a Windows user. Eventually, I got used to Mac OS X UI and nowadays I don't use any third party utility for managing app windows, just Mission Control and the native keyboard shortcuts. So, although this question is no longer relevant for me I hope it is useful to new Mac users making the switch (Including this comment).

  • 2
    When is Witch slow? I've just started using it. – pupeno Sep 30 '10 at 8:52
  • What about Exposé's F9 function? – molle Apr 24 '11 at 2:37
  • I think this might better written as just "Best app to switch between all open windows". So without the "alternatives to witch" part. That way witch could be one of the answers so it could be voted up/down and commented on relative to the others. – studgeek Jul 1 '16 at 22:47
  • @studgeek: I agree. Edited the question title. – Sergio Acosta Jul 1 '16 at 23:36
  • The edit message only makes people finding this question lose time reading it – Ivan Castellanos Dec 31 '19 at 23:53

14 Answers 14


Here's a list of all the options from this page:

  • Mission Control and native keyboard shortcuts: +tab or +` (backtick)
  • Witch [Yosemite or later] [$14]
  • Hyperswitch ["Mountain Lion, Mavericks & Yosemite"; works on Sierra & High Sierra] [$0 Free] [window preview]
  • Contexts ["Yosemite, El Capitan, Sierra, High Sierra"] [$9 after Free trial]
  • Optimal Layout [Snow Leopard or later] [$0 (free) but it is not currently under active development]
  • Karabiner - [Tiger - El Capitan, "not Sierra"]°°
  • Senebier ["10.4 or later"]
  • AltTab [Sierra or later] [$0 (free), open source]

[°° Update, Karabiner's successor Karabiner-Elements 12.1: High/Sierra & Mojave] [free]

  • Cmd+` only works for windows within the same space. – andresp Jun 5 at 9:49

Hyperswitch is free and works well. It also looks nice:

enter image description here


| improve this answer | |
  • 12
    Well, after 4 years comes an answer that solves exactly my original question. No more, no less. I hope this goes out of beta soon. thanks!, I will try it for a couple of weeks and if it works as advertised I could even mark it as the accepted answer. – Sergio Acosta Apr 15 '14 at 1:21
  • 5
    Finally the solution! – Lumi Jun 8 '14 at 8:40
  • 9
    Holy crap i created an account on Ask different just to thanks @Paul for this one, finally found an app like this for free – Pedro Garcia Mota Feb 13 '15 at 14:20
  • 7
    Hyperswitch does NOT implement the window switching feature that has been most valuable for me on MS Windows: It does not allow to quickly switch between last-used windows. This is important for me as I constantly switch between e.g. editor and browser to control my work. I have many windows open in both editor an browser and with Hyperswitch I have to do many keystrokes to switch back and forth between the most recently used. I found that Witch solves that. The list of Windows to switch between is by default ordered by usage and I can easily switch between the most recent ones. – Jpsy Mar 27 '15 at 17:17
  • 7
    @Jspy hyperswitch does that - I just downloaded the latest verison, maybe you have older one – Srneczek Sep 3 '15 at 16:38

I'm guessing you're already aware, but for those searching the web there's always Ctrl+F4. No visual feedback, but it does switch between all windows for all apps (that are not hidden) with one command. Of course it's instant and so it doesn't reorder the list like ⌘+Tab does. I also got tired of Witch, but I decided that most of the time ⌘+` is all I need.

| improve this answer | |
  • 1
    [⌘] + [`] "is all I need" - indeed! – a darren Jan 9 '14 at 14:19
  • 2
    The visual feedback is important for me and doesn't exist in ⌘+`. – AlikElzin-kilaka May 15 '14 at 12:41
  • 3
    And Cmd + ` doesn't work across multiple spaces. – GregB Jul 22 '14 at 19:39
  • @GregB I take that as a plus :) – nyxz Mar 25 '15 at 22:06
  • 2
    And [command] + [`] with [command] + [tab] is annoying because they have two separate list-ordering rulesets. – Joseph Hansen Jun 13 '16 at 1:00


Contexts for mac is a competitor to Witch. As a long-time non-mac user looking for more intuitive window switching , I really like this app. It allows for switching between all the windows you have open, using your keyboard or your mouse.

There's also an optional side panel, which is somewhat a replacement for the Mac Dock. It can be configured to hide applications that don't have a window, and displays multiple icons for multiple windows. As such, irrelevant background applications are hidden and multi-window apps can be managed more easily.

If need be you can still use Apple's Native App-switcher (cmd+tab) to close/switch-to background/windowless applications without using the native dock.

| improve this answer | |
  • @sergio I also had a good first impression of this app, any reason it doesn't work for you? May have been updated since you tried it. – Jay Apr 11 '16 at 16:42
  • 6
    For those of you reading this in 2016, Contexts is your solution. It works beautifully. – Joseph Hansen Jun 13 '16 at 1:46
  • 1
    It's so slick and yet feature-packed I purchased it in under 5 minutes. Full Disclaimer: I am very tight-fisted normally ^_^ – sming Oct 15 '16 at 12:33
  • 2
    It's almost 2020, last update is April 2018. Developers did not retweet back if the project is alive. Tab switching was planned as a feature, currently not supported. – Ev0oD Dec 3 '19 at 9:58
  • this is still my goto app for both in mojave for splitting app windows into separate entries in the stack and cmd-tabbing between them – worc Mar 31 at 16:38

An app I developed, Optimal Layout (14$), gives you keyboard commands to quickly switch and re-organize windows.

| improve this answer | |
  • That's just exactly what I was looking for. Thanks both for answering and for making the app. I'm currently evaluating it. I hope you'll have me as a new customer soon. – Sergio Acosta Sep 29 '10 at 20:25
  • 1
    Optimal Layout is nice, I tried it, but I didn’t buy it because I already had my “muscle memory” tied to using the OS X shortcuts (which I’ve changed) and the Window placement handled by SizeUp. But it’s a very promising app! – Martin Marconcini Sep 30 '10 at 10:00
  • I was using Optimal Layout for a while. I was using Witch, but switched to Optimal Layout for its ability to search the window titles. However, in the past few months I have found some issues and have not heard back from the Optimal Layout developer on them. The biggest is that it occasionally doesn't show some windows until I restart it. – studgeek Jul 5 '16 at 19:03
  • 1
    OptimalLayout is great. It combines window switching and window positioning, with customizable arrangements and shortcuts. I've had a couple of problems, though, and the developer has been unresponsive through the contact information in the application itself. I'm searching for an alternative just so I can use software that has support! – Trinition Dec 7 '16 at 14:14

For those who don't know it, Ctrl+F4, Ctl+`, ... can be remapped in: SystemPreferences=>Keyboard=>Keyboard Shortcuts=>Keyboard & Text Input


| improve this answer | |
  • 4
    I'll add, since some might not already know, that Ctrl-F4 can be used to switch between all open windows when "Enable access for assistive devices" is turned on in Universal Access. – NReilingh Apr 1 '12 at 4:14
  • This is the simplest way, without installing any extra software. Thanks! – poolie Nov 21 '15 at 16:28
  • 1
    @L0CKnL0aD7 this might be the answer for me, if for one thing: is it possible to make the window order be most recently used rather than when it was opened? – Joseph Hansen Jun 13 '16 at 1:22
  • 1
    Cannot do this on "El Capitan".. any idea why? – pragmatic_programmer Jul 18 '16 at 12:20

Command + Tab, combined with Command + `. Works great.

Let me explain:

  • Command + Tab : Switch between different applications.
  • Command + ` : Cycle between all open windows of the application you're focused on. (For example, if you have four Finder windows open, you can press Command + ` to move between the four windows.)

If this and other keyboard shortcuts seems to be broken, you probably have another keyboard-layout then US, The shortcuts actually aren't to the ` key but rather the key that would have ` on a US keyboard, to find what key this is on your layout, open the "keyboard viewer" and switch your layout to US, take notice on where the ` key is located, swich back to your normal layout and you can now use this button to switch windows.

On a swedish keyboard ` is the button next to 1 (§) on the small/laptop keyboard, and the key next to z (<) on the full size keyboard.

| improve this answer | |
  • 5
    Thanks for your answer. I know about both shortcuts, but I'm specifically looking for a single keyboard shortcut solution to switch between all open windows. – Sergio Acosta Sep 29 '10 at 18:45
  • 3
    +1. Although for me, Command + ` seems to work rather than Ctrl + `. – gary Mar 12 '11 at 10:46
  • 2
    Too bad Apple didn't think about keyboards where the ` key is not near the TAB key, and worse, where you need a modifier key to select it :-( – Rabarberski Aug 5 '11 at 9:23
  • 5
    This is bad solution for people who work very quickly and want to switch back and forth, especially if the person has experience in Windows. The problem being that [command] + [tab] switches between apps which are ordered by order of use, and [command] + [`] has windows ordered by when they were opened. In other words, you have a deal-breaker of a problem: even if you have the wherewithal to be able to mentally switch between the two paradigms on the fly, there is no way to memorize the location of a window in your "mental" stack. – Joseph Hansen Jun 13 '16 at 1:07
  • 4
    For instance, assuming I'm switching between two Word docs and a webpage, I have to discover and remember the number of [command] + [`] switches between the two documents (possibly two distances: doc 1 to 2 and doc 2 to 1) and remember that to switch between Word and my browser is a different keyboard grouping. In Windows, I just remember [alt] + [tab] or [alt] + [tab][tab]. Easy. In other words, my personal opinion is that there is a terrible user experience in OS X keyboard shortcuts. – Joseph Hansen Jun 13 '16 at 1:09

I know it isn't a single keystroke but I like using the "App exposé" feature to navigate between the windows of the focused application :

  • ctrl + down arrow (or three fingers down move)
  • then left arrow or right arrow to navigate between windows (or click on the window you chose)
| improve this answer | |
  • Thanks for answering!. It's been 5 years since I asked my question but honestly I still haven't found a 100% satisfactory answer. However, this is actually a very good suggestion!. I didn't know about that shortcut, and in fact it was disabled on my Mac. I already enabled it and will be using this to see how it works with my workflow. – Sergio Acosta Sep 21 '15 at 14:40

I use this OpenSource software with success since few days https://github.com/lwouis/alt-tab-macos

alt-tab-macos brings the power of Windows' "alt-tab" window switcher to macOS.

Homebrew installation:

brew cask install alt-tab
| improve this answer | |
  • Excellent answer! Thank you. – Sergio Acosta Apr 16 at 17:05
  • This is the only free option that worked for me. – andresp Jun 5 at 10:41
  • Thanks for this suggestion, I added it to the list of apps in the accepted answer. – marcvangend Jul 13 at 11:48

Senebier seems to be a good alternative to witch and it's free. http://www.bicoid.com/app/senebier/index.html

| improve this answer | |
  • 2
    Can you provide some more info on it please? Manual seems to be non-english and the movie demo is missing. – studgeek Jul 5 '16 at 19:04

It's interesting - no one has mentioned Karabiner. it has ton of options for different things, the one I like called "Tab mode", where you can switch between apps by holding Tab key and using either arrows or HJKL keys (especially favored by Vim users). Tab+I to cycle through open windows of the current app.

I love Karabiner, it's the app that made me really, really hate Windows (occasionally I have to do things in Windows). However even with awesome AutoHotkey app I couldn't find a way to use keyboard there as Karabiner lets me on a Mac.

I encourage you to try Karabiner and explore vast amount of different options, trust me - it will change the way you use your keyboard.

| improve this answer | |
  • Here's how to make ⌘-tab switch between windows in Karabiner: Under the "Change Key" tab, expand "Change Tab Key" (the 39th item), and enable "Command+Tab to switch apps within the same Space" (the 10th item). (I'd expect the item numbers to change in different versions, but those should give you some idea of how far you have to scroll down.) – Ben Kovitz Aug 27 '16 at 20:01
  1. Quicksilver (or spotlight). You summon the App you are interested on, say Safari.
  2. Using Mission Control's Show application windows (you can assign a shortcut to this using the keyboard icon on the system preferences)
  3. Once all the application windows are being shown, you can type (there's no text field, you will just have to start typing) the title of the window you care. After a couple of keystrokes, your window will be selected.

At the beginning you'll be slow but as time goes by, you'll become pretty fast.

| improve this answer | |

As mentioned in the question, Witch ($14) is one of the first window switchers and, IMHO, still one of the best.

I suspect @Sergio (questioner) main concerns have now been addressed in Witch. I think its actually one of the better looking ones, with lots of options for tweaking appearance (including themes). It also feels very fast to me.

All that said, I am not currently using Witch because it doesn't support searching the window names. For that I was using Optimal Layout and am now trying out Contexts (which seems very promising).

| improve this answer | |
  • The one feature Witch still doesn't have, and I really want, is the ability to start typing in the switching window to have it narrow down the list. OptimalLayout does this. I think Contexts does too. – Trinition Dec 7 '16 at 14:18

Been searching for a mac window swapper that INCLUDES MINIMIZED WINDOWS for ages. Little did I know, the function was already built into Quicksilver, sitting under my nose this whole time. It's an action called "show all windows," which I've set as a trigger ( ⌘` for proximity to ⌘⇥).

Quicksilver comes to the rescue once more (as usual).

| improve this answer | |

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .