Is there a free app that I can use to move a window from one monitor to the other monitor (assuming only two monitors) via the keyboard? I shouldn't have to use the mouse at all (e.g., for selecting the window or the monitor, or for dragging).

I know this can be done in Linux using compiz; I'm surprised there isn't a (free) option for OS X.


15 Answers 15


UPDATE: Spectacle is no longer maintaned. The website forwards users to Rectangle, see Jack's answer or https://github.com/rxhanson/Rectangle/releases.

I just tried Spectacle, great app and it's free.

This is what it can do with the selected group of windows.

enter image description here

You need to activate accessibility support.

System Preferences > Accessibility > Enable access for assisted devices

As per comments: The accessibility option in Mavericks is now in

System Preferences > Security and Privacy > Privacy > Accessibility

enter image description here

enter image description here

  • 1
    Worked for me without having to enable assistive devices in accessibility options. Mar 3 '13 at 13:49
  • 2
    With OS X Mavericks, the option to enable access for assistive devices has moved to System Preferences -> Security and Privacy -> Privacy -> Accessibility, where you will see Spectacle listed and can allow it to control your computer.
    – nathan
    Oct 28 '13 at 14:54
  • To specifically identity the shortcut, Spectacle use the shortcuts, ⌃⌥⌘← & ⌃⌥⌘→ to alternate windows to each display.
    – Shawn Conn
    Jan 8 '16 at 5:19
  • 3
    it's awesome and can do many cool things that win7+ is able to do which I missed, BUT I couldn't make it do what the original question is asking - move the window across monitors. :(
    – kumetix
    Oct 9 '16 at 14:07
  • 1
    Works well. Although a way to move windows from one screen(not monitor) to other could be helpful. Works for the question asked.
    – Ajak6
    Jun 16 '17 at 18:22

There is yet another option that's completely free and requires no third-party app. Be aware that I've only tested this on MacOS latest version Catalina (as of now). For other OS versions see Create keyboard shortcuts for apps on Mac

  1. Go to System Preferences
  2. Select Keyboard and then the Shortcuts tab
  3. Then on the list that appears select App Shortcuts
  4. Add new shortcuts like this:
    • Click on the plus sign to add a new one, the Menu Title field has to match exactly the text that appears on the Window menu in every application: "Move to DISPLAY NAME" (To find the text just open the Window menu on any application)
    • Finally on the Keyboard Shortcut field enter the shortcut you'd like to use
    • Add as many shortcuts as you need to move any window between your displays!

enter image description here

  • 15
    This should be the new correct answer. Also it should be noted, if you have multiple monitors of the same brand and model, it will toggle between them so you only need one shortcut for both/all screens
    – AtomRiot
    Mar 18 '20 at 15:41
  • 4
    works like a charm, this should be the correct answer. volni Mar 25 '20 at 7:59
  • 2
    Yay! I'm just playing around now with my windows back and forth :D Joy! Thanks! Definitely the correct answer.
    – yair
    Mar 31 '20 at 21:12
  • 1
    system_profiler SPDisplaysDataType For external monitors this command will list displays (after the GPU it is attached to).
    – yzorg
    Jun 27 '20 at 17:45
  • 4
    Unfortunately this only works for apps that have a "Window → Move" menu option. Not as convenient as the MS Windows "Windows Key + Shift + Right arrow".
    – Pierre
    Jul 20 '20 at 15:14

I ended up using BetterTouchTool to do this. Overall I found it to be the most configurable. Here is a screenshot of my configuration, whereas Cmd+Ctrl+W moves a window to the next monitor.

If you have a 3 monitor setup (2 external monitors and the Mac monitor), you can set up the "Move Window to Next Monitor" to the right by doing the following:

  1. set up a new shortcut, specify "Move Window to Next Monitor" as the Predefined Action
  2. click Attach Additional Action and again specify "Move Window to Next Monitor" as the action
  3. Voila, you can now move a window to the monitor on the right (a little hacky I know, but it works until the developer of BTT updates the app)

BetterTouchTool keyboard configuration

The only shortcoming of BetterTouchTool is poor Lion support (not all features are available) but it is available as an alpha release. This specific keyboard shortcut should work fine in Lion with the stable version, I reckon.

  • 3
    Oh, and it's freeware.
    – adamrmcd
    Nov 6 '11 at 3:50
  • I've gotten rid of Moom (almost ran out of trial clicks) and am using it BTT now. I feel like BTT can be slimmed down and polished but it does move windows from one monitor to another for free, so I can't complain.
    – volni
    Nov 8 '11 at 21:15
  • 8
    It's not freeware now. Donationware.
    – vr_driver
    Mar 15 '16 at 2:19
  • 6
    As far as I could tell, BTT is no longer free (there's a free trial though)
    – guyarad
    Jul 4 '16 at 6:05
  • 4
    It's 2019 this answer suggested a commercial solution, use the other A'er if you'd rather not have to pay for an app to do something that the OS should prob. be doing for you for free.
    – slm
    Feb 20 '19 at 1:21

Moom can do this. It is not free, but Moom is a fantastic window management app. It lets you assign keyboard shortcuts to a variety of windows movements (including move to other display) and gives you an overlay of the OS X standard window controls.

Here are some screenshots:

mouse usage keyboard usage

Here is a list of window management apps from another AskDifferent post, What Window Management Options exist for OS X?. The only free option is Shiftit, and I'm not sure if it offers the functionality you are looking for.

  • 1
    +1 for Moom. Discovered it a few months ago, I love it. Great value at only $5 too.
    – robmathers
    Oct 20 '11 at 19:25
  • I've been using ShiftIt for arranging windows within the same monitor. It's an excellent tool for that. However, it offers no move-to-other-display functionality.
    – volni
    Oct 20 '11 at 20:12
  • I'd check out Moom then. I know you wanted a free app, but it's quite inexpensive compared to many other Mac window managers. Plus, the overlay they designed for close/min/maximize buttons is so spiffy that they deserve the $5. :) Oct 20 '11 at 20:14
  • @ArtemShnayder no longer true, ver 1.6 released this year now supports it; check out @WilfredSpringer 's answer
    – tutuDajuju
    Oct 30 '14 at 8:06

I was using ShiftIt for ages, but thought it didn't support dealing with multiple displays. So I started looking for alternatives. I installed Spectacles, changed the key bindings to be the same as ShiftIt's, and then when I wanted to deinstall ShiftIt, I found out it does actually support moving windows to different screens, using CtrlOptionCommandN

So I uninstalled Spectacles; still a happy ShiftIt user.

  • Default for me was Ctrl+Option+Command+Space
    – Mordred
    Jul 12 '17 at 16:36
  • This should be the correct answer. It works.
    – ji-ruh
    Jul 25 '17 at 3:33
  • 2
    If the window is maximized, shiftlt will keep it maximized in the next display, contrary to spectacle. Best solution IMO :) Jan 5 '18 at 9:16

Just wanted to mention that there's a setting in System Preferences > Mission Control called "Group windows by application" that shows the app icons and allows you to drag the icon into another desktop/monitor. It's amazing for apps that have 10+ windows.

  • This only seems to work though if all windows are already on the same space (not if they are distributed between spaces).
    – Patrick
    Feb 2 at 17:08

FYI, Magnet, the popular window placement/sizing application, has "Next Display" and "Previous Display" shortcuts right out of the box, at least in version 2.1 (Feb 14, 2017).

Magnet on the Mac App Store

Magnet's Website

  • Magnet is nice. If they only would have a nicer menu bar icon it would be perfect.
    – leymannx
    Mar 19 '18 at 8:23

Check out Rectangle App. It's free, open-source, and is billed as the spiritual successor to the once brilliant (but sadly, no-longer-maintained) Spectacle.

You can install Rectangle App either via their website or with Homebrew: brew install --cask rectangle

enter image description here


BetterSnapTool also has this feature (as a shortcut). I think it was a free app, and its been a great one.

There is a shortcut where you can maximize the window in the next screen (among other shortcuts or ways of doing this). See the screenshot of the related shortcuts.

enter image description here

  • wish they had "full screen on next monitor" too!
    – xyz
    Feb 13 '15 at 14:40
  • it is called BetterTouchTool the free version and the option is found under window resize and move Aug 3 '15 at 5:35
  • As far as I could tell, BTT is no longer free (there's a free trial though)
    – guyarad
    Jul 4 '16 at 6:05

macOS Big Sur has built-in tool to do this. Press/click on the green button on top of a window for a second to get a dropdown with options for the current windows.

enter image description here

  • 2
    There is no keyboard shortcut for this though, right?
    – nohillside
    Jan 31 at 13:31
  • 3
    Yes but I figure it's worth pointing out that now this window moving to other display thing is baked in the OS
    – John Indra
    Jan 31 at 13:54
  • 1
    It's not a Big Sur Specific, it's been there for a couple of earlier versions.
    – Mahbub
    May 10 at 6:32

If you don't want to install any third-party software, you can switch the current window to any monitor by going to the following menu

Window -> Select the monitor / display name

If the menu is not enabled, Click on the green button enter image description here, to come out of full screen to enable the below menu then click,

Window -> Select the monitor / display name

Also after coming off of full screen mode, if you mouse over on the green button, you can get a pop-up with the option to "move to desired screen", click on it to move it to the desired screen.

enter image description here

Hope this helps

  • This must be the official answer as this is the easiest thing to do. May 28 at 8:22

This open source app is simple easy to use and free. It will accomplish what you need.



building on the answer above, using native Mac controls. There is a menu item that you can use to move apps between screens. It does not have a keyboard shortcut though which is what I was looking for. But there's hope! Using keyboard shortcuts, you can create your own shortcuts to move windows between screens. Here's how:

Find the name of the menu item you want to create a shortcut for: Click Window in any application and look for a menu item that says "Move to "

Create a keyboard shortcut to do it: Open keyboard settings (System preferences -> Keyboard). Choose "App Shortcuts". Click + to create a new shortcut. Set Application to "All Applications". Set Menu Title to exactly the menu item wording you found above Set the keyboard shortcut you want to use

If you did this successfully, you should now see the shortcut appear next to the menu item and using your keyboard should moved the window to the other screen.

NOTES: You will need to do the steps above to create a shortcut for each screen you have. To get the screen names, you'll need to move applications to each screen and see what the menu item changes to and then create a shortcut for that screen.

When I first did this, the shortcut didn't work. I suspect I chose a keyboard shortcut that was already in use somewhere else. I fixed this by using the Command, Option, and Control buttons as part of the shortcut

This works for almost every app I have but one app doesn't support this because it doesn't have the menu item


This can also be done using the free, open-source tiling window manager Amethyst using the "Swap focused window to (counter-)clockwise screen" shortcut.

enter image description here

You must log in to answer this question.

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