Is there any program or way to make Mac OS X's Tab(Command-Tab) behave like Windows' AltTab?

That is, instead of switching between applications, to switch between windows of all applications?

I do know there's a way to switch between windows of the same application using `, but that's not what I want either.

I'm not just trying to make Mac OS X behave like my recent former OS, I've been a Mac user for over two years and before that Ubuntu. After using Expose and Tab I think Windows' or Ubuntu's AltTab is better.

  • Sorry Pablo. AFAIK you can't change that behavior. In the end we are talking about completely different operating systems here. Not every detail can be mimicked by the other vendors. I learned to live with Exposé. If this approach is better or not is arguable. ;-) – lajuette Sep 29 '10 at 7:51
  • 1
    I rarely use Exposé. ⌘-tab and ⌘` are good enough for me. Having said that, I've heard good things about Witch mentioned below. – fideli Sep 29 '10 at 12:37
  • 6
    Try this: switch between applications using Cmd-tab, but hold the Cmd key after you released the tab key, and while still holding the Cmd key, press up- or down arrow. This brings up Expose right from program switching. – Florenz Kley Oct 22 '12 at 21:08
  • 2
    +1 for this question, especially when using a non-US keyboard where the ` key is on the right side of the keyboard. – martin jakubik Jan 31 '13 at 9:56
  • 2
    Ignore first comment from lajuette. incorrect. Yes, there is a program which does this. 'Witch', see accepted answer. – malatio Jul 12 '13 at 18:29

10 Answers 10


You can get Witch which makes alt-tab work like Windows switching between windows not apps. However see This question if there are alternatives.

The Apple way is exposé but does require a different way of thinking.

| improve this answer | |
  • 32
    I did use "thinking differently" for over two years, it tires my finger. Thanks for the recommendations, looks like they are exactly what I was looking for. – pupeno Sep 30 '10 at 8:39
  • 35
    @ghoppe The order of tabs in windows-style alt-tab is dependent on the order of when the windows were last visited. Therefore, if you know you need to get to the last window you were looking at, a single alt-tab is all you need, as opposed to having to locate the window in expose – Matt Oct 6 '10 at 15:30
  • 1
    @javadba Um, yes it does. If it doesn't on your machine, you must have a non-standard setup or extension installed. I'm using it now. If you still don't believe me, here's an article explaining the behaviour: "Command-Tab: This activates the menu and switches through applications in order of when they were last accessed. The foremost application will be on the left, and repeatedly pressing the Tab key will go through each application you have open." – ghoppe Sep 28 '13 at 17:52
  • 21
    The real problem for me is that I do not want ALL my terminal windows popping up and covering over my browser with the command I want to type and my code that I'm referencing.. I want just the last terminal window from a different application and NOT all of them. – Damon Sep 19 '14 at 21:56
  • 2
    This (Witch) allows you to access your minimised windows with the keyboard. Why thus can't usually be done is beyond me. – apkg Nov 19 '16 at 3:13

Use ⌘ Command+Tab to switch between different open applications and ⌘ Command+` (backtick) to switch between multiple open windows of a single program.

| improve this answer | |
  • 2
    that's not Cmd-~ but Cmd-` (and like that it's also described in the documentation). Cmd-~ does not exist, If it was a shortcut, it would be described as Cmd-Shift-` – Florenz Kley Oct 22 '12 at 18:33
  • 4
    This would be great if it worked for switching between windows of the same app while one of those windows is in a different space (or fullscreen). Sadly it doesn't... – Power-coder Aug 12 '15 at 18:23
  • 4
    Also those functions have very different behavior. Cmd-Tab lets you switch back and forth between two windows of different apps in addition to cycling. Cmd-` cycles through windows of an app, and does NOT give the ability to switch back and forth between two windows, which is why I never use it. – Ryan P Nov 22 '16 at 17:47
  • This is actually the most time saving and useful thing to know here, and in my view is THE ONLY REASON why expose is not complete junkware. I can't believe I've been using a mac for 4 years and this has not come up. I can move my finger 1cm and solve the problem? Conversation closed (for me). – Tim Ogilvy Jun 27 '17 at 1:00
  • 4
    Distinctly not what was asked, question author directly stated that he knew how to switch between windows of a single application already. – derekv Jan 11 '19 at 17:15

Hyperswitch is another application to switch between all open windows of all open applications like in Windows/Linux. It defaults to using alt+tab so that you can still use the default ⌘ command+tab switching, but you have the option of overriding that and can set it to use ⌘ command+tab to replace the default functionality.

It is currently free while it is in beta.

Otherwise you have to do ⌘ command+tab to get to your application, let go of the tab and press 1 to activate the windows of your application, then use the arrow keys (or the mouse) to select the window you want.

Or control+F4 but that doesn't give you the previews - it just cycles open windows.

| improve this answer | |
  • 1
    Hyperswitch is the best one I've used. Closest to the Windows native alt-tab format I'm used to. – Eric Warnke Jun 8 '15 at 19:45
  • Awesome tool! Definitely mimics the Windows experience I'm so used to. – Elad Nava Feb 3 '16 at 19:29
  • Awesome! Also stops OSX from raising every f*n Chrome window on every monitor when I Cmd-Tab to one. – Ryan P Nov 22 '16 at 17:55
  • 1
    1 is perfect solution for me – resting Aug 30 '19 at 17:30
  • This is so great, so much better than Which, thank you. – Darian Moody Nov 13 '19 at 21:50

Another option is to 'hide' the application using ⌘(command) + H rather than minimizing it. This way you can use ⌘(command)+tab to select the application and bring it to focus like Windows.

| improve this answer | |
  • 3
    Windows has a window-based switcher, while OS X has an application based switcher. Your answer does not seem to address that fundamental difference. – Daniel Beck Jul 25 '12 at 11:48
  • 1
    That's true it doesn't, but the high level question is also how to make the Mac 'behave' more like Windows alt-tab. As you say the biggest difference is the window vs application behaviour but another key difference in the behaviour is that in Windows when a window is selected with alt-tab it is maximized even if it had been previously minimized, this doesn't happen in the Mac. Using ⌘(command) + H rather than minimizing means that when an application is later selected with ⌘-tab it is automatically brought to the front and I see this as behaving more like Windows. – Chris Jul 25 '12 at 12:32
  • After googling like a madman for a simple answer, this is the best one I found. Instead of the CMD+M I'll use CMD+H and that's that. Thanks a lot. – PatrickT Nov 10 '13 at 9:01

For me the best option is contexts. Just check their site, app is amazing and beat all other solutions (and believe my, I try almost all of them). It's not yet perfect, but for me, competition is miles behind.

| improve this answer | |

You may want to try Optimal Layout as well: it combines powerful application and window switching with instant preview of window content + grid based window resizing and layout if needed.

| improve this answer | |

Okay, one free app not mentioned here yet is Alt-Tab.

The project page includes a comparison between the popular projects.

It's free software! Also it has a good amount of customisability and allows to recreate your favourite experience. The settings page should give you an idea about the range of possible options:


Download it from the homepage or alternatively from homebrew:

brew cask install alt-tab
| improve this answer | |
  • Switched to Alt-Tab after hyperswitch started behaving odd - never been happier !! – Neeraj Sep 23 at 16:39
  • homebrew has gone the lazy route and prevents this from working on El Capitan, despite the software itself retaining compatibility. If someone knows how to use brew to install this on El Capitan, I'll be highly appreciative. – Otheus Nov 10 at 21:20

As a user with the same need, so far Witch is really the best answer. It provides a recent window switch behavior very much like Windows/UNIX.

The one drawback I've experienced, is that when you close a window in MacOS, it brings the next window from that application forward -- very annoying behavior when you expected to get back to the window from the OTHER application underneath. I'm doubtful there will be a way to fix this behavior.

For users who don't understand why Command-Tab is not a viable alternative.... Command-Tab brings ALL of an application's windows forward, which is not the desired behavior. Switching quickly between 2-4 recently used windows without disturbing any other windows is very easy with windows-style alt-tab, and very hard with mac Command-tab command-tilde.

| improve this answer | |
  • @SuitUp Change what where? Not sure if you are referring to OSX or Which. Can you elaborate? Thanks! – Lee May 3 '16 at 17:46

Option + Tab switches between windows like Windows. Shift + Option + Tab to reverse cycle.

If it's not working check Keyboard Shortcuts Move focus to active or next windows and set to Option + Tab.

| improve this answer | |
  • 1
    This worked for me. Default was ^F4. – dokkaebi Sep 5 '13 at 0:44
  • 1
    This is not exactly like windows: it doesn't implement a stack, so Option +Tab, Option + Tab doesn't take you back to the window you started at. Still a useful addition though thanks. – ahcox Oct 4 '17 at 17:22

I just found that there's another alternative, that I'm using on my Ubuntu machine: there I switch between applications using Alt-Tab and between their windows using Alt-^ (which is the button on the top left corner on a German keyboard layout; on US keyboards it's actually ~ as Krishna pointed out). This way you only have to lift your finger a little higher when you want to switch windows of the current application.

To set that shortcut change Settings > Keyboard > Move focus to next window to -~ (DE: -^)

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.